[TwoAddressInstructionPass] When looking for a 3 addr conversion after commuting...
[oota-llvm.git] / test / CodeGen / X86 / 2007-10-14-CoalescerCrash.ll
1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin
2
3         %struct._Unwind_Context = type {  }
4
5 define i32 @execute_stack_op(i8* %op_ptr, i8* %op_end, %struct._Unwind_Context* %context, i64 %initial) {
6 entry:
7         br i1 false, label %bb, label %return
8
9 bb:             ; preds = %bb31, %entry
10         br i1 false, label %bb6, label %bb31
11
12 bb6:            ; preds = %bb
13         %tmp10 = load i64, i64* null, align 8                ; <i64> [#uses=1]
14         %tmp16 = load i64, i64* null, align 8                ; <i64> [#uses=1]
15         br i1 false, label %bb23, label %bb31
16
17 bb23:           ; preds = %bb6
18         %tmp2526.cast = and i64 %tmp16, 4294967295              ; <i64> [#uses=1]
19         %tmp27 = ashr i64 %tmp10, %tmp2526.cast         ; <i64> [#uses=1]
20         br label %bb31
21
22 bb31:           ; preds = %bb23, %bb6, %bb
23         %result.0 = phi i64 [ %tmp27, %bb23 ], [ 0, %bb ], [ 0, %bb6 ]          ; <i64> [#uses=0]
24         br i1 false, label %bb, label %return
25
26 return:         ; preds = %bb31, %entry
27         ret i32 undef
28 }