Skip to content

Commit f986976

Browse files
committed
[X86] Don't run O2 pipeline in codegen test (NFC)
Regenerate the test with current O2 result and only run CGP.
1 parent aa0a413 commit f986976

File tree

1 file changed

+37
-63
lines changed

1 file changed

+37
-63
lines changed

llvm/test/CodeGen/X86/pr49466.ll

Lines changed: 37 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2-
; RUN: opt < %s -O2 -codegenprepare -S | FileCheck %s
2+
; RUN: opt < %s -codegenprepare -S | FileCheck %s
33

44
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
55
target triple = "x86_64-unknown-linux-gnu"
@@ -11,7 +11,7 @@ target triple = "x86_64-unknown-linux-gnu"
1111
@f = dso_local local_unnamed_addr global i64 0, align 8
1212
@g = dso_local local_unnamed_addr global i64 0, align 8
1313

14-
define dso_local i32 @m() local_unnamed_addr {
14+
define dso_local i32 @m() {
1515
; CHECK-LABEL: @m(
1616
; CHECK-NEXT: entry:
1717
; CHECK-NEXT: [[TMP0:%.*]] = load i64, i64* @f, align 8
@@ -99,80 +99,54 @@ for.cond: ; preds = %for.cond39.preheade
9999
%p.0 = phi i64 [ undef, %entry ], [ %p.1.lcssa, %for.cond39.preheader ]
100100
%i.0 = phi i32 [ undef, %entry ], [ %i.1.lcssa, %for.cond39.preheader ]
101101
%cmp73 = icmp slt i32 %i.0, 3
102-
br i1 %cmp73, label %for.body.preheader, label %for.cond39.preheader
103-
104-
for.body.preheader: ; preds = %for.cond
105-
br label %for.body
102+
br i1 %cmp73, label %for.body, label %for.cond39.preheader
106103

107104
for.cond1.loopexit: ; preds = %for.inc34.preheader, %for.end12
108-
br i1 %cmp, label %for.body, label %for.cond39.preheader.loopexit
109-
110-
for.cond39.preheader.loopexit: ; preds = %for.cond1.loopexit
111-
br label %for.cond39.preheader
112-
113-
for.cond39.preheader: ; preds = %for.cond39.preheader.loopexit, %for.cond
114-
%j.1.lcssa = phi i32 [ %j.0, %for.cond ], [ %conv18, %for.cond39.preheader.loopexit ]
115-
%p.1.lcssa = phi i64 [ %p.0, %for.cond ], [ 0, %for.cond39.preheader.loopexit ]
116-
%i.1.lcssa = phi i32 [ %i.0, %for.cond ], [ %conv18, %for.cond39.preheader.loopexit ]
117-
br i1 %tobool40.not, label %for.cond, label %for.inc42.preheader
118-
119-
for.inc42.preheader: ; preds = %for.cond39.preheader
120-
br label %for.inc42
121-
122-
for.body: ; preds = %for.body.preheader, %for.cond1.loopexit
123-
%l.176 = phi i8 [ %sub, %for.cond1.loopexit ], [ 0, %for.body.preheader ]
124-
%p.175 = phi i64 [ 0, %for.cond1.loopexit ], [ %p.0, %for.body.preheader ]
125-
%j.174 = phi i32 [ %conv18, %for.cond1.loopexit ], [ %j.0, %for.body.preheader ]
105+
br i1 %cmp, label %for.body, label %for.cond39.preheader
106+
107+
for.cond39.preheader: ; preds = %for.cond1.loopexit, %for.cond
108+
%j.1.lcssa = phi i32 [ %j.0, %for.cond ], [ %conv18, %for.cond1.loopexit ]
109+
%p.1.lcssa = phi i64 [ %p.0, %for.cond ], [ 0, %for.cond1.loopexit ]
110+
%i.1.lcssa = phi i32 [ %i.0, %for.cond ], [ %conv18, %for.cond1.loopexit ]
111+
br i1 %tobool40.not, label %for.cond, label %for.inc42
112+
113+
for.body: ; preds = %for.cond, %for.cond1.loopexit
114+
%l.176 = phi i8 [ %sub, %for.cond1.loopexit ], [ 0, %for.cond ]
115+
%p.175 = phi i64 [ 0, %for.cond1.loopexit ], [ %p.0, %for.cond ]
116+
%j.174 = phi i32 [ %conv18, %for.cond1.loopexit ], [ %j.0, %for.cond ]
126117
%tobool.not = icmp eq i32 %j.174, 0
127118
br i1 %tobool.not, label %cleanup45, label %for.cond2.preheader
128119

129120
for.cond2.preheader: ; preds = %for.body
130-
%tobool3.not69 = icmp eq i64 %p.175, 0
131121
%.pr.pre = load i64, i64* @e, align 8
132-
br i1 %tobool3.not69, label %for.end12, label %for.body4.preheader
133-
134-
for.body4.preheader: ; preds = %for.cond2.preheader
122+
switch i64 %p.175, label %for.body4.preheader6 [
123+
i64 -1, label %for.end12
124+
i64 -2, label %for.end12
125+
i64 -3, label %for.end12
126+
i64 -4, label %for.end12
127+
i64 -5, label %for.end12
128+
i64 -6, label %for.end12
129+
i64 -7, label %for.end12
130+
i64 0, label %for.end12
131+
]
132+
133+
for.body4.preheader6: ; preds = %for.cond2.preheader
135134
%4 = sub i64 0, %p.175
136135
%xtraiter = and i64 %4, 7
137-
%lcmp.mod.not = icmp eq i64 %xtraiter, 0
138-
br i1 %lcmp.mod.not, label %for.body4.prol.loopexit, label %for.body4.prol.preheader
139-
140-
for.body4.prol.preheader: ; preds = %for.body4.preheader
141-
%5 = mul nsw i64 %xtraiter, -1
142-
br label %for.body4.prol
143-
144-
for.body4.prol: ; preds = %for.body4.prol.preheader, %for.body4.prol
145-
%lsr.iv = phi i64 [ 0, %for.body4.prol.preheader ], [ %lsr.iv.next, %for.body4.prol ]
146-
%lsr.iv.next = add nsw i64 %lsr.iv, -1
147-
%prol.iter.cmp.not = icmp eq i64 %5, %lsr.iv.next
148-
br i1 %prol.iter.cmp.not, label %for.body4.prol.loopexit.loopexit, label %for.body4.prol
149-
150-
for.body4.prol.loopexit.loopexit: ; preds = %for.body4.prol
151-
%6 = sub i64 %p.175, %lsr.iv.next
152-
br label %for.body4.prol.loopexit
153-
154-
for.body4.prol.loopexit: ; preds = %for.body4.prol.loopexit.loopexit, %for.body4.preheader
155-
%p.270.unr = phi i64 [ %p.175, %for.body4.preheader ], [ %6, %for.body4.prol.loopexit.loopexit ]
156-
%7 = icmp ugt i64 %p.175, -8
157-
br i1 %7, label %for.end12, label %for.body4.preheader89
158-
159-
for.body4.preheader89: ; preds = %for.body4.prol.loopexit
136+
%5 = add i64 %p.175, %xtraiter
160137
br label %for.body4
161138

162-
for.body4: ; preds = %for.body4.preheader89, %for.body4
163-
%p.270 = phi i64 [ %inc11.7, %for.body4 ], [ %p.270.unr, %for.body4.preheader89 ]
139+
for.body4: ; preds = %for.body4.preheader6, %for.body4
140+
%p.270 = phi i64 [ %inc11.7, %for.body4 ], [ %5, %for.body4.preheader6 ]
164141
%inc11.7 = add i64 %p.270, 8
165142
%tobool3.not.7 = icmp eq i64 %inc11.7, 0
166-
br i1 %tobool3.not.7, label %for.end12.loopexit, label %for.body4
167-
168-
for.end12.loopexit: ; preds = %for.body4
169-
br label %for.end12
143+
br i1 %tobool3.not.7, label %for.end12, label %for.body4
170144

171-
for.end12: ; preds = %for.end12.loopexit, %for.body4.prol.loopexit, %for.cond2.preheader
172-
%8 = load i32, i32* %1, align 4
173-
%conv23 = zext i32 %8 to i64
174-
%9 = load i64, i64* @b, align 8
175-
%div24 = udiv i64 %9, %conv23
145+
for.end12: ; preds = %for.body4, %for.cond2.preheader, %for.cond2.preheader, %for.cond2.preheader, %for.cond2.preheader, %for.cond2.preheader, %for.cond2.preheader, %for.cond2.preheader, %for.cond2.preheader
146+
%6 = load i32, i32* %1, align 4
147+
%conv23 = zext i32 %6 to i64
148+
%7 = load i64, i64* @b, align 8
149+
%div24 = udiv i64 %7, %conv23
176150
store i64 %div24, i64* @b, align 8
177151
%sub = add i8 %l.176, -1
178152
%tobool32.not72 = icmp eq i64 %.pr.pre, 0
@@ -182,7 +156,7 @@ for.inc34.preheader: ; preds = %for.end12
182156
store i64 0, i64* @e, align 8
183157
br label %for.cond1.loopexit
184158

185-
for.inc42: ; preds = %for.inc42.preheader, %for.inc42
159+
for.inc42: ; preds = %for.cond39.preheader, %for.inc42
186160
br label %for.inc42
187161

188162
cleanup45: ; preds = %for.body

0 commit comments

Comments
 (0)