Please use GitHub pull requests for new patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/CodeGen/AArch64/arm64-ccmp.ll
Show First 20 Lines • Show All 361 Lines • ▼ Show 20 Lines | |||||
%str1 = type { %str2 } | %str1 = type { %str2 } | ||||
%str2 = type { [24 x i8], i8*, i32, %str1*, i32, [4 x i8], %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, i8*, i8, i8*, %str1*, i8* } | %str2 = type { [24 x i8], i8*, i32, %str1*, i32, [4 x i8], %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, %str1*, i8*, i8, i8*, %str1*, i8* } | ||||
; Test case distilled from 126.gcc. | ; Test case distilled from 126.gcc. | ||||
; The phi in sw.bb.i.i gets multiple operands for the %entry predecessor. | ; The phi in sw.bb.i.i gets multiple operands for the %entry predecessor. | ||||
define void @build_modify_expr() nounwind ssp { | define void @build_modify_expr() nounwind ssp { | ||||
; CHECK-LABEL: build_modify_expr: | ; CHECK-LABEL: build_modify_expr: | ||||
; CHECK: ; %bb.0: ; %entry | ; CHECK: ; %bb.0: ; %entry | ||||
; CHECK-NEXT: cmp w8, #37 | ; CHECK-NEXT: ret | ||||
; CHECK-NEXT: mov w8, #1 | |||||
; CHECK-NEXT: lsl x8, x8, xzr | |||||
; CHECK-NEXT: mov x9, #31 | |||||
; CHECK-NEXT: movk x9, #48, lsl #32 | |||||
; CHECK-NEXT: and x8, x8, x9 | |||||
; CHECK-NEXT: ccmp x8, #0, #4, ls | |||||
; CHECK-NEXT: b.eq LBB11_2 | |||||
; CHECK-NEXT: ; %bb.1: ; %if.end85 | |||||
; CHECK-NEXT: ret | |||||
; CHECK-NEXT: LBB11_2: ; %sw.bb.i.i.preheader | |||||
; CHECK-NEXT: ; implicit-def: $x8 | |||||
; CHECK-NEXT: LBB11_3: ; %sw.bb.i.i | |||||
; CHECK-NEXT: ; =>This Inner Loop Header: Depth=1 | |||||
; CHECK-NEXT: ldr x8, [x8, #32] | |||||
; CHECK-NEXT: b LBB11_3 | |||||
entry: | entry: | ||||
switch i32 undef, label %sw.bb.i.i [ | switch i32 undef, label %sw.bb.i.i [ | ||||
i32 69, label %if.end85 | i32 69, label %if.end85 | ||||
i32 70, label %if.end85 | i32 70, label %if.end85 | ||||
i32 71, label %if.end85 | i32 71, label %if.end85 | ||||
i32 72, label %if.end85 | i32 72, label %if.end85 | ||||
i32 73, label %if.end85 | i32 73, label %if.end85 | ||||
i32 105, label %if.end85 | i32 105, label %if.end85 | ||||
▲ Show 20 Lines • Show All 492 Lines • Show Last 20 Lines |