[llvm] r270285 - add test vector sdiv

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Fri May 20 15:08:41 PDT 2016


Author: spatel
Date: Fri May 20 17:08:40 2016
New Revision: 270285

URL: http://llvm.org/viewvc/llvm-project?rev=270285&view=rev
Log:
add test vector sdiv

Modified:
    llvm/trunk/test/Transforms/InstCombine/div.ll

Modified: llvm/trunk/test/Transforms/InstCombine/div.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/div.ll?rev=270285&r1=270284&r2=270285&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/div.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/div.ll Fri May 20 17:08:40 2016
@@ -369,6 +369,21 @@ define i32 @test36(i32 %A) {
   ret i32 %mul
 }
 
+; FIXME: Vector should get same transform as scalar.
+
+define <2 x i32> @test36vec(<2 x i32> %A) {
+; CHECK-LABEL: @test36vec(
+; CHECK-NEXT:    [[AND:%.*]] = and <2 x i32> %A, <i32 2147483647, i32 2147483647>
+; CHECK-NEXT:    [[SHL:%.*]] = shl nsw <2 x i32> <i32 1, i32 1>, %A
+; CHECK-NEXT:    [[MUL:%.*]] = sdiv exact <2 x i32> [[AND]], [[SHL]]
+; CHECK-NEXT:    ret <2 x i32> [[MUL]]
+;
+  %and = and <2 x i32> %A, <i32 2147483647, i32 2147483647>
+  %shl = shl nsw <2 x i32> <i32 1, i32 1>, %A
+  %mul = sdiv exact <2 x i32> %and, %shl
+  ret <2 x i32> %mul
+}
+
 define i32 @test37(i32* %b) {
 ; CHECK-LABEL: @test37(
 ; CHECK-NEXT:  entry:




More information about the llvm-commits mailing list