Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/Transforms/JumpThreading/unreachable-loops.ll
Show First 20 Lines • Show All 94 Lines • ▼ Show 20 Lines | |||||
; This gets into a state that could cause instruction simplify | ; This gets into a state that could cause instruction simplify | ||||
; to hang - an insertelement instruction has itself as an operand. | ; to hang - an insertelement instruction has itself as an operand. | ||||
define void @PR48362() { | define void @PR48362() { | ||||
; | ; | ||||
; CHECK-LABEL: @PR48362( | ; CHECK-LABEL: @PR48362( | ||||
; CHECK-NEXT: cleanup.cont1500: | ; CHECK-NEXT: cleanup.cont1500: | ||||
; CHECK-NEXT: unreachable | ; CHECK-NEXT: unreachable | ||||
; CHECK: if.end1733: | |||||
; CHECK-NEXT: [[I82:%.*]] = load i32, i32* undef, align 1 | |||||
; CHECK-NEXT: [[TOBOOL1731_NOT:%.*]] = icmp eq i32 [[I82]], 0 | |||||
; CHECK-NEXT: br label [[IF_END1733:%.*]] | |||||
; | ; | ||||
cleanup1491: ; preds = %for.body1140 | cleanup1491: ; preds = %for.body1140 | ||||
switch i32 0, label %cleanup2343.loopexit4 [ | switch i32 0, label %cleanup2343.loopexit4 [ | ||||
i32 0, label %cleanup.cont1500 | i32 0, label %cleanup.cont1500 | ||||
i32 128, label %lbl_555.loopexit | i32 128, label %lbl_555.loopexit | ||||
] | ] | ||||
cleanup.cont1500: ; preds = %cleanup1491 | cleanup.cont1500: ; preds = %cleanup1491 | ||||
▲ Show 20 Lines • Show All 70 Lines • Show Last 20 Lines |