| ; RUN: llvm-as %s -o - | lli -force-interpreter |
| |
| target datalayout = "E" |
| |
| define i32 @main() { |
| entry: |
| %i = alloca i93 |
| store i93 18364758544493064720, i93* %i |
| %i1 = load i93* %i |
| %i2 = shl i93 %i1, 32 |
| %i3 = or i93 %i2, 3753679480 |
| store i93 %i3, i93* %i |
| %i4 = load i93* %i |
| %C = icmp eq i93 %i3, %i4 |
| br i1 %C, label %ok1, label %fail |
| ok1: |
| %b = bitcast i93* %i to [12 x i8]* |
| %b0 = getelementptr [12 x i8]* %b, i32 0, i32 0 |
| %v0 = load i8* %b0 |
| %c0 = icmp eq i8 %v0, 30 |
| br i1 %c0, label %ok2, label %fail |
| ok2: |
| %b1 = getelementptr [12 x i8]* %b, i32 0, i32 1 |
| %v1 = load i8* %b1 |
| %c1 = icmp eq i8 %v1, 220 |
| br i1 %c1, label %ok3, label %fail |
| ok3: |
| %b2 = getelementptr [12 x i8]* %b, i32 0, i32 2 |
| %v2 = load i8* %b2 |
| %c2 = icmp eq i8 %v2, 186 |
| br i1 %c2, label %ok4, label %fail |
| ok4: |
| %b3 = getelementptr [12 x i8]* %b, i32 0, i32 3 |
| %v3 = load i8* %b3 |
| %c3 = icmp eq i8 %v3, 152 |
| br i1 %c3, label %ok5, label %fail |
| ok5: |
| %b4 = getelementptr [12 x i8]* %b, i32 0, i32 4 |
| %v4 = load i8* %b4 |
| %c4 = icmp eq i8 %v4, 118 |
| br i1 %c4, label %ok6, label %fail |
| ok6: |
| %b5 = getelementptr [12 x i8]* %b, i32 0, i32 5 |
| %v5 = load i8* %b5 |
| %c5 = icmp eq i8 %v5, 84 |
| br i1 %c5, label %ok7, label %fail |
| ok7: |
| %b6 = getelementptr [12 x i8]* %b, i32 0, i32 6 |
| %v6 = load i8* %b6 |
| %c6 = icmp eq i8 %v6, 50 |
| br i1 %c6, label %ok8, label %fail |
| ok8: |
| %b7 = getelementptr [12 x i8]* %b, i32 0, i32 7 |
| %v7 = load i8* %b7 |
| %c7 = icmp eq i8 %v7, 16 |
| br i1 %c7, label %ok9, label %fail |
| ok9: |
| %b8 = getelementptr [12 x i8]* %b, i32 0, i32 8 |
| %v8 = load i8* %b8 |
| %c8 = icmp eq i8 %v8, 223 |
| br i1 %c8, label %okA, label %fail |
| okA: |
| %b9 = getelementptr [12 x i8]* %b, i32 0, i32 9 |
| %v9 = load i8* %b9 |
| %c9 = icmp eq i8 %v9, 188 |
| br i1 %c9, label %okB, label %fail |
| okB: |
| %bA = getelementptr [12 x i8]* %b, i32 0, i32 10 |
| %vA = load i8* %bA |
| %cA = icmp eq i8 %vA, 154 |
| br i1 %cA, label %okC, label %fail |
| okC: |
| %bB = getelementptr [12 x i8]* %b, i32 0, i32 11 |
| %vB = load i8* %bB |
| %cB = icmp eq i8 %vB, 120 |
| br i1 %cB, label %okD, label %fail |
| okD: |
| ret i32 0 |
| fail: |
| ret i32 1 |
| } |