[llvm-commits] CVS: llvm/test/Regression/CodeGen/PowerPC/addc.ll subc.ll
Nate Begeman
natebegeman at mac.com
Thu Feb 16 22:17:08 PST 2006
Changes in directory llvm/test/Regression/CodeGen/PowerPC:
addc.ll added (r1.1)
subc.ll added (r1.1)
---
Log message:
A couple new regression tests to make sure we always pattern match the new
opcodes on ppc.
---
Diffs of the changes: (+51 -0)
addc.ll | 26 ++++++++++++++++++++++++++
subc.ll | 25 +++++++++++++++++++++++++
2 files changed, 51 insertions(+)
Index: llvm/test/Regression/CodeGen/PowerPC/addc.ll
diff -c /dev/null llvm/test/Regression/CodeGen/PowerPC/addc.ll:1.1
*** /dev/null Fri Feb 17 00:17:06 2006
--- llvm/test/Regression/CodeGen/PowerPC/addc.ll Fri Feb 17 00:16:56 2006
***************
*** 0 ****
--- 1,26 ----
+ ; All of these ands and shifts should be folded into rlwimi's
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep addc | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep adde | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep addze | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep addme | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep addic | wc -l | grep 2
+
+ implementation ; Functions:
+
+ long %add_ll(long %a, long %b) {
+ entry:
+ %tmp.2 = add long %b, %a ; <long> [#uses=1]
+ ret long %tmp.2
+ }
+
+ long %add_l_5(long %a) {
+ entry:
+ %tmp.1 = add long %a, 5 ; <long> [#uses=1]
+ ret long %tmp.1
+ }
+
+ long %add_l_m5(long %a) {
+ entry:
+ %tmp.1 = add long %a, -5 ; <long> [#uses=1]
+ ret long %tmp.1
+ }
Index: llvm/test/Regression/CodeGen/PowerPC/subc.ll
diff -c /dev/null llvm/test/Regression/CodeGen/PowerPC/subc.ll:1.1
*** /dev/null Fri Feb 17 00:17:08 2006
--- llvm/test/Regression/CodeGen/PowerPC/subc.ll Fri Feb 17 00:16:56 2006
***************
*** 0 ****
--- 1,25 ----
+ ; All of these ands and shifts should be folded into rlwimi's
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep subfc | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep subfe | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep subfze | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep subfme | wc -l | grep 1 &&
+ ; RUN: llvm-as < %s | llc -march=ppc32 | grep subfic | wc -l | grep 2
+ implementation ; Functions:
+
+ long %sub_ll(long %a, long %b) {
+ entry:
+ %tmp.2 = sub long %a, %b ; <long> [#uses=1]
+ ret long %tmp.2
+ }
+
+ long %sub_l_5(long %a) {
+ entry:
+ %tmp.1 = sub long 5, %a ; <long> [#uses=1]
+ ret long %tmp.1
+ }
+
+ long %sub_l_m5(long %a) {
+ entry:
+ %tmp.1 = sub long -5, %a ; <long> [#uses=1]
+ ret long %tmp.1
+ }
More information about the llvm-commits
mailing list