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 + } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits