add note about ugly codegen with preinc
authorChris Lattner <sabre@nondot.org>
Fri, 10 Nov 2006 01:33:53 +0000 (01:33 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 10 Nov 2006 01:33:53 +0000 (01:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31617 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/README.txt

index 8834699f63ae91710f50e4ea2aca3519d373cd04..0b4f78f67b096f576667ec1141590213e0edd673 100644 (file)
@@ -9,6 +9,35 @@ TODO:
 Support 'update' load/store instructions.  These are cracked on the G5, but are
 still a codesize win.
 
+With preinc enabled, this:
+
+long *%test4(long *%X, long *%dest) {
+        %Y = getelementptr long* %X, int 4
+        %A = load long* %Y
+        store long %A, long* %dest
+        ret long* %Y
+}
+
+compiles to:
+
+_test4:
+        mr r2, r3
+        lwzu r5, 32(r2)
+        lwz r3, 36(r3)
+        stw r5, 0(r4)
+        stw r3, 4(r4)
+        mr r3, r2
+        blr 
+
+with -sched=list-burr, I get:
+
+_test4:
+        lwz r2, 36(r3)
+        lwzu r5, 32(r3)
+        stw r2, 4(r4)
+        stw r5, 0(r4)
+        blr 
+
 ===-------------------------------------------------------------------------===
 
 We compile the hottest inner loop of viterbi to: