diff options
Diffstat (limited to 'test/CodeGen/PowerPC/ctrloops.ll')
-rw-r--r-- | test/CodeGen/PowerPC/ctrloops.ll | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/test/CodeGen/PowerPC/ctrloops.ll b/test/CodeGen/PowerPC/ctrloops.ll index fff9e20d26260..f1ad58fde2b6f 100644 --- a/test/CodeGen/PowerPC/ctrloops.ll +++ b/test/CodeGen/PowerPC/ctrloops.ll @@ -76,23 +76,22 @@ for.end: ; preds = %for.body, %entry @tls_var = external thread_local global i8 -define i32 @test4() { +define i32 @test4(i32 %inp) { entry: br label %for.body for.body: ; preds = %for.body, %entry - %phi = phi i32 [ %dec, %for.body ], [ undef, %entry ] + %phi = phi i32 [ %dec, %for.body ], [ %inp, %entry ] %load = ptrtoint i8* @tls_var to i32 + %val = add i32 %load, %phi %dec = add i32 %phi, -1 %cmp = icmp sgt i32 %phi, 1 br i1 %cmp, label %for.body, label %return return: ; preds = %for.body - ret i32 %load + ret i32 %val ; CHECK-LABEL: @test4 -; CHECK-NOT: mtctr -; CHECK: addi {{[0-9]+}} -; CHECK: cmpwi -; CHECK-NOT: bdnz -; CHECK: bgt +; CHECK: mtctr +; CHECK: bdnz +; CHECK: __tls_get_addr } |