@@ -98,11 +98,11 @@ define void @test3(i32 %x, i32 %y) {
98
98
; CHECK-NEXT: [[XZ:%.*]] = icmp eq i32 [[X:%.*]], 0
99
99
; CHECK-NEXT: [[YZ:%.*]] = icmp eq i32 [[Y:%.*]], 0
100
100
; CHECK-NEXT: [[Z:%.*]] = and i1 [[XZ]], [[YZ]]
101
- ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
102
- ; CHECK: [[Y_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[Y]])
103
- ; CHECK: [[XZ_0:%.*]] = call i1 @llvm.ssa.copy.i1 (i1 [[XZ]])
104
- ; CHECK: [[YZ_0:%.*]] = call i1 @llvm.ssa.copy.i1 (i1 [[YZ]])
105
- ; CHECK: [[Z_0:%.*]] = call i1 @llvm.ssa.copy.i1 (i1 [[Z]])
101
+ ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
102
+ ; CHECK: [[Y_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[Y]])
103
+ ; CHECK: [[XZ_0:%.*]] = call i1 @llvm.ssa.copy.{{.+}} (i1 [[XZ]])
104
+ ; CHECK: [[YZ_0:%.*]] = call i1 @llvm.ssa.copy.{{.+}} (i1 [[YZ]])
105
+ ; CHECK: [[Z_0:%.*]] = call i1 @llvm.ssa.copy.{{.+}} (i1 [[Z]])
106
106
; CHECK-NEXT: br i1 [[Z]], label [[BOTH_ZERO:%.*]], label [[NOPE:%.*]]
107
107
; CHECK: both_zero:
108
108
; CHECK-NEXT: call void @foo(i1 [[XZ_0]])
@@ -139,7 +139,7 @@ define void @test4(i1 %b, i32 %x) {
139
139
; CHECK-NEXT: i32 3, label [[CASE3]]
140
140
; CHECK-NEXT: i32 4, label [[DEFAULT:%.*]]
141
141
; CHECK-NEXT: ] Edge: [label [[SW]],label %case1] }
142
- ; CHECK-NEXT: [[X_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X:%.*]])
142
+ ; CHECK-NEXT: [[X_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X:%.*]])
143
143
; CHECK-NEXT: switch i32 [[X]], label [[DEFAULT]] [
144
144
; CHECK-NEXT: i32 0, label [[CASE0]]
145
145
; CHECK-NEXT: i32 1, label [[CASE1]]
@@ -186,10 +186,10 @@ case3:
186
186
define i1 @test5 (i32 %x , i32 %y ) {
187
187
; CHECK-LABEL: @test5(
188
188
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[X:%.*]], [[Y:%.*]]
189
- ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
190
- ; CHECK: [[X_1:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
191
- ; CHECK: [[Y_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[Y]])
192
- ; CHECK: [[Y_1:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[Y]])
189
+ ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
190
+ ; CHECK: [[X_1:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
191
+ ; CHECK: [[Y_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[Y]])
192
+ ; CHECK: [[Y_1:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[Y]])
193
193
; CHECK-NEXT: br i1 [[CMP]], label [[SAME:%.*]], label [[DIFFERENT:%.*]]
194
194
; CHECK: same:
195
195
; CHECK-NEXT: [[CMP2:%.*]] = icmp ne i32 [[X_0]], [[Y_0]]
@@ -259,10 +259,10 @@ different:
259
259
define i1 @test7 (i32 %x , i32 %y ) {
260
260
; CHECK-LABEL: @test7(
261
261
; CHECK-NEXT: [[CMP:%.*]] = icmp sgt i32 [[X:%.*]], [[Y:%.*]]
262
- ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
263
- ; CHECK: [[X_1:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
264
- ; CHECK: [[Y_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[Y]])
265
- ; CHECK: [[Y_1:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[Y]])
262
+ ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
263
+ ; CHECK: [[X_1:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
264
+ ; CHECK: [[Y_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[Y]])
265
+ ; CHECK: [[Y_1:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[Y]])
266
266
; CHECK-NEXT: br i1 [[CMP]], label [[SAME:%.*]], label [[DIFFERENT:%.*]]
267
267
; CHECK: same:
268
268
; CHECK-NEXT: [[CMP2:%.*]] = icmp sle i32 [[X_0]], [[Y_0]]
@@ -286,10 +286,10 @@ different:
286
286
define i1 @test7_fp (float %x , float %y ) {
287
287
; CHECK-LABEL: @test7_fp(
288
288
; CHECK-NEXT: [[CMP:%.*]] = fcmp ogt float [[X:%.*]], [[Y:%.*]]
289
- ; CHECK: [[X_0:%.*]] = call float @llvm.ssa.copy.f32 (float [[X]])
290
- ; CHECK: [[X_1:%.*]] = call float @llvm.ssa.copy.f32 (float [[X]])
291
- ; CHECK: [[Y_0:%.*]] = call float @llvm.ssa.copy.f32 (float [[Y]])
292
- ; CHECK: [[Y_1:%.*]] = call float @llvm.ssa.copy.f32 (float [[Y]])
289
+ ; CHECK: [[X_0:%.*]] = call float @llvm.ssa.copy.{{.+}} (float [[X]])
290
+ ; CHECK: [[X_1:%.*]] = call float @llvm.ssa.copy.{{.+}} (float [[X]])
291
+ ; CHECK: [[Y_0:%.*]] = call float @llvm.ssa.copy.{{.+}} (float [[Y]])
292
+ ; CHECK: [[Y_1:%.*]] = call float @llvm.ssa.copy.{{.+}} (float [[Y]])
293
293
; CHECK-NEXT: br i1 [[CMP]], label [[SAME:%.*]], label [[DIFFERENT:%.*]]
294
294
; CHECK: same:
295
295
; CHECK-NEXT: [[CMP2:%.*]] = fcmp ule float [[X_0]], [[Y_0]]
@@ -359,8 +359,8 @@ different:
359
359
define i32 @test9 (i32 %i , i32 %j ) {
360
360
; CHECK-LABEL: @test9(
361
361
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[I:%.*]], [[J:%.*]]
362
- ; CHECK: [[I_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[I]])
363
- ; CHECK: [[J_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[J]])
362
+ ; CHECK: [[I_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[I]])
363
+ ; CHECK: [[J_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[J]])
364
364
; CHECK-NEXT: br i1 [[CMP]], label [[COND_TRUE:%.*]], label [[RET:%.*]]
365
365
; CHECK: cond_true:
366
366
; CHECK-NEXT: [[DIFF:%.*]] = sub i32 [[I_0]], [[J_0]]
382
382
define i32 @test10 (i32 %j , i32 %i ) {
383
383
; CHECK-LABEL: @test10(
384
384
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[I:%.*]], [[J:%.*]]
385
- ; CHECK: [[J_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[J]])
386
- ; CHECK: [[I_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[I]])
385
+ ; CHECK: [[J_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[J]])
386
+ ; CHECK: [[I_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[I]])
387
387
; CHECK-NEXT: br i1 [[CMP]], label [[COND_TRUE:%.*]], label [[RET:%.*]]
388
388
; CHECK: cond_true:
389
389
; CHECK-NEXT: [[DIFF:%.*]] = sub i32 [[I_0]], [[J_0]]
@@ -409,14 +409,14 @@ define i32 @test11(i32 %x) {
409
409
; CHECK-NEXT: [[V0:%.*]] = call i32 @yogibar()
410
410
; CHECK-NEXT: [[V1:%.*]] = call i32 @yogibar()
411
411
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[V0]], [[V1]]
412
- ; CHECK: [[V0_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[V0]])
413
- ; CHECK: [[V1_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[V1]])
412
+ ; CHECK: [[V0_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[V0]])
413
+ ; CHECK: [[V1_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[V1]])
414
414
; CHECK-NEXT: br i1 [[CMP]], label [[COND_TRUE:%.*]], label [[NEXT:%.*]]
415
415
; CHECK: cond_true:
416
416
; CHECK-NEXT: ret i32 [[V1_0]]
417
417
; CHECK: next:
418
418
; CHECK-NEXT: [[CMP2:%.*]] = icmp eq i32 [[X:%.*]], [[V0_0]]
419
- ; CHECK: [[V0_0_1:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[V0_0]])
419
+ ; CHECK: [[V0_0_1:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[V0_0]])
420
420
; CHECK-NEXT: br i1 [[CMP2]], label [[COND_TRUE2:%.*]], label [[NEXT2:%.*]]
421
421
; CHECK: cond_true2:
422
422
; CHECK-NEXT: ret i32 [[V0_0_1]]
@@ -445,8 +445,8 @@ next2:
445
445
define i32 @test12 (i32 %x ) {
446
446
; CHECK-LABEL: @test12(
447
447
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[X:%.*]], 0
448
- ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
449
- ; CHECK: [[X_1:%.*]] = call i32 @llvm.ssa.copy.i32 (i32 [[X]])
448
+ ; CHECK: [[X_0:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
449
+ ; CHECK: [[X_1:%.*]] = call i32 @llvm.ssa.copy.{{.+}} (i32 [[X]])
450
450
; CHECK-NEXT: br i1 [[CMP]], label [[COND_TRUE:%.*]], label [[COND_FALSE:%.*]]
451
451
; CHECK: cond_true:
452
452
; CHECK-NEXT: br label [[RET:%.*]]
0 commit comments