Check in a reduced version of this testcase.
[oota-llvm.git] / test / CodeGen / PowerPC / div-2.ll
index f414970b198f6d3ce993b52ee111ac6aa005e023..26e6221784087cc2243db795ad5e15fb5cf6285e 100644 (file)
@@ -1,8 +1,30 @@
-; RUN: llvm-as < %s | llc -march=ppc32 | not grep srawi &&
+; RUN: llvm-as < %s | llc -march=ppc32 | not grep srawi 
 ; RUN: llvm-as < %s | llc -march=ppc32 | grep blr
 
-int %test(int %X) {
-       %Y = and int %X, 15
-       %Z = div int %Y, 4
-       ret int %Z
+define i32 @test1(i32 %X) {
+        %Y = and i32 %X, 15             ; <i32> [#uses=1]
+        %Z = sdiv i32 %Y, 4             ; <i32> [#uses=1]
+        ret i32 %Z
 }
+
+define i32 @test2(i32 %W) {
+        %X = and i32 %W, 15             ; <i32> [#uses=1]
+        %Y = sub i32 16, %X             ; <i32> [#uses=1]
+        %Z = sdiv i32 %Y, 4             ; <i32> [#uses=1]
+        ret i32 %Z
+}
+
+define i32 @test3(i32 %W) {
+        %X = and i32 %W, 15             ; <i32> [#uses=1]
+        %Y = sub i32 15, %X             ; <i32> [#uses=1]
+        %Z = sdiv i32 %Y, 4             ; <i32> [#uses=1]
+        ret i32 %Z
+}
+
+define i32 @test4(i32 %W) {
+        %X = and i32 %W, 2              ; <i32> [#uses=1]
+        %Y = sub i32 5, %X              ; <i32> [#uses=1]
+        %Z = sdiv i32 %Y, 2             ; <i32> [#uses=1]
+        ret i32 %Z
+}
+