mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-26 23:38:31 +00:00
[LFTR] Regenerate test checks; NFC
llvm-svn: 365262
This commit is contained in:
parent
cb7411dab4
commit
fc70fc0cef
@ -1,3 +1,4 @@
|
||||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
||||
; RUN: opt < %s -indvars -S | FileCheck %s
|
||||
|
||||
; Provide legal integer types.
|
||||
@ -10,11 +11,146 @@ target datalayout = "n8:16:32:64"
|
||||
|
||||
define void @f() {
|
||||
; CHECK-LABEL: @f(
|
||||
; CHECK-LABEL: entry:
|
||||
; CHECK: br label %[[for_cond2_preheader:.*]]
|
||||
; CHECK-NEXT: entry:
|
||||
; CHECK-NEXT: [[TMP0:%.*]] = load i32, i32* @a, align 4
|
||||
; CHECK-NEXT: [[TOBOOL2:%.*]] = icmp eq i32 [[TMP0]], 0
|
||||
; CHECK-NEXT: [[TMP1:%.*]] = load i32, i32* @a, align 4
|
||||
; CHECK-NEXT: [[TOBOOL:%.*]] = icmp eq i32 [[TMP1]], 0
|
||||
; CHECK-NEXT: br label [[FOR_COND2_PREHEADER:%.*]]
|
||||
; CHECK: for.cond2.preheader:
|
||||
; CHECK-NEXT: [[INDVARS_IV:%.*]] = phi i32 [ [[INDVARS_IV_NEXT:%.*]], [[FOR_INC13:%.*]] ], [ -14, [[ENTRY:%.*]] ]
|
||||
; CHECK-NEXT: br i1 [[TOBOOL2]], label [[FOR_INC13]], label [[FOR_BODY3_LR_PH:%.*]]
|
||||
; CHECK: for.body3.lr.ph:
|
||||
; CHECK-NEXT: [[TMP2:%.*]] = add nsw i32 [[INDVARS_IV]], 1
|
||||
; CHECK-NEXT: [[TMP3:%.*]] = icmp ult i32 [[TMP2]], 3
|
||||
; CHECK-NEXT: [[DIV:%.*]] = select i1 [[TMP3]], i32 [[INDVARS_IV]], i32 0
|
||||
; CHECK-NEXT: br i1 false, label [[FOR_BODY3_LR_PH_SPLIT_US:%.*]], label [[FOR_BODY3_LR_PH_FOR_BODY3_LR_PH_SPLIT_CRIT_EDGE:%.*]]
|
||||
; CHECK: for.body3.lr.ph.for.body3.lr.ph.split_crit_edge:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3_LR_PH_SPLIT:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.us:
|
||||
; CHECK-NEXT: br i1 [[TOBOOL]], label [[FOR_BODY3_LR_PH_SPLIT_US_SPLIT_US:%.*]], label [[FOR_BODY3_LR_PH_SPLIT_US_FOR_BODY3_LR_PH_SPLIT_US_SPLIT_CRIT_EDGE:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.us.for.body3.lr.ph.split.us.split_crit_edge:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3_LR_PH_SPLIT_US_SPLIT:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.us.split.us:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3_US_US:%.*]]
|
||||
; CHECK: for.body3.us.us:
|
||||
; CHECK-NEXT: br i1 true, label [[COND_FALSE_US_US:%.*]], label [[COND_END_US_US:%.*]]
|
||||
; CHECK: cond.false.us.us:
|
||||
; CHECK-NEXT: br label [[COND_END_US_US]]
|
||||
; CHECK: cond.end.us.us:
|
||||
; CHECK-NEXT: [[TMP4:%.*]] = load i32, i32* @b, align 4
|
||||
; CHECK-NEXT: [[CMP91_US_US:%.*]] = icmp slt i32 [[TMP4]], 1
|
||||
; CHECK-NEXT: br i1 [[CMP91_US_US]], label [[FOR_INC_LR_PH_US_US:%.*]], label [[FOR_COND2_LOOPEXIT_US_US:%.*]]
|
||||
; CHECK: for.cond2.loopexit.us.us:
|
||||
; CHECK-NEXT: br i1 true, label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_US_LCSSA_US:%.*]], label [[FOR_BODY3_US_US]]
|
||||
; CHECK: for.inc.lr.ph.us.us:
|
||||
; CHECK-NEXT: br label [[FOR_INC_US_US:%.*]]
|
||||
; CHECK: for.cond8.for.cond2.loopexit_crit_edge.us.us:
|
||||
; CHECK-NEXT: store i32 1, i32* @b, align 4
|
||||
; CHECK-NEXT: br label [[FOR_COND2_LOOPEXIT_US_US]]
|
||||
; CHECK: for.inc.us.us:
|
||||
; CHECK-NEXT: [[TMP5:%.*]] = phi i32 [ [[TMP4]], [[FOR_INC_LR_PH_US_US]] ], [ [[INC_US_US:%.*]], [[FOR_INC_US_US]] ]
|
||||
; CHECK-NEXT: [[INC_US_US]] = add nsw i32 [[TMP5]], 1
|
||||
; CHECK-NEXT: [[EXITCOND3:%.*]] = icmp ne i32 [[INC_US_US]], 1
|
||||
; CHECK-NEXT: br i1 [[EXITCOND3]], label [[FOR_INC_US_US]], label [[FOR_COND8_FOR_COND2_LOOPEXIT_CRIT_EDGE_US_US:%.*]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge.us-lcssa.us.us-lcssa.us:
|
||||
; CHECK-NEXT: br label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.us.split:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3_US:%.*]]
|
||||
; CHECK: for.body3.us:
|
||||
; CHECK-NEXT: br i1 true, label [[COND_FALSE_US:%.*]], label [[COND_END_US:%.*]]
|
||||
; CHECK: cond.false.us:
|
||||
; CHECK-NEXT: br label [[COND_END_US]]
|
||||
; CHECK: cond.end.us:
|
||||
; CHECK-NEXT: [[COND_US:%.*]] = phi i32 [ [[DIV]], [[COND_FALSE_US]] ], [ [[INDVARS_IV]], [[FOR_BODY3_US]] ]
|
||||
; CHECK-NEXT: [[TMP6:%.*]] = load i32, i32* @b, align 4
|
||||
; CHECK-NEXT: [[CMP91_US:%.*]] = icmp slt i32 [[TMP6]], 1
|
||||
; CHECK-NEXT: br i1 [[CMP91_US]], label [[FOR_INC_LR_PH_US:%.*]], label [[FOR_COND2_LOOPEXIT_US:%.*]]
|
||||
; CHECK: for.inc.us:
|
||||
; CHECK-NEXT: [[TMP7:%.*]] = phi i32 [ [[TMP6]], [[FOR_INC_LR_PH_US]] ], [ [[INC_US:%.*]], [[FOR_INC_US:%.*]] ]
|
||||
; CHECK-NEXT: [[INC_US]] = add nsw i32 [[TMP7]], 1
|
||||
; CHECK-NEXT: [[EXITCOND2:%.*]] = icmp ne i32 [[INC_US]], 1
|
||||
; CHECK-NEXT: br i1 [[EXITCOND2]], label [[FOR_INC_US]], label [[FOR_COND8_FOR_COND2_LOOPEXIT_CRIT_EDGE_US:%.*]]
|
||||
; CHECK: for.cond2.loopexit.us:
|
||||
; CHECK-NEXT: br i1 false, label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_US_LCSSA:%.*]], label [[FOR_BODY3_US]]
|
||||
; CHECK: for.inc.lr.ph.us:
|
||||
; CHECK-NEXT: br label [[FOR_INC_US]]
|
||||
; CHECK: for.cond8.for.cond2.loopexit_crit_edge.us:
|
||||
; CHECK-NEXT: store i32 1, i32* @b, align 4
|
||||
; CHECK-NEXT: br label [[FOR_COND2_LOOPEXIT_US]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge.us-lcssa.us.us-lcssa:
|
||||
; CHECK-NEXT: [[COND_LCSSA_PH_US_PH:%.*]] = phi i32 [ [[COND_US]], [[FOR_COND2_LOOPEXIT_US]] ]
|
||||
; CHECK-NEXT: br label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge.us-lcssa.us:
|
||||
; CHECK-NEXT: [[COND_LCSSA_PH_US:%.*]] = phi i32 [ [[COND_LCSSA_PH_US_PH]], [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_US_LCSSA]] ], [ [[DIV]], [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_US_LCSSA_US]] ]
|
||||
; CHECK-NEXT: br label [[FOR_COND2_FOR_INC13_CRIT_EDGE:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split:
|
||||
; CHECK-NEXT: br i1 [[TOBOOL]], label [[FOR_BODY3_LR_PH_SPLIT_SPLIT_US:%.*]], label [[FOR_BODY3_LR_PH_SPLIT_FOR_BODY3_LR_PH_SPLIT_SPLIT_CRIT_EDGE:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.for.body3.lr.ph.split.split_crit_edge:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3_LR_PH_SPLIT_SPLIT:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.split.us:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3_US3:%.*]]
|
||||
; CHECK: for.body3.us3:
|
||||
; CHECK-NEXT: br i1 false, label [[COND_FALSE_US4:%.*]], label [[COND_END_US5:%.*]]
|
||||
; CHECK: cond.false.us4:
|
||||
; CHECK-NEXT: br label [[COND_END_US5]]
|
||||
; CHECK: cond.end.us5:
|
||||
; CHECK-NEXT: [[TMP8:%.*]] = load i32, i32* @b, align 4
|
||||
; CHECK-NEXT: [[CMP91_US7:%.*]] = icmp slt i32 [[TMP8]], 1
|
||||
; CHECK-NEXT: br i1 [[CMP91_US7]], label [[FOR_INC_LR_PH_US12:%.*]], label [[FOR_COND2_LOOPEXIT_US11:%.*]]
|
||||
; CHECK: for.inc.us8:
|
||||
; CHECK-NEXT: [[TMP9:%.*]] = phi i32 [ [[TMP8]], [[FOR_INC_LR_PH_US12]] ], [ [[INC_US9:%.*]], [[FOR_INC_US8:%.*]] ]
|
||||
; CHECK-NEXT: [[INC_US9]] = add nsw i32 [[TMP9]], 1
|
||||
; CHECK-NEXT: [[EXITCOND1:%.*]] = icmp ne i32 [[INC_US9]], 1
|
||||
; CHECK-NEXT: br i1 [[EXITCOND1]], label [[FOR_INC_US8]], label [[FOR_COND8_FOR_COND2_LOOPEXIT_CRIT_EDGE_US13:%.*]]
|
||||
; CHECK: for.cond2.loopexit.us11:
|
||||
; CHECK-NEXT: br i1 true, label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_LCSSA_US:%.*]], label [[FOR_BODY3_US3]]
|
||||
; CHECK: for.inc.lr.ph.us12:
|
||||
; CHECK-NEXT: br label [[FOR_INC_US8]]
|
||||
; CHECK: for.cond8.for.cond2.loopexit_crit_edge.us13:
|
||||
; CHECK-NEXT: store i32 1, i32* @b, align 4
|
||||
; CHECK-NEXT: br label [[FOR_COND2_LOOPEXIT_US11]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge.us-lcssa.us-lcssa.us:
|
||||
; CHECK-NEXT: br label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA:%.*]]
|
||||
; CHECK: for.body3.lr.ph.split.split:
|
||||
; CHECK-NEXT: br label [[FOR_BODY3:%.*]]
|
||||
; CHECK: for.cond8.for.cond2.loopexit_crit_edge:
|
||||
; CHECK-NEXT: store i32 1, i32* @b, align 4
|
||||
; CHECK-NEXT: br label [[FOR_COND2_LOOPEXIT:%.*]]
|
||||
; CHECK: for.cond2.loopexit:
|
||||
; CHECK-NEXT: br i1 false, label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_LCSSA:%.*]], label [[FOR_BODY3]]
|
||||
; CHECK: for.body3:
|
||||
; CHECK-NEXT: br i1 false, label [[COND_FALSE:%.*]], label [[COND_END:%.*]]
|
||||
; CHECK: cond.false:
|
||||
; CHECK-NEXT: br label [[COND_END]]
|
||||
; CHECK: cond.end:
|
||||
; CHECK-NEXT: [[TMP10:%.*]] = load i32, i32* @b, align 4
|
||||
; CHECK-NEXT: [[CMP91:%.*]] = icmp slt i32 [[TMP10]], 1
|
||||
; CHECK-NEXT: br i1 [[CMP91]], label [[FOR_INC_LR_PH:%.*]], label [[FOR_COND2_LOOPEXIT]]
|
||||
; CHECK: for.inc.lr.ph:
|
||||
; CHECK-NEXT: br label [[FOR_INC:%.*]]
|
||||
; CHECK: for.inc:
|
||||
; CHECK-NEXT: [[TMP11:%.*]] = phi i32 [ [[TMP10]], [[FOR_INC_LR_PH]] ], [ [[INC:%.*]], [[FOR_INC]] ]
|
||||
; CHECK-NEXT: [[INC]] = add nsw i32 [[TMP11]], 1
|
||||
; CHECK-NEXT: [[EXITCOND:%.*]] = icmp ne i32 [[INC]], 1
|
||||
; CHECK-NEXT: br i1 [[EXITCOND]], label [[FOR_INC]], label [[FOR_COND8_FOR_COND2_LOOPEXIT_CRIT_EDGE:%.*]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge.us-lcssa.us-lcssa:
|
||||
; CHECK-NEXT: br label [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge.us-lcssa:
|
||||
; CHECK-NEXT: [[COND_LCSSA_PH:%.*]] = phi i32 [ [[INDVARS_IV]], [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_LCSSA]] ], [ [[INDVARS_IV]], [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US_LCSSA_US]] ]
|
||||
; CHECK-NEXT: br label [[FOR_COND2_FOR_INC13_CRIT_EDGE]]
|
||||
; CHECK: for.cond2.for.inc13_crit_edge:
|
||||
; CHECK-NEXT: [[COND_LCSSA:%.*]] = phi i32 [ [[COND_LCSSA_PH]], [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA]] ], [ [[COND_LCSSA_PH_US]], [[FOR_COND2_FOR_INC13_CRIT_EDGE_US_LCSSA_US]] ]
|
||||
; CHECK-NEXT: store i32 [[COND_LCSSA]], i32* @c, align 4
|
||||
; CHECK-NEXT: br label [[FOR_INC13]]
|
||||
; CHECK: for.inc13:
|
||||
; CHECK-NEXT: [[INDVARS_IV_NEXT]] = add nsw i32 [[INDVARS_IV]], 1
|
||||
; CHECK-NEXT: [[EXITCOND4:%.*]] = icmp ne i32 [[INDVARS_IV_NEXT]], 0
|
||||
; CHECK-NEXT: br i1 [[EXITCOND4]], label [[FOR_COND2_PREHEADER]], label [[FOR_END15:%.*]]
|
||||
; CHECK: for.end15:
|
||||
; CHECK-NEXT: ret void
|
||||
;
|
||||
|
||||
; CHECK: [[for_cond2_preheader]]:
|
||||
; CHECK-NEXT: %[[indvars_iv:.*]] = phi i32 [ %[[indvars_iv_next:.*]], %[[for_inc13:.*]] ], [ -14, %entry ]
|
||||
; br i1 {{.*}}, label %[[for_inc13]], label %
|
||||
entry:
|
||||
%0 = load i32, i32* @a, align 4
|
||||
@ -207,17 +343,11 @@ for.cond2.for.inc13_crit_edge: ; preds = %for.cond2.for.inc13
|
||||
store i32 %cond.lcssa, i32* @c, align 4
|
||||
br label %for.inc13
|
||||
|
||||
; CHECK: [[for_inc13]]:
|
||||
; CHECK-NEXT: %[[indvars_iv_next]] = add nsw i32 %[[indvars_iv]], 1
|
||||
; CHECK-NEXT: %[[exitcond4:.*]] = icmp ne i32 %[[indvars_iv_next]], 0
|
||||
; CHECK-NEXT: br i1 %[[exitcond4]], label %[[for_cond2_preheader]], label %[[for_end15:.*]]
|
||||
for.inc13: ; preds = %for.cond2.for.inc13_crit_edge, %for.cond2.preheader
|
||||
%inc14 = add i8 %storemerge15, 1
|
||||
%cmp = icmp ugt i8 %inc14, 50
|
||||
br i1 %cmp, label %for.cond2.preheader, label %for.end15
|
||||
|
||||
; CHECK: [[for_end15]]:
|
||||
; CHECK-NEXT: ret void
|
||||
for.end15: ; preds = %for.inc13
|
||||
ret void
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user