aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2012-05-08 11:17:07 -0700
committerDavid S. Miller <davem@davemloft.net>2012-05-08 11:17:07 -0700
commitee0db19075ebc3428291934df429365a5abaea47 (patch)
treebd722a172e9b71643c868cfb6083697f8e3296ba
parentdee4a4e3d0e8b9df6b35ef53e46b9346ee713af0 (diff)
downloadglibc-ee0db19075ebc3428291934df429365a5abaea47.zip
glibc-ee0db19075ebc3428291934df429365a5abaea47.tar.gz
glibc-ee0db19075ebc3428291934df429365a5abaea47.tar.bz2
Minor optimization to sparc VIS3 floor() implementation.
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S: Use movxtod instead of popping the value on the stack.
-rw-r--r--ChangeLog3
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S3
2 files changed, 4 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7521d25..ad116e5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2012-05-08 David S. Miller <davem@davemloft.net>
+ * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S: Use
+ movxtod instead of popping the value on the stack.
+
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-05-08 Carlos O'Donell <carlos_odonell@mentor.com>
diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S
index d7e5d24..dfaf554 100644
--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S
+++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S
@@ -56,10 +56,9 @@ ENTRY (__floor_vis3)
fnegd ZERO, SIGN_BIT
- stx %o2, [%sp + 72]
+ movxtod %o2, %f16
fabsd %f0, %f14
- ldd [%sp + 72], %f16
fcmpd %fcc3, %f14, %f16
fmovduge %fcc3, ZERO, %f16