[llvm-commits] CVS: llvm/lib/Target/PowerPC/README.txt

Nate Begeman natebegeman at mac.com
Tue Mar 21 10:58:31 PST 2006



Changes in directory llvm/lib/Target/PowerPC:

README.txt updated: 1.77 -> 1.78
---
Log message:

Update readme


---
Diffs of the changes:  (+34 -0)

 README.txt |   34 ++++++++++++++++++++++++++++++++++
 1 files changed, 34 insertions(+)


Index: llvm/lib/Target/PowerPC/README.txt
diff -u llvm/lib/Target/PowerPC/README.txt:1.77 llvm/lib/Target/PowerPC/README.txt:1.78
--- llvm/lib/Target/PowerPC/README.txt:1.77	Mon Mar 20 18:47:09 2006
+++ llvm/lib/Target/PowerPC/README.txt	Tue Mar 21 12:58:20 2006
@@ -549,3 +549,37 @@
 When -ffast-math is on, we can use 0.0.
 
 ===-------------------------------------------------------------------------===
+
+float foo(float X) { return (int)(X); }
+
+Currently produces
+
+_foo:
+        lis r2, ha16(LCPI1_0)
+        lis r3, 17200
+        fctiwz f0, f1
+        stfd f0, -8(r1)
+        lwz r4, -4(r1)
+        xoris r4, r4, 32768
+        stw r4, -12(r1)
+        stw r3, -16(r1)
+        lfs f0, lo16(LCPI1_0)(r2)
+        lfd f1, -16(r1)
+        fsub f0, f1, f0
+        frsp f1, f0
+        blr
+
+When we have ppc64 working properly, it could produce the nicer code:
+
+_foo:
+        fctiwz f0, f1
+        stfd f0, -8(r1)
+        lwz r4, -4(r1)
+        extsh r4, r4
+        std r4, -16(r1)
+        lfd f1, -16(r1)
+        fcfid f0, f0
+        frsp f0, f0
+        blr
+
+Note: this would speed up SingleSource/Misc/pi by about 30%






More information about the llvm-commits mailing list