diff options
Diffstat (limited to 'llvm/test/CodeGen/PowerPC')
-rw-r--r-- | llvm/test/CodeGen/PowerPC/machine-backward-cp.mir | 61 | ||||
-rw-r--r-- | llvm/test/CodeGen/PowerPC/redundant-copy-after-tail-dup.ll | 3 |
2 files changed, 39 insertions, 25 deletions
diff --git a/llvm/test/CodeGen/PowerPC/machine-backward-cp.mir b/llvm/test/CodeGen/PowerPC/machine-backward-cp.mir index bb2c29fc906..0374d55c0cb 100644 --- a/llvm/test/CodeGen/PowerPC/machine-backward-cp.mir +++ b/llvm/test/CodeGen/PowerPC/machine-backward-cp.mir @@ -11,8 +11,7 @@ tracksRegLiveness: true body: | bb.0.entry: ; CHECK-LABEL: name: test0 - ; CHECK: renamable $x4 = LI8 1024 - ; CHECK: $x3 = COPY killed renamable $x4 + ; CHECK: $x3 = LI8 1024 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x4 = LI8 1024 $x3 = COPY renamable killed $x4 @@ -28,8 +27,7 @@ tracksRegLiveness: true body: | ; CHECK-LABEL: name: test1 ; CHECK: bb.0.entry: - ; CHECK: renamable $x5 = LI8 42 - ; CHECK: renamable $x4 = COPY killed renamable $x5 + ; CHECK: renamable $x4 = LI8 42 ; CHECK: B %bb.1 ; CHECK: bb.1: ; CHECK: liveins: $x4 @@ -139,8 +137,8 @@ body: | ; CHECK-LABEL: name: iterative_deletion ; CHECK: liveins: $x5 - ; CHECK: renamable $x6 = ADDI8 killed renamable $x5, 1 - ; CHECK: $x3 = COPY $x6 + ; CHECK: renamable $x4 = ADDI8 killed renamable $x5, 1 + ; CHECK: $x3 = COPY $x4 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x6 = ADDI8 renamable killed $x5, 1 renamable $x4 = COPY renamable killed $x6 @@ -160,8 +158,8 @@ body: | ; CHECK-LABEL: name: Enter ; CHECK: liveins: $x4, $x7 ; CHECK: renamable $x5 = COPY killed renamable $x7 - ; CHECK: renamable $x6 = ADDI8 killed renamable $x4, 1 - ; CHECK: $x3 = ADD8 killed renamable $x5, $x6 + ; CHECK: renamable $x7 = ADDI8 killed renamable $x4, 1 + ; CHECK: $x3 = ADD8 killed renamable $x5, killed renamable $x7 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x5 = COPY killed renamable $x7 renamable $x6 = ADDI8 killed renamable $x4, 1 @@ -181,10 +179,9 @@ body: | ; CHECK-LABEL: name: foo ; CHECK: liveins: $x4, $x7 ; CHECK: renamable $x5 = COPY killed renamable $x7 - ; CHECK: renamable $x6 = ADDI8 renamable $x4, 1 - ; CHECK: renamable $x7 = COPY killed renamable $x6 - ; CHECK: renamable $x8 = ADDI8 killed $x4, 2 - ; CHECK: $x3 = ADD8 killed renamable $x5, $x8 + ; CHECK: renamable $x7 = ADDI8 renamable $x4, 1 + ; CHECK: renamable $x6 = ADDI8 killed $x4, 2 + ; CHECK: $x3 = ADD8 killed renamable $x5, killed renamable $x6 ; CHECK: $x3 = ADD8 $x3, killed renamable $x7 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x5 = COPY killed renamable $x7 @@ -208,10 +205,10 @@ body: | ; CHECK-LABEL: name: bar ; CHECK: liveins: $x4, $x7 ; CHECK: renamable $x5 = COPY killed renamable $x7 - ; CHECK: renamable $x6 = ADDI8 renamable $x4, 1 - ; CHECK: renamable $x8 = COPY $x6 - ; CHECK: renamable $x6 = ADDI8 renamable $x5, 2 - ; CHECK: $x3 = ADD8 killed renamable $x5, $x6 + ; CHECK: renamable $x7 = ADDI8 renamable $x4, 1 + ; CHECK: renamable $x8 = COPY killed renamable $x7 + ; CHECK: renamable $x7 = ADDI8 renamable $x5, 2 + ; CHECK: $x3 = ADD8 killed renamable $x5, killed renamable $x7 ; CHECK: $x3 = ADD8 $x3, killed renamable $x8 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x5 = COPY killed renamable $x7 @@ -236,10 +233,9 @@ body: | ; CHECK-LABEL: name: bogus ; CHECK: liveins: $x7 ; CHECK: renamable $x5 = COPY renamable $x7 - ; CHECK: renamable $x6 = ADDI8 $x7, 1 - ; CHECK: renamable $x7 = COPY $x6 + ; CHECK: renamable $x4 = ADDI8 $x7, 1 ; CHECK: renamable $x6 = ADDI8 renamable $x5, 2 - ; CHECK: $x3 = ADD8 $x7, killed renamable $x5 + ; CHECK: $x3 = ADD8 killed renamable $x4, killed renamable $x5 ; CHECK: $x3 = ADD8 $x3, killed renamable $x6 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x5 = COPY killed renamable $x7 @@ -263,10 +259,10 @@ body: | liveins: $x7 ; CHECK-LABEL: name: foobar ; CHECK: liveins: $x7 - ; CHECK: renamable $x6 = ADDI8 $x7, 1 - ; CHECK: renamable $x8 = COPY $x6 - ; CHECK: renamable $x6 = ADDI8 $x7, 2 - ; CHECK: $x3 = ADD8 $x6, $x7 + ; CHECK: renamable $x4 = ADDI8 $x7, 1 + ; CHECK: renamable $x8 = COPY killed renamable $x4 + ; CHECK: renamable $x4 = ADDI8 $x7, 2 + ; CHECK: $x3 = ADD8 killed renamable $x4, $x7 ; CHECK: $x3 = ADD8 $x3, killed renamable $x8 ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 renamable $x5 = COPY killed renamable $x7 @@ -280,3 +276,22 @@ body: | BLR8 implicit $lr8, implicit undef $rm, implicit $x3 ... + +--- +name: cross_call +alignment: 4 +tracksRegLiveness: true +body: | + bb.0.entry: + liveins: $x2, $x3, $x20 + ; CHECK-LABEL: name: cross_call + ; CHECK: liveins: $x2, $x3, $x20 + ; CHECK: renamable $x20 = LI8 1024 + ; CHECK: BL8_NOP @foo, csr_svr464_altivec, implicit-def $lr8, implicit $rm, implicit $x3, implicit-def $x3, implicit $x2 + ; CHECK: $x3 = COPY killed renamable $x20 + ; CHECK: BLR8 implicit $lr8, implicit undef $rm, implicit $x3 + renamable $x20 = LI8 1024 + BL8_NOP @foo, csr_svr464_altivec, implicit-def $lr8, implicit $rm, implicit $x3, implicit-def $x3, implicit $x2 + $x3 = COPY renamable killed $x20 + BLR8 implicit $lr8, implicit undef $rm, implicit $x3 +... diff --git a/llvm/test/CodeGen/PowerPC/redundant-copy-after-tail-dup.ll b/llvm/test/CodeGen/PowerPC/redundant-copy-after-tail-dup.ll index 6aaf169dabe..dd41abd093d 100644 --- a/llvm/test/CodeGen/PowerPC/redundant-copy-after-tail-dup.ll +++ b/llvm/test/CodeGen/PowerPC/redundant-copy-after-tail-dup.ll @@ -26,8 +26,7 @@ define dso_local i1 @t(%class.A* %this, i32 %color, i32 %vertex) local_unnamed_a ; CHECK-P9-NEXT: cmplwi r3, 2 ; CHECK-P9-NEXT: bge- cr0, .LBB0_6 ; CHECK-P9-NEXT: # %bb.3: # %land.lhs.true.1 -; CHECK-P9-NEXT: li r5, 0 -; CHECK-P9-NEXT: mr r3, r5 +; CHECK-P9-NEXT: li r3, 0 ; CHECK-P9-NEXT: blr ; CHECK-P9-NEXT: .LBB0_4: # %lor.lhs.false ; CHECK-P9-NEXT: cmplwi cr0, r4, 0 |