diff options
| author | czhengsz <czhengsz@cn.ibm.com> | 2019-11-24 22:46:26 -0500 |
|---|---|---|
| committer | czhengsz <czhengsz@cn.ibm.com> | 2019-11-24 22:46:26 -0500 |
| commit | d1c16598b71c4bc427c874d483ba67568f97a3d2 (patch) | |
| tree | edfefade5d939576c86941ab69ac80cba573b927 /llvm/test/CodeGen/PowerPC | |
| parent | d72a8a4dd5baad1fd90f4e13fdb6b585afea4657 (diff) | |
| download | bcm5719-llvm-d1c16598b71c4bc427c874d483ba67568f97a3d2.tar.gz bcm5719-llvm-d1c16598b71c4bc427c874d483ba67568f97a3d2.zip | |
Revert "[PowerPC] combine rlwinm+rlwinm to rlwinm"
This reverts commit 29f6f9b2b2bfecccf903738e2f5a0cd0a70fce31.
Diffstat (limited to 'llvm/test/CodeGen/PowerPC')
| -rw-r--r-- | llvm/test/CodeGen/PowerPC/fold-rlwinm-1.ll | 11 | ||||
| -rw-r--r-- | llvm/test/CodeGen/PowerPC/fold-rlwinm.mir | 110 |
2 files changed, 6 insertions, 115 deletions
diff --git a/llvm/test/CodeGen/PowerPC/fold-rlwinm-1.ll b/llvm/test/CodeGen/PowerPC/fold-rlwinm-1.ll index 12887d89225..b0586b06cd1 100644 --- a/llvm/test/CodeGen/PowerPC/fold-rlwinm-1.ll +++ b/llvm/test/CodeGen/PowerPC/fold-rlwinm-1.ll @@ -11,7 +11,8 @@ define void @foo(i32 signext %var1) { ; CHECK-NEXT: xori r3, r3, 1 ; CHECK-NEXT: addis r4, r2, res@toc@ha ; CHECK-NEXT: cntlzw r3, r3 -; CHECK-NEXT: rlwinm r3, r3, 14, 0, 12 +; CHECK-NEXT: srwi r3, r3, 5 +; CHECK-NEXT: slwi r3, r3, 19 ; CHECK-NEXT: stw r3, res@toc@l(r4) ; CHECK-NEXT: blr entry: @@ -29,10 +30,10 @@ define void @foo_multiple_use(i32 signext %var1) { ; CHECK-NEXT: addis r4, r2, res2@toc@ha ; CHECK-NEXT: addis r6, r2, res@toc@ha ; CHECK-NEXT: cntlzw r3, r3 -; CHECK-NEXT: srwi r5, r3, 5 -; CHECK-NEXT: rlwinm r3, r3, 14, 0, 12 -; CHECK-NEXT: stw r5, res2@toc@l(r4) -; CHECK-NEXT: stw r3, res@toc@l(r6) +; CHECK-NEXT: srwi r3, r3, 5 +; CHECK-NEXT: slwi r5, r3, 19 +; CHECK-NEXT: stw r3, res2@toc@l(r4) +; CHECK-NEXT: stw r5, res@toc@l(r6) ; CHECK-NEXT: blr entry: %cmp = icmp eq i32 %var1, 1 diff --git a/llvm/test/CodeGen/PowerPC/fold-rlwinm.mir b/llvm/test/CodeGen/PowerPC/fold-rlwinm.mir deleted file mode 100644 index c2ab89c8a8d..00000000000 --- a/llvm/test/CodeGen/PowerPC/fold-rlwinm.mir +++ /dev/null @@ -1,110 +0,0 @@ -# RUN: llc -ppc-asm-full-reg-names -mtriple=powerpc64le-unknown-linux-gnu \ -# RUN: -run-pass ppc-mi-peepholes %s -o - -verify-machineinstrs | FileCheck %s - ---- -name: testFoldRLWINM -#CHECK : name : testFoldRLWINM -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM %1:gprc, 27, 5, 31 - ; CHECK-NOT: %2:gprc = RLWINM %1:gprc, 27, 5, 31 - %3:gprc = RLWINM %2:gprc, 19, 0, 12 - ; CHECK: %3:gprc = RLWINM %1, 14, 0, 12 - BLR8 implicit $lr8, implicit $rm -... ---- -name: testFoldRLWINMSrcWrapped -#CHECK : name : testFoldRLWINMSrcWrapped -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM %1:gprc, 27, 30, 10 - ; CHECK-NOT: %2:gprc = RLWINM %1:gprc, 27, 30 ,10 - %3:gprc = RLWINM %2:gprc, 19, 0, 12 - ; CHECK: %3:gprc = RLWINM %1, 14, 11, 12 - BLR8 implicit $lr8, implicit $rm -... ---- -name: testFoldRLWINMUserWrapped -#CHECK : name : testFoldRLWINMUserWrapped -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM %1:gprc, 10, 5, 31 - ; CHECK-NOT: %2:gprc = RLWINM %1:gprc, 10, 5, 31 - %3:gprc = RLWINM %2:gprc, 10, 30, 5 - ; CHECK: %3:gprc = RLWINM %1, 20, 30, 5 - BLR8 implicit $lr8, implicit $rm -... ---- -name: testFoldRLWINMMultipleUses -#CHECK : name : testFoldRLWINMMultipleUses -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM killed %1:gprc, 27, 5, 31 - ; CHECK: %2:gprc = RLWINM %1, 27, 5, 31 - %3:gprc = RLWINM %2:gprc, 19, 0, 12 - ; CHECK: %3:gprc = RLWINM killed %1, 14, 0, 12 - STW %3:gprc, %2:gprc, 100 - ; CHECK: STW %3, %2, 100 - BLR8 implicit $lr8, implicit $rm -... ---- -name: testFoldRLWINMToZero -#CHECK : name : testFoldRLWINMToZero -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM %1:gprc, 27, 5, 10 - ; CHECK-NOT: %2:gprc = RLWINM %1:gprc, 27, 5, 10 - %3:gprc = RLWINM %2:gprc, 8, 5, 10 - ; CHECK: %3:gprc = LI 0 - BLR8 implicit $lr8, implicit $rm -... ---- -name: testFoldRLWINMoToZero -#CHECK : name : testFoldRLWINMoToZero -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM %1:gprc, 27, 5, 10 - ; CHECK-NOT: %2:gprc = RLWINM %1:gprc, 27, 5, 10 - %3:gprc = RLWINMo %2:gprc, 8, 5, 10, implicit-def $cr0 - ; CHECK: %3:gprc = ANDIo %2, 0, implicit-def $cr0 - BLR8 implicit $lr8, implicit $rm -... ---- -name: testFoldRLWINMInvalidMask -#CHECK : name : testFoldRLWINMInvalidMask -tracksRegLiveness: true -body: | - bb.0.entry: - liveins: $x3 - %0:g8rc = COPY $x3 - %1:gprc = COPY %0.sub_32:g8rc - %2:gprc = RLWINM %1:gprc, 20, 5, 31 - ; CHECK: %2:gprc = RLWINM %1, 20, 5, 31 - %3:gprc = RLWINM %2:gprc, 19, 10, 20 - ; CHECK: %3:gprc = RLWINM %2, 19, 10, 20 - BLR8 implicit $lr8, implicit $rm -... |

