diff options
Diffstat (limited to 'llvm/test/Regression/Transforms/InstCombine/phi.ll')
| -rw-r--r-- | llvm/test/Regression/Transforms/InstCombine/phi.ll | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/llvm/test/Regression/Transforms/InstCombine/phi.ll b/llvm/test/Regression/Transforms/InstCombine/phi.ll deleted file mode 100644 index 44841b76431..00000000000 --- a/llvm/test/Regression/Transforms/InstCombine/phi.ll +++ /dev/null @@ -1,79 +0,0 @@ -; This test makes sure that these instructions are properly eliminated. -; - -; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output && -; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | not grep phi - -implementation - -int %test1(int %A, bool %b) { -BB0: br bool %b, label %BB1, label %BB2 -BB1: - %B = phi int [%A, %BB0] ; Combine away one argument PHI nodes - ret int %B -BB2: - ret int %A -} - -int %test2(int %A, bool %b) { -BB0: br bool %b, label %BB1, label %BB2 -BB1: - br label %BB2 -BB2: - %B = phi int [%A, %BB0], [%A, %BB1] ; Combine away PHI nodes with same values - ret int %B -} - -int %test3(int %A, bool %b) { -BB0: br label %Loop - -Loop: - %B = phi int [%A, %BB0], [%B, %Loop] ; PHI has same value always. - br bool %b, label %Loop, label %Exit -Exit: - ret int %B -} - -int %test4(bool %b) { -BB0: ret int 7 ; Loop is unreachable - -Loop: - %B = phi int [%B, %L2], [%B, %Loop] ; PHI has same value always. - br bool %b, label %L2, label %Loop -L2: - br label %Loop -} - -int %test5(int %A, bool %b) { -BB0: br label %Loop - -Loop: - %B = phi int [%A, %BB0], [undef, %Loop] ; PHI has same value always. - br bool %b, label %Loop, label %Exit -Exit: - ret int %B -} - -uint %test6(int %A, bool %b) { -BB0: - %X = cast int %A to uint - br bool %b, label %BB1, label %BB2 -BB1: - %Y = cast int %A to uint - br label %BB2 -BB2: - %B = phi uint [%X, %BB0], [%Y, %BB1] ;; Suck casts into phi - ret uint %B -} - -int %test7(int %A, bool %b) { -BB0: br label %Loop - -Loop: - %B = phi int [%A, %BB0], [%C, %Loop] ; PHI is dead. - %C = add int %B, 123 - br bool %b, label %Loop, label %Exit -Exit: - ret int 0 -} - |

