fix PR4963: folding insertvalue would sometimes turn a packed struct into
[llvm/avr.git] / test / Transforms / SCCP / apint-basictest3.ll
blob47671bf46b31ad428d80fc87f17ea97915dfb593
1 ; This is a basic sanity check for constant propogation.  It tests the basic 
2 ; arithmatic operations.
5 ; RUN: opt < %s -sccp -S | not grep mul
6 ; RUN: opt < %s -sccp -S | not grep umod
8 define i128 @test(i1 %B) {
9         br i1 %B, label %BB1, label %BB2
10 BB1:
11         %t1 = add i128 0, 1
12         %t2 = sub i128 0, %t1
13         %t3 = mul i128 %t2, -1
14         br label %BB3
15 BB2:
16         %f1 = udiv i128 -1, 1
17         %f2 = add i128 %f1, 1
18         %f3 = urem i128 %f2, 2121
19         br label %BB3
20 BB3:
21         %Ret = phi i128 [%t3, %BB1], [%f3, %BB2]
22         ret i128 %Ret