Testcase to make sure we can apply the shift to the operands of the select,
authorChris Lattner <sabre@nondot.org>
Fri, 9 Apr 2004 23:47:24 +0000 (23:47 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 9 Apr 2004 23:47:24 +0000 (23:47 +0000)
eliminating the shifts

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12801 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/InstCombine/shift.ll

index 016d00fc8bfc987ee5ff5f3df9e801d732bf68ee..ac7bb27ea9c8bc213f9486346a01a0b48a5edf5d 100644 (file)
@@ -96,3 +96,16 @@ uint %test14a(uint %A) {
        %D = shr uint %C, ubyte 4   ;; D = ((B | 1234) << 4) === ((B << 4)|(1234 << 4)
        ret uint %D
 }
+
+int %test15(bool %C) {
+        %A = select bool %C, int 3, int 1
+        %V = shl int %A, ubyte 2
+        ret int %V
+}
+
+int %test15a(bool %C) {
+        %A = select bool %C, ubyte 3, ubyte 1
+        %V = shl int 64, ubyte %A
+        ret int %V
+}
+