Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/CodeGen/AArch64/machine-licm-sink-instr.ll
Show All 30 Lines | |||||
; CHECK-NEXT: b.ne .LBB0_2 | ; CHECK-NEXT: b.ne .LBB0_2 | ||||
; CHECK-NEXT: b .LBB0_4 | ; CHECK-NEXT: b .LBB0_4 | ||||
; CHECK-NEXT: .LBB0_3: | ; CHECK-NEXT: .LBB0_3: | ||||
; CHECK-NEXT: mov w20, w19 | ; CHECK-NEXT: mov w20, w19 | ||||
; CHECK-NEXT: .LBB0_4: // %for.cond.cleanup | ; CHECK-NEXT: .LBB0_4: // %for.cond.cleanup | ||||
; CHECK-NEXT: mov w0, w20 | ; CHECK-NEXT: mov w0, w20 | ||||
; CHECK-NEXT: ldp x20, x19, [sp, #16] // 16-byte Folded Reload | ; CHECK-NEXT: ldp x20, x19, [sp, #16] // 16-byte Folded Reload | ||||
; CHECK-NEXT: ldp x30, x21, [sp], #32 // 16-byte Folded Reload | ; CHECK-NEXT: ldp x30, x21, [sp], #32 // 16-byte Folded Reload | ||||
; CHECK-NEXT: .cfi_adjust_cfa_offset -32 | |||||
; CHECK-NEXT: ret | ; CHECK-NEXT: ret | ||||
entry: | entry: | ||||
%cmp63 = icmp sgt i32 %n, 0 | %cmp63 = icmp sgt i32 %n, 0 | ||||
br i1 %cmp63, label %for.body.preheader, label %for.cond.cleanup | br i1 %cmp63, label %for.body.preheader, label %for.cond.cleanup | ||||
for.body.preheader: | for.body.preheader: | ||||
%0 = load i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i64 0, i64 0), align 4 | %0 = load i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i64 0, i64 0), align 4 | ||||
br label %for.body | br label %for.body | ||||
Show All 40 Lines | |||||
; CHECK-NEXT: b.ne .LBB1_2 | ; CHECK-NEXT: b.ne .LBB1_2 | ||||
; CHECK-NEXT: b .LBB1_4 | ; CHECK-NEXT: b .LBB1_4 | ||||
; CHECK-NEXT: .LBB1_3: | ; CHECK-NEXT: .LBB1_3: | ||||
; CHECK-NEXT: mov w21, w19 | ; CHECK-NEXT: mov w21, w19 | ||||
; CHECK-NEXT: .LBB1_4: // %for.cond.cleanup | ; CHECK-NEXT: .LBB1_4: // %for.cond.cleanup | ||||
; CHECK-NEXT: ldp x20, x19, [sp, #16] // 16-byte Folded Reload | ; CHECK-NEXT: ldp x20, x19, [sp, #16] // 16-byte Folded Reload | ||||
; CHECK-NEXT: mov w0, w21 | ; CHECK-NEXT: mov w0, w21 | ||||
; CHECK-NEXT: ldp x30, x21, [sp], #32 // 16-byte Folded Reload | ; CHECK-NEXT: ldp x30, x21, [sp], #32 // 16-byte Folded Reload | ||||
; CHECK-NEXT: .cfi_adjust_cfa_offset -32 | |||||
; CHECK-NEXT: ret | ; CHECK-NEXT: ret | ||||
entry: | entry: | ||||
%cmp63 = icmp sgt i32 %n, 0 | %cmp63 = icmp sgt i32 %n, 0 | ||||
br i1 %cmp63, label %for.body.preheader, label %for.cond.cleanup | br i1 %cmp63, label %for.body.preheader, label %for.cond.cleanup | ||||
for.body.preheader: | for.body.preheader: | ||||
%0 = load i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i64 0, i64 0), align 4 | %0 = load i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i64 0, i64 0), align 4 | ||||
%call0 = tail call i32 @_Z3usei(i32 %n) | %call0 = tail call i32 @_Z3usei(i32 %n) | ||||
▲ Show 20 Lines • Show All 41 Lines • ▼ Show 20 Lines | |||||
; CHECK-NEXT: b.ne .LBB2_2 | ; CHECK-NEXT: b.ne .LBB2_2 | ||||
; CHECK-NEXT: b .LBB2_4 | ; CHECK-NEXT: b .LBB2_4 | ||||
; CHECK-NEXT: .LBB2_3: | ; CHECK-NEXT: .LBB2_3: | ||||
; CHECK-NEXT: mov w21, w19 | ; CHECK-NEXT: mov w21, w19 | ||||
; CHECK-NEXT: .LBB2_4: // %for.cond.cleanup | ; CHECK-NEXT: .LBB2_4: // %for.cond.cleanup | ||||
; CHECK-NEXT: ldp x20, x19, [sp, #16] // 16-byte Folded Reload | ; CHECK-NEXT: ldp x20, x19, [sp, #16] // 16-byte Folded Reload | ||||
; CHECK-NEXT: mov w0, w21 | ; CHECK-NEXT: mov w0, w21 | ||||
; CHECK-NEXT: ldp x30, x21, [sp], #32 // 16-byte Folded Reload | ; CHECK-NEXT: ldp x30, x21, [sp], #32 // 16-byte Folded Reload | ||||
; CHECK-NEXT: .cfi_adjust_cfa_offset -32 | |||||
; CHECK-NEXT: ret | ; CHECK-NEXT: ret | ||||
entry: | entry: | ||||
%cmp63 = icmp sgt i32 %n, 0 | %cmp63 = icmp sgt i32 %n, 0 | ||||
br i1 %cmp63, label %for.body.preheader, label %for.cond.cleanup | br i1 %cmp63, label %for.body.preheader, label %for.cond.cleanup | ||||
for.body.preheader: | for.body.preheader: | ||||
%0 = load i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i64 0, i64 0), align 4 | %0 = load i32, i32* getelementptr inbounds ([100 x i32], [100 x i32]* @A, i64 0, i64 0), align 4 | ||||
store i32 42, i32* %store, align 4 | store i32 42, i32* %store, align 4 | ||||
Show All 17 Lines |