summaryrefslogtreecommitdiff
path: root/libs/pbd/fpu.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-12-31 18:19:46 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-12-31 18:19:46 +0000
commitc6d51242691b593d3037784c993d101409c32c13 (patch)
tree70904524eabf01f05a19455197fd1f6f5621393c /libs/pbd/fpu.cc
parent569226e64e8d9c3e85dd2dc59adfb0f71190e8af (diff)
update comments on register clobbering
git-svn-id: svn://localhost/ardour2/branches/3.0@6423 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/pbd/fpu.cc')
-rw-r--r--libs/pbd/fpu.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/pbd/fpu.cc b/libs/pbd/fpu.cc
index 9ca5907221..11f62a3a71 100644
--- a/libs/pbd/fpu.cc
+++ b/libs/pbd/fpu.cc
@@ -21,11 +21,6 @@ FPU::FPU ()
return;
#endif
- /* asm notes: although we explicitly save&restore ebx/rbx (stack pointer), we must tell
- gcc that ebx,rbx is clobbered so that it doesn't try to use it as an intermediate
- register when storing edx/rdx. gcc 4.3 didn't make this "mistake", but gcc 4.4
- does, at least on x86_64.
- */
#ifndef USE_X86_64_ASM
asm volatile (
@@ -41,6 +36,12 @@ FPU::FPU ()
#else
+ /* asm notes: although we explicitly save&restore rbx, we must tell
+ gcc that ebx,rbx is clobbered so that it doesn't try to use it as an intermediate
+ register when storing rbx. gcc 4.3 didn't make this "mistake", but gcc 4.4
+ does, at least on x86_64.
+ */
+
asm volatile (
"pushq %%rbx\n"
"movq $1, %%rax\n"