* Add testcases for associative operators
authorChris Lattner <sabre@nondot.org>
Mon, 10 Mar 2003 22:43:56 +0000 (22:43 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 10 Mar 2003 22:43:56 +0000 (22:43 +0000)
* Add testcase for or ubyte, 255 which was broken before

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

test/Transforms/InstCombine/and.ll
test/Transforms/InstCombine/mul.ll
test/Transforms/InstCombine/or.ll

index 7dd3d554b651e92dca1232bd9e61f6b8411245d1..03b67f57b6e4bd96698c62d62847045bc3e2494a 100644 (file)
@@ -42,4 +42,10 @@ int %test7(int %A) {         ; A & ~A == 0
         %NotA = xor int %A, -1
         %B = and int %A, %NotA
         ret int %B
-}
\ No newline at end of file
+}
+
+ubyte %test8(ubyte %A) {    ; AND associates
+       %B = and ubyte %A, 3
+       %C = and ubyte %B, 4
+       ret ubyte %C
+}
index a0a280810676d4f0ec7ddcb513be656a075da77d..962f599892fc7703936c5e1d4a40ee5334d45634 100644 (file)
@@ -32,3 +32,9 @@ int %test5(int %A) {
        %B = mul int %A, 8
        ret int %B
 }
+
+int %test6(ubyte %A) {
+       %B = mul ubyte %A, 8
+       %C = mul ubyte %B, 13
+       ret ubyte %C
+}
index 5523f87c4e6f671cb6bccc14a91565fb7e743a38..7ffd3461bc68ebb23a6b4d4d171989e2f4f6b0b9 100644 (file)
@@ -18,6 +18,11 @@ int %test2(int %A) {
        ret int %B
 }
 
+ubyte %test2a(ubyte %A) {
+       %B = or ubyte %A, 255
+       ret ubyte %B
+}
+
 bool %test3(bool %A) {
        %B = or bool %A, false
        ret bool %B
@@ -75,3 +80,14 @@ uint %test13(uint %A) { ; (A|B)^B == A & (~B)
        %r  = xor uint %t1, 123
        ret uint %r
 }
+
+ubyte %test14(ubyte %A) {
+       %B = or ubyte %A, 254
+       %C = or ubyte %B, 1
+       ret ubyte %C
+}
+ubyte %test15(ubyte %A) {
+       %B = xor ubyte %A, 17
+       %C = xor ubyte %B, 17
+       ret ubyte %C
+}