[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / Assembler / invalid-uselistorder-function-between-blocks.ll
blob8f771e86dd44c06c35c45595e7d6de2181078251
1 ; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s
2 ; CHECK: error: expected uselistorder directive
4 define i32 @f32(i32 %a, i32 %b, i32 %c, i32 %d) {
5 entry:
6   br label %first
8 ; <label 0>:
9   %eh = mul i32 %e, %1
10   %sum = add i32 %eh, %ef
11   br label %preexit
13 preexit:
14   %product = phi i32 [%ef, %first], [%sum, %0]
15   %backto0 = icmp slt i32 %product, -9
16   br i1 %backto0, label %0, label %exit
18 first:
19   %e = add i32 %a, 7
20   %f = add i32 %b, 7
21   %g = add i32 %c, 8
22   %1 = add i32 %d, 8
23   %ef = mul i32 %e, %f
24   %g1 = mul i32 %g, %1
25   %goto0 = icmp slt i32 %g1, -9
26   br i1 %goto0, label %0, label %preexit
28 ; uselistorder directives
29   uselistorder i32 7, { 1, 0 }
30   uselistorder i32 %1, { 1, 0 }
31   uselistorder i32 %e, { 1, 0 }
32   uselistorder label %0, { 1, 0 }
33   uselistorder label %preexit, { 1, 0 }
35 exit:
36   ret i32 %product