Skip to content

Commit c5e1ddb

Browse files
committed
[ConstraintElimination] Update tests to use opaque pointers.
1 parent da59464 commit c5e1ddb

13 files changed

+1566
-1652
lines changed

llvm/test/Transforms/ConstraintElimination/and.ll

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -148,15 +148,15 @@ exit:
148148
ret i4 3
149149
}
150150

151-
define i1 @test_and_condition_trivially_false(i1 %c, i8* %ptr.1, i8 %idx, i8* %ptr.2) {
151+
define i1 @test_and_condition_trivially_false(i1 %c, ptr %ptr.1, i8 %idx, ptr %ptr.2) {
152152
; CHECK-LABEL: @test_and_condition_trivially_false(
153153
; CHECK-NEXT: entry:
154154
; CHECK-NEXT: br i1 [[C:%.*]], label [[THEN:%.*]], label [[EXIT_3:%.*]]
155155
; CHECK: then:
156-
; CHECK-NEXT: [[CMP_1:%.*]] = icmp ugt i8* [[PTR_2:%.*]], [[PTR_2]]
156+
; CHECK-NEXT: [[CMP_1:%.*]] = icmp ugt ptr [[PTR_2:%.*]], [[PTR_2]]
157157
; CHECK-NEXT: [[IDX_EXT:%.*]] = zext i8 [[IDX:%.*]] to i16
158-
; CHECK-NEXT: [[GEP_IDX_EXT:%.*]] = getelementptr inbounds i8, i8* [[PTR_1:%.*]], i16 [[IDX_EXT]]
159-
; CHECK-NEXT: [[CMP_2:%.*]] = icmp ult i8* [[PTR_2]], [[GEP_IDX_EXT]]
158+
; CHECK-NEXT: [[GEP_IDX_EXT:%.*]] = getelementptr inbounds i8, ptr [[PTR_1:%.*]], i16 [[IDX_EXT]]
159+
; CHECK-NEXT: [[CMP_2:%.*]] = icmp ult ptr [[PTR_2]], [[GEP_IDX_EXT]]
160160
; CHECK-NEXT: [[AND:%.*]] = and i1 false, [[CMP_2]]
161161
; CHECK-NEXT: br i1 [[AND]], label [[EXIT_1:%.*]], label [[EXIT_2:%.*]]
162162
; CHECK: exit.1:
@@ -171,18 +171,18 @@ entry:
171171
br i1 %c, label %then, label %exit.3
172172

173173
then:
174-
%cmp.1 = icmp ugt i8* %ptr.2, %ptr.2
174+
%cmp.1 = icmp ugt ptr %ptr.2, %ptr.2
175175
%idx.ext = zext i8 %idx to i16
176-
%gep.idx.ext = getelementptr inbounds i8, i8* %ptr.1, i16 %idx.ext
177-
%cmp.2 = icmp ult i8* %ptr.2, %gep.idx.ext
176+
%gep.idx.ext = getelementptr inbounds i8, ptr %ptr.1, i16 %idx.ext
177+
%cmp.2 = icmp ult ptr %ptr.2, %gep.idx.ext
178178
%and = and i1 %cmp.1, %cmp.2
179179
br i1 %and, label %exit.1, label %exit.2
180180

181181
exit.1:
182-
ret i1 1
182+
ret i1 true
183183

184184
exit.2:
185-
ret i1 0
185+
ret i1 false
186186

187187
exit.3:
188188
%cmp.3 = icmp ne i8 %idx, 0

llvm/test/Transforms/ConstraintElimination/gep-arithmetic.ll

Lines changed: 284 additions & 304 deletions
Large diffs are not rendered by default.

llvm/test/Transforms/ConstraintElimination/geps-pointers-to-arrays.ll

Lines changed: 80 additions & 86 deletions
Large diffs are not rendered by default.

llvm/test/Transforms/ConstraintElimination/geps-pointers-to-structs.ll

Lines changed: 197 additions & 198 deletions
Large diffs are not rendered by default.

llvm/test/Transforms/ConstraintElimination/geps-signed-predicates.ll

Lines changed: 294 additions & 320 deletions
Large diffs are not rendered by default.

llvm/test/Transforms/ConstraintElimination/geps-unsigned-predicates.ll

Lines changed: 294 additions & 320 deletions
Large diffs are not rendered by default.

llvm/test/Transforms/ConstraintElimination/invoke.ll

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33

44
declare void @may_unwind()
55

6-
declare i32 @__gxx_personality_v0(...);
6+
declare i32 @__gxx_personality_v0(...)
77

8-
define i1 @test_invoke_in_block_with_assume(i32 %x) personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
8+
define i1 @test_invoke_in_block_with_assume(i32 %x) personality ptr @__gxx_personality_v0 {
99
; CHECK-LABEL: @test_invoke_in_block_with_assume(
1010
; CHECK-NEXT: entry:
1111
; CHECK-NEXT: call void @may_unwind()
@@ -19,8 +19,8 @@ define i1 @test_invoke_in_block_with_assume(i32 %x) personality i8* bitcast (i32
1919
; CHECK-NEXT: [[RES_1:%.*]] = xor i1 true, [[C_2]]
2020
; CHECK-NEXT: ret i1 [[RES_1]]
2121
; CHECK: lpad:
22-
; CHECK-NEXT: [[LP:%.*]] = landingpad { i8*, i32 }
23-
; CHECK-NEXT: filter [0 x i8*] zeroinitializer
22+
; CHECK-NEXT: [[LP:%.*]] = landingpad { ptr, i32 }
23+
; CHECK-NEXT: filter [0 x ptr] zeroinitializer
2424
; CHECK-NEXT: [[T_2:%.*]] = icmp ult i32 [[X]], 10
2525
; CHECK-NEXT: [[C_3:%.*]] = icmp ult i32 [[X]], 9
2626
; CHECK-NEXT: [[RES_2:%.*]] = xor i1 true, [[C_3]]
@@ -30,7 +30,8 @@ entry:
3030
call void @may_unwind()
3131
%c.1 = icmp ult i32 %x, 10
3232
call void @llvm.assume(i1 %c.1)
33-
invoke void @may_unwind() to label %cont unwind label %lpad
33+
invoke void @may_unwind()
34+
to label %cont unwind label %lpad
3435

3536
cont:
3637
%t.1 = icmp ult i32 %x, 10
@@ -39,8 +40,8 @@ cont:
3940
ret i1 %res.1
4041

4142
lpad:
42-
%lp = landingpad { i8*, i32 }
43-
filter [0 x i8*] zeroinitializer
43+
%lp = landingpad { ptr, i32 }
44+
filter [0 x ptr] zeroinitializer
4445
%t.2 = icmp ult i32 %x, 10
4546
%c.3 = icmp ult i32 %x, 9
4647
%res.2 = xor i1 %t.2, %c.3

llvm/test/Transforms/ConstraintElimination/large-constant-ints.ll

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -123,159 +123,159 @@ else:
123123
ret i1 false
124124
}
125125

126-
define i1 @gep_decomp_i80(i8* %a) {
126+
define i1 @gep_decomp_i80(ptr %a) {
127127
; CHECK-LABEL: @gep_decomp_i80(
128128
; CHECK-NEXT: entry:
129-
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, i8* [[A:%.*]], i80 1973801615886922022913
130-
; CHECK-NEXT: [[C:%.*]] = icmp eq i8* [[GEP]], null
129+
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, ptr [[A:%.*]], i80 1973801615886922022913
130+
; CHECK-NEXT: [[C:%.*]] = icmp eq ptr [[GEP]], null
131131
; CHECK-NEXT: br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
132132
; CHECK: then:
133-
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, i8* [[A]], i80 1973801615886922022913
134-
; CHECK-NEXT: [[C_1:%.*]] = icmp eq i8* [[GEP_1]], null
133+
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, ptr [[A]], i80 1973801615886922022913
134+
; CHECK-NEXT: [[C_1:%.*]] = icmp eq ptr [[GEP_1]], null
135135
; CHECK-NEXT: ret i1 [[C_1]]
136136
; CHECK: else:
137137
; CHECK-NEXT: ret i1 false
138138
;
139139
entry:
140-
%gep = getelementptr inbounds i8, i8* %a, i80 1973801615886922022913
141-
%c = icmp eq i8* %gep, null
140+
%gep = getelementptr inbounds i8, ptr %a, i80 1973801615886922022913
141+
%c = icmp eq ptr %gep, null
142142
br i1 %c, label %then, label %else
143143

144144
then:
145-
%gep.1 = getelementptr inbounds i8, i8* %a, i80 1973801615886922022913
146-
%c.1 = icmp eq i8* %gep.1, null
145+
%gep.1 = getelementptr inbounds i8, ptr %a, i80 1973801615886922022913
146+
%c.1 = icmp eq ptr %gep.1, null
147147
ret i1 %c.1
148148

149149
else:
150150
ret i1 false
151151
}
152152

153-
define i1 @gep_zext_shl_decomp_i80(i8* %a, i80 %v) {
153+
define i1 @gep_zext_shl_decomp_i80(ptr %a, i80 %v) {
154154
; CHECK-LABEL: @gep_zext_shl_decomp_i80(
155155
; CHECK-NEXT: entry:
156156
; CHECK-NEXT: [[SHL:%.*]] = shl nuw i80 [[V:%.*]], 1973801615886922022913
157157
; CHECK-NEXT: [[EXT:%.*]] = zext i80 [[SHL]] to i128
158-
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, i8* [[A:%.*]], i128 [[EXT]]
159-
; CHECK-NEXT: [[C:%.*]] = icmp eq i8* [[GEP]], null
158+
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, ptr [[A:%.*]], i128 [[EXT]]
159+
; CHECK-NEXT: [[C:%.*]] = icmp eq ptr [[GEP]], null
160160
; CHECK-NEXT: br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
161161
; CHECK: then:
162162
; CHECK-NEXT: [[SHL_1:%.*]] = shl nuw i80 [[V]], 1973801615886922022913
163163
; CHECK-NEXT: [[EXT_1:%.*]] = zext i80 [[SHL_1]] to i128
164-
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, i8* [[A]], i128 [[EXT_1]]
165-
; CHECK-NEXT: [[C_1:%.*]] = icmp eq i8* [[GEP_1]], null
164+
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, ptr [[A]], i128 [[EXT_1]]
165+
; CHECK-NEXT: [[C_1:%.*]] = icmp eq ptr [[GEP_1]], null
166166
; CHECK-NEXT: ret i1 [[C_1]]
167167
; CHECK: else:
168168
; CHECK-NEXT: ret i1 false
169169
;
170170
entry:
171171
%shl = shl nuw i80 %v, 1973801615886922022913
172172
%ext = zext i80 %shl to i128
173-
%gep = getelementptr inbounds i8, i8* %a, i128 %ext
174-
%c = icmp eq i8* %gep, null
173+
%gep = getelementptr inbounds i8, ptr %a, i128 %ext
174+
%c = icmp eq ptr %gep, null
175175
br i1 %c, label %then, label %else
176176

177177
then:
178178
%shl.1 = shl nuw i80 %v, 1973801615886922022913
179179
%ext.1 = zext i80 %shl.1 to i128
180-
%gep.1 = getelementptr inbounds i8, i8* %a, i128 %ext.1
181-
%c.1 = icmp eq i8* %gep.1, null
180+
%gep.1 = getelementptr inbounds i8, ptr %a, i128 %ext.1
181+
%c.1 = icmp eq ptr %gep.1, null
182182
ret i1 %c.1
183183

184184
else:
185185
ret i1 false
186186
}
187187

188-
define i1 @gep_zext_add_decomp_i80(i8* %a, i80 %v) {
188+
define i1 @gep_zext_add_decomp_i80(ptr %a, i80 %v) {
189189
; CHECK-LABEL: @gep_zext_add_decomp_i80(
190190
; CHECK-NEXT: entry:
191191
; CHECK-NEXT: [[ADD:%.*]] = add nsw i80 [[V:%.*]], 1973801615886922022913
192192
; CHECK-NEXT: [[EXT:%.*]] = zext i80 [[ADD]] to i128
193-
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, i8* [[A:%.*]], i128 [[EXT]]
194-
; CHECK-NEXT: [[C:%.*]] = icmp eq i8* [[GEP]], null
193+
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, ptr [[A:%.*]], i128 [[EXT]]
194+
; CHECK-NEXT: [[C:%.*]] = icmp eq ptr [[GEP]], null
195195
; CHECK-NEXT: br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
196196
; CHECK: then:
197197
; CHECK-NEXT: [[ADD_1:%.*]] = add nsw i80 [[V]], 1973801615886922022913
198198
; CHECK-NEXT: [[EXT_1:%.*]] = zext i80 [[ADD_1]] to i128
199-
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, i8* [[A]], i128 [[EXT_1]]
200-
; CHECK-NEXT: [[C_1:%.*]] = icmp eq i8* [[GEP_1]], null
199+
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, ptr [[A]], i128 [[EXT_1]]
200+
; CHECK-NEXT: [[C_1:%.*]] = icmp eq ptr [[GEP_1]], null
201201
; CHECK-NEXT: ret i1 [[C_1]]
202202
; CHECK: else:
203203
; CHECK-NEXT: ret i1 false
204204
;
205205
entry:
206206
%add = add nsw i80 %v, 1973801615886922022913
207207
%ext = zext i80 %add to i128
208-
%gep = getelementptr inbounds i8, i8* %a, i128 %ext
209-
%c = icmp eq i8* %gep, null
208+
%gep = getelementptr inbounds i8, ptr %a, i128 %ext
209+
%c = icmp eq ptr %gep, null
210210
br i1 %c, label %then, label %else
211211

212212
then:
213213
%add.1 = add nsw i80 %v, 1973801615886922022913
214214
%ext.1 = zext i80 %add.1 to i128
215-
%gep.1 = getelementptr inbounds i8, i8* %a, i128 %ext.1
216-
%c.1 = icmp eq i8* %gep.1, null
215+
%gep.1 = getelementptr inbounds i8, ptr %a, i128 %ext.1
216+
%c.1 = icmp eq ptr %gep.1, null
217217
ret i1 %c.1
218218

219219
else:
220220
ret i1 false
221221
}
222222

223-
define i1 @gep_shl_decomp_i80(i8* %a, i80 %v) {
223+
define i1 @gep_shl_decomp_i80(ptr %a, i80 %v) {
224224
; CHECK-LABEL: @gep_shl_decomp_i80(
225225
; CHECK-NEXT: entry:
226226
; CHECK-NEXT: [[SHL:%.*]] = shl nuw i80 [[V:%.*]], 1973801615886922022913
227-
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, i8* [[A:%.*]], i80 [[SHL]]
228-
; CHECK-NEXT: [[C:%.*]] = icmp eq i8* [[GEP]], null
227+
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, ptr [[A:%.*]], i80 [[SHL]]
228+
; CHECK-NEXT: [[C:%.*]] = icmp eq ptr [[GEP]], null
229229
; CHECK-NEXT: br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
230230
; CHECK: then:
231231
; CHECK-NEXT: [[SHL_1:%.*]] = shl nuw i80 [[V]], 1973801615886922022913
232-
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, i8* [[A]], i80 [[SHL_1]]
233-
; CHECK-NEXT: [[C_1:%.*]] = icmp eq i8* [[GEP_1]], null
232+
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, ptr [[A]], i80 [[SHL_1]]
233+
; CHECK-NEXT: [[C_1:%.*]] = icmp eq ptr [[GEP_1]], null
234234
; CHECK-NEXT: ret i1 [[C_1]]
235235
; CHECK: else:
236236
; CHECK-NEXT: ret i1 false
237237
;
238238
entry:
239239
%shl = shl nuw i80 %v, 1973801615886922022913
240-
%gep = getelementptr inbounds i8, i8* %a, i80 %shl
241-
%c = icmp eq i8* %gep, null
240+
%gep = getelementptr inbounds i8, ptr %a, i80 %shl
241+
%c = icmp eq ptr %gep, null
242242
br i1 %c, label %then, label %else
243243

244244
then:
245245
%shl.1 = shl nuw i80 %v, 1973801615886922022913
246-
%gep.1 = getelementptr inbounds i8, i8* %a, i80 %shl.1
247-
%c.1 = icmp eq i8* %gep.1, null
246+
%gep.1 = getelementptr inbounds i8, ptr %a, i80 %shl.1
247+
%c.1 = icmp eq ptr %gep.1, null
248248
ret i1 %c.1
249249

250250
else:
251251
ret i1 false
252252
}
253253

254-
define i1 @gep_add_decomp_i80(i8* %a, i80 %v) {
254+
define i1 @gep_add_decomp_i80(ptr %a, i80 %v) {
255255
; CHECK-LABEL: @gep_add_decomp_i80(
256256
; CHECK-NEXT: entry:
257257
; CHECK-NEXT: [[ADD:%.*]] = add nsw i80 [[V:%.*]], 1973801615886922022913
258-
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, i8* [[A:%.*]], i80 [[ADD]]
259-
; CHECK-NEXT: [[C:%.*]] = icmp eq i8* [[GEP]], null
258+
; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds i8, ptr [[A:%.*]], i80 [[ADD]]
259+
; CHECK-NEXT: [[C:%.*]] = icmp eq ptr [[GEP]], null
260260
; CHECK-NEXT: br i1 [[C]], label [[THEN:%.*]], label [[ELSE:%.*]]
261261
; CHECK: then:
262262
; CHECK-NEXT: [[ADD_1:%.*]] = add nsw i80 [[V]], 1973801615886922022913
263-
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, i8* [[A]], i80 [[ADD_1]]
264-
; CHECK-NEXT: [[C_1:%.*]] = icmp eq i8* [[GEP_1]], null
263+
; CHECK-NEXT: [[GEP_1:%.*]] = getelementptr inbounds i8, ptr [[A]], i80 [[ADD_1]]
264+
; CHECK-NEXT: [[C_1:%.*]] = icmp eq ptr [[GEP_1]], null
265265
; CHECK-NEXT: ret i1 [[C_1]]
266266
; CHECK: else:
267267
; CHECK-NEXT: ret i1 false
268268
;
269269
entry:
270270
%add = add nsw i80 %v, 1973801615886922022913
271-
%gep = getelementptr inbounds i8, i8* %a, i80 %add
272-
%c = icmp eq i8* %gep, null
271+
%gep = getelementptr inbounds i8, ptr %a, i80 %add
272+
%c = icmp eq ptr %gep, null
273273
br i1 %c, label %then, label %else
274274

275275
then:
276276
%add.1 = add nsw i80 %v, 1973801615886922022913
277-
%gep.1 = getelementptr inbounds i8, i8* %a, i80 %add.1
278-
%c.1 = icmp eq i8* %gep.1, null
277+
%gep.1 = getelementptr inbounds i8, ptr %a, i80 %add.1
278+
%c.1 = icmp eq ptr %gep.1, null
279279
ret i1 %c.1
280280

281281
else:

0 commit comments

Comments
 (0)