Changes in directory llvm/test/Integer:
BitBit.ll updated: 1.2 -> 1.3 a1.ll updated: 1.3 -> 1.4 a15.ll updated: 1.3 -> 1.4 a17.ll updated: 1.3 -> 1.4 a31.ll updated: 1.3 -> 1.4 a33.ll updated: 1.3 -> 1.4 a63.ll updated: 1.3 -> 1.4 a7.ll updated: 1.4 -> 1.5 a9.ll updated: 1.3 -> 1.4 testarith_bt.ll updated: 1.3 -> 1.4 testlogical_new_bt.ll updated: 1.2 -> 1.3 --- Log message: Changes to support making the shift instructions be true BinaryOperators. This feature is needed in order to support shifts of more than 255 bits on large integer types. This changes the syntax for llvm assembly to make shl, ashr and lshr instructions look like a binary operator: shl i32 %X, 1 instead of shl i32 %X, i8 1 Additionally, this should help a few passes perform additional optimizations. --- Diffs of the changes: (+58 -57) BitBit.ll | 9 +++++---- a1.ll | 8 ++++---- a15.ll | 12 ++++++------ a17.ll | 12 ++++++------ a31.ll | 12 ++++++------ a33.ll | 12 ++++++------ a63.ll | 12 ++++++------ a7.ll | 14 +++++++------- a9.ll | 12 ++++++------ testarith_bt.ll | 6 +++--- testlogical_new_bt.ll | 6 +++--- 11 files changed, 58 insertions(+), 57 deletions(-) Index: llvm/test/Integer/BitBit.ll diff -u llvm/test/Integer/BitBit.ll:1.2 llvm/test/Integer/BitBit.ll:1.3 --- llvm/test/Integer/BitBit.ll:1.2 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/BitBit.ll Thu Feb 1 20:16:22 2007 @@ -14,11 +14,12 @@ %t3 = sext i31 %i to i33 %t4 = or i33 %t3, %j %t5 = xor i31 %t2, 7 - %t6 = shl i31 %i, i8 2 + %t6 = shl i31 %i, 2 %t7 = trunc i31 %i to i8 - %t8 = shl i8 %t7, i8 3 - %t9 = lshr i33 %j, i8 31 - %t10 = ashr i33 %j, i8 %t7 + %t8 = shl i8 %t7, 3 + %t9 = lshr i33 %j, 31 + %t7z = zext i8 %t7 to i33 + %t10 = ashr i33 %j, %t7z ret void end Index: llvm/test/Integer/a1.ll diff -u llvm/test/Integer/a1.ll:1.3 llvm/test/Integer/a1.ll:1.4 --- llvm/test/Integer/a1.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a1.ll Thu Feb 1 20:16:22 2007 @@ -10,10 +10,10 @@ @f = constant i1 sub(i1 1 , i1 -1) @g = constant i1 sub(i1 1 , i1 1) [EMAIL PROTECTED] = constant i1 shl(i1 1 , i8 1) [EMAIL PROTECTED] = constant i1 shl(i1 1 , i8 0) [EMAIL PROTECTED] = constant i1 lshr(i1 1, i8 1) [EMAIL PROTECTED] = constant i1 ashr(i1 1, i8 1) [EMAIL PROTECTED] = constant i1 shl(i1 1 , i1 1) [EMAIL PROTECTED] = constant i1 shl(i1 1 , i1 0) [EMAIL PROTECTED] = constant i1 lshr(i1 1, i1 1) [EMAIL PROTECTED] = constant i1 ashr(i1 1, i1 1) @n = constant i1 mul(i1 -1, i1 1) @o = constant i1 sdiv(i1 -1, i1 1) Index: llvm/test/Integer/a15.ll diff -u llvm/test/Integer/a15.ll:1.3 llvm/test/Integer/a15.ll:1.4 --- llvm/test/Integer/a15.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a15.ll Thu Feb 1 20:16:22 2007 @@ -10,12 +10,12 @@ @f = constant i15 sub(i15 0 , i15 32767) @g = constant i15 sub(i15 2 , i15 32767) [EMAIL PROTECTED] = constant i15 shl(i15 1 , i8 15) [EMAIL PROTECTED] = constant i15 shl(i15 1 , i8 14) [EMAIL PROTECTED] = constant i15 lshr(i15 32767 , i8 14) [EMAIL PROTECTED] = constant i15 lshr(i15 32767 , i8 15) [EMAIL PROTECTED] = constant i15 ashr(i15 32767 , i8 14) [EMAIL PROTECTED] = constant i15 ashr(i15 32767 , i8 15) [EMAIL PROTECTED] = constant i15 shl(i15 1 , i15 15) [EMAIL PROTECTED] = constant i15 shl(i15 1 , i15 14) [EMAIL PROTECTED] = constant i15 lshr(i15 32767 , i15 14) [EMAIL PROTECTED] = constant i15 lshr(i15 32767 , i15 15) [EMAIL PROTECTED] = constant i15 ashr(i15 32767 , i15 14) [EMAIL PROTECTED] = constant i15 ashr(i15 32767 , i15 15) @n = constant i15 mul(i15 32767, i15 2) @q = constant i15 mul(i15 -16383,i15 -3) Index: llvm/test/Integer/a17.ll diff -u llvm/test/Integer/a17.ll:1.3 llvm/test/Integer/a17.ll:1.4 --- llvm/test/Integer/a17.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a17.ll Thu Feb 1 20:16:22 2007 @@ -10,12 +10,12 @@ @f = constant i17 sub(i17 0 , i17 131071) @g = constant i17 sub(i17 2 , i17 131071) [EMAIL PROTECTED] = constant i17 shl(i17 1 , i8 17) [EMAIL PROTECTED] = constant i17 shl(i17 1 , i8 16) [EMAIL PROTECTED] = constant i17 lshr(i17 131071 , i8 16) [EMAIL PROTECTED] = constant i17 lshr(i17 131071 , i8 17) [EMAIL PROTECTED] = constant i17 ashr(i17 131071 , i8 16) [EMAIL PROTECTED] = constant i17 ashr(i17 131071 , i8 17) [EMAIL PROTECTED] = constant i17 shl(i17 1 , i17 17) [EMAIL PROTECTED] = constant i17 shl(i17 1 , i17 16) [EMAIL PROTECTED] = constant i17 lshr(i17 131071 , i17 16) [EMAIL PROTECTED] = constant i17 lshr(i17 131071 , i17 17) [EMAIL PROTECTED] = constant i17 ashr(i17 131071 , i17 16) [EMAIL PROTECTED] = constant i17 ashr(i17 131071 , i17 17) @n = constant i17 mul(i17 131071, i17 2) @q = constant i17 sdiv(i17 -1, i17 65535) Index: llvm/test/Integer/a31.ll diff -u llvm/test/Integer/a31.ll:1.3 llvm/test/Integer/a31.ll:1.4 --- llvm/test/Integer/a31.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a31.ll Thu Feb 1 20:16:22 2007 @@ -10,12 +10,12 @@ @f = constant i31 sub(i31 0 , i31 2147483647) @g = constant i31 sub(i31 2 , i31 2147483647) [EMAIL PROTECTED] = constant i31 shl(i31 1 , i8 31) [EMAIL PROTECTED] = constant i31 shl(i31 1 , i8 30) [EMAIL PROTECTED] = constant i31 lshr(i31 2147483647 , i8 30) [EMAIL PROTECTED] = constant i31 lshr(i31 2147483647 , i8 31) [EMAIL PROTECTED] = constant i31 ashr(i31 2147483647 , i8 30) [EMAIL PROTECTED] = constant i31 ashr(i31 2147483647 , i8 31) [EMAIL PROTECTED] = constant i31 shl(i31 1 , i31 31) [EMAIL PROTECTED] = constant i31 shl(i31 1 , i31 30) [EMAIL PROTECTED] = constant i31 lshr(i31 2147483647 , i31 30) [EMAIL PROTECTED] = constant i31 lshr(i31 2147483647 , i31 31) [EMAIL PROTECTED] = constant i31 ashr(i31 2147483647 , i31 30) [EMAIL PROTECTED] = constant i31 ashr(i31 2147483647 , i31 31) @n = constant i31 mul(i31 2147483647, i31 2) @q = constant i31 sdiv(i31 -1, i31 1073741823) Index: llvm/test/Integer/a33.ll diff -u llvm/test/Integer/a33.ll:1.3 llvm/test/Integer/a33.ll:1.4 --- llvm/test/Integer/a33.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a33.ll Thu Feb 1 20:16:22 2007 @@ -10,12 +10,12 @@ @f = constant i33 sub(i33 0 , i33 8589934591) @g = constant i33 sub(i33 2 , i33 8589934591) [EMAIL PROTECTED] = constant i33 shl(i33 1 , i8 33) [EMAIL PROTECTED] = constant i33 shl(i33 1 , i8 32) [EMAIL PROTECTED] = constant i33 lshr(i33 8589934591 , i8 32) [EMAIL PROTECTED] = constant i33 lshr(i33 8589934591 , i8 33) [EMAIL PROTECTED] = constant i33 ashr(i33 8589934591 , i8 32) [EMAIL PROTECTED] = constant i33 ashr(i33 8589934591 , i8 33) [EMAIL PROTECTED] = constant i33 shl(i33 1 , i33 33) [EMAIL PROTECTED] = constant i33 shl(i33 1 , i33 32) [EMAIL PROTECTED] = constant i33 lshr(i33 8589934591 , i33 32) [EMAIL PROTECTED] = constant i33 lshr(i33 8589934591 , i33 33) [EMAIL PROTECTED] = constant i33 ashr(i33 8589934591 , i33 32) [EMAIL PROTECTED] = constant i33 ashr(i33 8589934591 , i33 33) @n = constant i33 mul(i33 8589934591, i33 2) @q = constant i33 sdiv(i33 -1, i33 4294967295) Index: llvm/test/Integer/a63.ll diff -u llvm/test/Integer/a63.ll:1.3 llvm/test/Integer/a63.ll:1.4 --- llvm/test/Integer/a63.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a63.ll Thu Feb 1 20:16:22 2007 @@ -10,12 +10,12 @@ @f = constant i63 sub(i63 0 , i63 9223372036854775807) @g = constant i63 sub(i63 2 , i63 9223372036854775807) [EMAIL PROTECTED] = constant i63 shl(i63 1 , i8 63) [EMAIL PROTECTED] = constant i63 shl(i63 1 , i8 62) [EMAIL PROTECTED] = constant i63 lshr(i63 9223372036854775807 , i8 62) [EMAIL PROTECTED] = constant i63 lshr(i63 9223372036854775807 , i8 63) [EMAIL PROTECTED] = constant i63 ashr(i63 9223372036854775807 , i8 62) [EMAIL PROTECTED] = constant i63 ashr(i63 9223372036854775807 , i8 63) [EMAIL PROTECTED] = constant i63 shl(i63 1 , i63 63) [EMAIL PROTECTED] = constant i63 shl(i63 1 , i63 62) [EMAIL PROTECTED] = constant i63 lshr(i63 9223372036854775807 , i63 62) [EMAIL PROTECTED] = constant i63 lshr(i63 9223372036854775807 , i63 63) [EMAIL PROTECTED] = constant i63 ashr(i63 9223372036854775807 , i63 62) [EMAIL PROTECTED] = constant i63 ashr(i63 9223372036854775807 , i63 63) @n = constant i63 mul(i63 9223372036854775807, i63 2) @q = constant i63 sdiv(i63 -1, i63 4611686018427387903) Index: llvm/test/Integer/a7.ll diff -u llvm/test/Integer/a7.ll:1.4 llvm/test/Integer/a7.ll:1.5 --- llvm/test/Integer/a7.ll:1.4 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a7.ll Thu Feb 1 20:16:22 2007 @@ -13,13 +13,13 @@ @r = constant i7 sub(i7 -3, i7 120) @s = constant i7 sub(i7 -3, i7 -8) [EMAIL PROTECTED] = constant i7 shl(i7 1 , i8 7) [EMAIL PROTECTED] = constant i7 shl(i7 1 , i8 6) [EMAIL PROTECTED] = constant i7 lshr(i7 127 , i8 6) [EMAIL PROTECTED] = constant i7 lshr(i7 127 , i8 7) [EMAIL PROTECTED] = constant i7 ashr(i7 127 , i8 6) [EMAIL PROTECTED] = constant i7 ashr(i7 127 , i8 7) [EMAIL PROTECTED] constant i7 ashr(i7 -1 , i8 3) [EMAIL PROTECTED] = constant i7 shl(i7 1 , i7 7) [EMAIL PROTECTED] = constant i7 shl(i7 1 , i7 6) [EMAIL PROTECTED] = constant i7 lshr(i7 127 , i7 6) [EMAIL PROTECTED] = constant i7 lshr(i7 127 , i7 7) [EMAIL PROTECTED] = constant i7 ashr(i7 127 , i7 6) [EMAIL PROTECTED] = constant i7 ashr(i7 127 , i7 7) [EMAIL PROTECTED] constant i7 ashr(i7 -1 , i7 3) @n = constant i7 mul(i7 127, i7 2) @t = constant i7 mul(i7 -63, i7 -2) Index: llvm/test/Integer/a9.ll diff -u llvm/test/Integer/a9.ll:1.3 llvm/test/Integer/a9.ll:1.4 --- llvm/test/Integer/a9.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/a9.ll Thu Feb 1 20:16:22 2007 @@ -10,12 +10,12 @@ @f = constant i9 sub(i9 0 , i9 511) @g = constant i9 sub(i9 2 , i9 511) [EMAIL PROTECTED] = constant i9 shl(i9 1 , i8 9) [EMAIL PROTECTED] = constant i9 shl(i9 1 , i8 8) [EMAIL PROTECTED] = constant i9 lshr(i9 511 , i8 8) [EMAIL PROTECTED] = constant i9 lshr(i9 511 , i8 9) [EMAIL PROTECTED] = constant i9 ashr(i9 511 , i8 8) [EMAIL PROTECTED] = constant i9 ashr(i9 511 , i8 9) [EMAIL PROTECTED] = constant i9 shl(i9 1 , i9 9) [EMAIL PROTECTED] = constant i9 shl(i9 1 , i9 8) [EMAIL PROTECTED] = constant i9 lshr(i9 511 , i9 8) [EMAIL PROTECTED] = constant i9 lshr(i9 511 , i9 9) [EMAIL PROTECTED] = constant i9 ashr(i9 511 , i9 8) [EMAIL PROTECTED] = constant i9 ashr(i9 511 , i9 9) @n = constant i9 mul(i9 511, i9 2) @q = constant i9 sdiv(i9 511, i9 2) Index: llvm/test/Integer/testarith_bt.ll diff -u llvm/test/Integer/testarith_bt.ll:1.3 llvm/test/Integer/testarith_bt.ll:1.4 --- llvm/test/Integer/testarith_bt.ll:1.3 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/testarith_bt.ll Thu Feb 1 20:16:22 2007 @@ -13,9 +13,9 @@ %t5 = sdiv i31 %t1, %t2 %t6 = urem i31 %t1, %t2 %t7 = srem i31 %t1, %t2 - %t8 = shl i31 %t1, i8 9 - %t9 = lshr i31 %t1, i8 9 - %t10= ashr i31 %t1, i8 9 + %t8 = shl i31 %t1, 9 + %t9 = lshr i31 %t1, 9 + %t10= ashr i31 %t1, 9 %f1 = sitofp i31 %t1 to float %f2 = fdiv float 4.0, %f1 ret i31 %t3 Index: llvm/test/Integer/testlogical_new_bt.ll diff -u llvm/test/Integer/testlogical_new_bt.ll:1.2 llvm/test/Integer/testlogical_new_bt.ll:1.3 --- llvm/test/Integer/testlogical_new_bt.ll:1.2 Fri Jan 26 02:25:06 2007 +++ llvm/test/Integer/testlogical_new_bt.ll Thu Feb 1 20:16:22 2007 @@ -9,8 +9,8 @@ %t1 = xor i31 %i0, %j0 %t2 = or i31 %i0, %j0 %t3 = and i31 %t1, %t2 - %t4 = shl i31 %i0, i8 2 - %t5 = ashr i31 %i0, i8 2 - %t6 = lshr i31 %j0, i8 22 + %t4 = shl i31 %i0, 2 + %t5 = ashr i31 %i0, 2 + %t6 = lshr i31 %j0, 22 ret i31 %t3 end _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits