Stop using tests with grep, or no output checks at all. Just use FileCheck and generate checks. Also remove unnecessary requires asserts.
58 lines
2.1 KiB
LLVM
58 lines
2.1 KiB
LLVM
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
|
; RUN: opt -S -passes=jump-threading < %s | FileCheck %s
|
|
|
|
define void @func(i8 zeroext %p_44) nounwind {
|
|
; CHECK-LABEL: @func(
|
|
; CHECK-NEXT: return:
|
|
; CHECK-NEXT: ret void
|
|
; CHECK: for.inc46:
|
|
; CHECK-NEXT: br label [[FOR_INC46:%.*]]
|
|
;
|
|
entry:
|
|
br i1 false, label %for.cond2, label %if.end50
|
|
|
|
for.cond2: ; preds = %for.inc46, %lor.end, %entry
|
|
%p_44.addr.1 = phi i8 [ %p_44.addr.1, %lor.end ], [ %p_44, %entry ], [ %p_44.addr.1, %for.inc46 ]
|
|
br i1 undef, label %for.inc46, label %for.body5
|
|
|
|
for.body5: ; preds = %for.cond2
|
|
br i1 undef, label %lbl_465, label %if.then9
|
|
|
|
if.then9: ; preds = %for.body5
|
|
br label %return
|
|
|
|
lbl_465: ; preds = %lbl_465, %for.body5
|
|
%tobool19 = icmp eq i8 undef, 0
|
|
br i1 %tobool19, label %if.end21, label %lbl_465
|
|
|
|
if.end21: ; preds = %lbl_465
|
|
%conv23 = zext i8 %p_44.addr.1 to i64
|
|
%xor = xor i64 %conv23, 1
|
|
%tobool.i = icmp eq i64 %conv23, 0
|
|
br i1 %tobool.i, label %cond.false.i, label %safe_mod_func_uint64_t_u_u.exit
|
|
|
|
cond.false.i: ; preds = %if.end21
|
|
%div.i = udiv i64 %xor, %conv23
|
|
br label %safe_mod_func_uint64_t_u_u.exit
|
|
|
|
safe_mod_func_uint64_t_u_u.exit: ; preds = %cond.false.i, %if.end21
|
|
%cond.i = phi i64 [ %div.i, %cond.false.i ], [ %conv23, %if.end21 ]
|
|
%tobool28 = icmp eq i64 %cond.i, 0
|
|
br i1 %tobool28, label %lor.rhs, label %lor.end
|
|
|
|
lor.rhs: ; preds = %safe_mod_func_uint64_t_u_u.exit
|
|
br label %lor.end
|
|
|
|
lor.end: ; preds = %lor.rhs, %safe_mod_func_uint64_t_u_u.exit
|
|
br label %for.cond2
|
|
|
|
for.inc46: ; preds = %for.cond2
|
|
br label %for.cond2
|
|
|
|
if.end50: ; preds = %entry
|
|
br label %return
|
|
|
|
return: ; preds = %if.end50, %if.then9
|
|
ret void
|
|
}
|