@@ -72,7 +72,7 @@ define ptx_kernel void @grid_const_int(ptr byval(i32) align 4 %input1, i32 %inpu
72
72
; PTX-NEXT: ret;
73
73
; OPT-LABEL: define ptx_kernel void @grid_const_int(
74
74
; OPT-SAME: ptr byval(i32) align 4 [[INPUT1:%.*]], i32 [[INPUT2:%.*]], ptr [[OUT:%.*]], i32 [[N:%.*]]) #[[ATTR0]] {
75
- ; OPT-NEXT: [[INPUT11:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT1]])
75
+ ; OPT-NEXT: [[INPUT11:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT1]])
76
76
; OPT-NEXT: [[TMP:%.*]] = load i32, ptr addrspace(101) [[INPUT11]], align 4
77
77
; OPT-NEXT: [[ADD:%.*]] = add i32 [[TMP]], [[INPUT2]]
78
78
; OPT-NEXT: store i32 [[ADD]], ptr [[OUT]], align 4
@@ -101,7 +101,7 @@ define ptx_kernel void @grid_const_struct(ptr byval(%struct.s) align 4 %input, p
101
101
; PTX-NEXT: ret;
102
102
; OPT-LABEL: define ptx_kernel void @grid_const_struct(
103
103
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT:%.*]], ptr [[OUT:%.*]]) #[[ATTR0]] {
104
- ; OPT-NEXT: [[INPUT1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
104
+ ; OPT-NEXT: [[INPUT1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
105
105
; OPT-NEXT: [[GEP13:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr addrspace(101) [[INPUT1]], i32 0, i32 0
106
106
; OPT-NEXT: [[GEP22:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr addrspace(101) [[INPUT1]], i32 0, i32 1
107
107
; OPT-NEXT: [[TMP1:%.*]] = load i32, ptr addrspace(101) [[GEP13]], align 4
@@ -144,7 +144,7 @@ define ptx_kernel void @grid_const_escape(ptr byval(%struct.s) align 4 %input) {
144
144
; PTX-NEXT: ret;
145
145
; OPT-LABEL: define ptx_kernel void @grid_const_escape(
146
146
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT:%.*]]) #[[ATTR0]] {
147
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
147
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
148
148
; OPT-NEXT: [[INPUT_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
149
149
; OPT-NEXT: [[CALL:%.*]] = call i32 @escape(ptr [[INPUT_PARAM_GEN]])
150
150
; OPT-NEXT: ret void
@@ -195,9 +195,9 @@ define ptx_kernel void @multiple_grid_const_escape(ptr byval(%struct.s) align 4
195
195
; PTX-NEXT: ret;
196
196
; OPT-LABEL: define ptx_kernel void @multiple_grid_const_escape(
197
197
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT:%.*]], i32 [[A:%.*]], ptr byval(i32) align 4 [[B:%.*]]) #[[ATTR0]] {
198
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[B]])
198
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[B]])
199
199
; OPT-NEXT: [[B_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
200
- ; OPT-NEXT: [[TMP2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
200
+ ; OPT-NEXT: [[TMP2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
201
201
; OPT-NEXT: [[INPUT_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP2]] to ptr
202
202
; OPT-NEXT: [[A_ADDR:%.*]] = alloca i32, align 4
203
203
; OPT-NEXT: store i32 [[A]], ptr [[A_ADDR]], align 4
@@ -223,7 +223,7 @@ define ptx_kernel void @grid_const_memory_escape(ptr byval(%struct.s) align 4 %i
223
223
; PTX-NEXT: ret;
224
224
; OPT-LABEL: define ptx_kernel void @grid_const_memory_escape(
225
225
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT:%.*]], ptr [[ADDR:%.*]]) #[[ATTR0]] {
226
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
226
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
227
227
; OPT-NEXT: [[INPUT1:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
228
228
; OPT-NEXT: store ptr [[INPUT1]], ptr [[ADDR]], align 8
229
229
; OPT-NEXT: ret void
@@ -250,7 +250,7 @@ define ptx_kernel void @grid_const_inlineasm_escape(ptr byval(%struct.s) align 4
250
250
; PTX-NOT .local
251
251
; OPT-LABEL: define ptx_kernel void @grid_const_inlineasm_escape(
252
252
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT:%.*]], ptr [[RESULT:%.*]]) #[[ATTR0]] {
253
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
253
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
254
254
; OPT-NEXT: [[INPUT1:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
255
255
; OPT-NEXT: [[TMPPTR1:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[INPUT1]], i32 0, i32 0
256
256
; OPT-NEXT: [[TMPPTR2:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[INPUT1]], i32 0, i32 1
@@ -295,7 +295,7 @@ define ptx_kernel void @grid_const_partial_escape(ptr byval(i32) %input, ptr %ou
295
295
; PTX-NEXT: ret;
296
296
; OPT-LABEL: define ptx_kernel void @grid_const_partial_escape(
297
297
; OPT-SAME: ptr byval(i32) [[INPUT:%.*]], ptr [[OUTPUT:%.*]]) #[[ATTR0]] {
298
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
298
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
299
299
; OPT-NEXT: [[INPUT1_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
300
300
; OPT-NEXT: [[VAL1:%.*]] = load i32, ptr [[INPUT1_GEN]], align 4
301
301
; OPT-NEXT: [[TWICE:%.*]] = add i32 [[VAL1]], [[VAL1]]
@@ -342,7 +342,7 @@ define ptx_kernel i32 @grid_const_partial_escapemem(ptr byval(%struct.s) %input,
342
342
; PTX-NEXT: ret;
343
343
; OPT-LABEL: define ptx_kernel i32 @grid_const_partial_escapemem(
344
344
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) [[INPUT:%.*]], ptr [[OUTPUT:%.*]]) #[[ATTR0]] {
345
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
345
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
346
346
; OPT-NEXT: [[INPUT1:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
347
347
; OPT-NEXT: [[PTR1:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[INPUT1]], i32 0, i32 0
348
348
; OPT-NEXT: [[VAL1:%.*]] = load i32, ptr [[PTR1]], align 4
@@ -384,7 +384,7 @@ define ptx_kernel void @grid_const_phi(ptr byval(%struct.s) align 4 %input1, ptr
384
384
; PTX-NEXT: ret;
385
385
; OPT-LABEL: define ptx_kernel void @grid_const_phi(
386
386
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT1:%.*]], ptr [[INOUT:%.*]]) #[[ATTR0]] {
387
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT1]])
387
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT1]])
388
388
; OPT-NEXT: [[INPUT1_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
389
389
; OPT-NEXT: [[VAL:%.*]] = load i32, ptr [[INOUT]], align 4
390
390
; OPT-NEXT: [[LESS:%.*]] = icmp slt i32 [[VAL]], 0
@@ -441,9 +441,9 @@ define ptx_kernel void @grid_const_phi_ngc(ptr byval(%struct.s) align 4 %input1,
441
441
; PTX-NEXT: ret;
442
442
; OPT-LABEL: define ptx_kernel void @grid_const_phi_ngc(
443
443
; OPT-SAME: ptr byval([[STRUCT_S:%.*]]) align 4 [[INPUT1:%.*]], ptr byval([[STRUCT_S]]) [[INPUT2:%.*]], ptr [[INOUT:%.*]]) #[[ATTR0]] {
444
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT2]])
444
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT2]])
445
445
; OPT-NEXT: [[INPUT2_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
446
- ; OPT-NEXT: [[TMP2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT1]])
446
+ ; OPT-NEXT: [[TMP2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT1]])
447
447
; OPT-NEXT: [[INPUT1_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP2]] to ptr
448
448
; OPT-NEXT: [[VAL:%.*]] = load i32, ptr [[INOUT]], align 4
449
449
; OPT-NEXT: [[LESS:%.*]] = icmp slt i32 [[VAL]], 0
@@ -496,9 +496,9 @@ define ptx_kernel void @grid_const_select(ptr byval(i32) align 4 %input1, ptr by
496
496
; PTX-NEXT: ret;
497
497
; OPT-LABEL: define ptx_kernel void @grid_const_select(
498
498
; OPT-SAME: ptr byval(i32) align 4 [[INPUT1:%.*]], ptr byval(i32) [[INPUT2:%.*]], ptr [[INOUT:%.*]]) #[[ATTR0]] {
499
- ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT2]])
499
+ ; OPT-NEXT: [[TMP1:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT2]])
500
500
; OPT-NEXT: [[INPUT2_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP1]] to ptr
501
- ; OPT-NEXT: [[TMP2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT1]])
501
+ ; OPT-NEXT: [[TMP2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT1]])
502
502
; OPT-NEXT: [[INPUT1_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[TMP2]] to ptr
503
503
; OPT-NEXT: [[VAL:%.*]] = load i32, ptr [[INOUT]], align 4
504
504
; OPT-NEXT: [[LESS:%.*]] = icmp slt i32 [[VAL]], 0
@@ -530,7 +530,7 @@ define ptx_kernel i32 @grid_const_ptrtoint(ptr byval(i32) %input) {
530
530
; PTX-NEXT: ret;
531
531
; OPT-LABEL: define ptx_kernel i32 @grid_const_ptrtoint(
532
532
; OPT-SAME: ptr byval(i32) align 4 [[INPUT:%.*]]) #[[ATTR0]] {
533
- ; OPT-NEXT: [[INPUT2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
533
+ ; OPT-NEXT: [[INPUT2:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
534
534
; OPT-NEXT: [[INPUT3:%.*]] = load i32, ptr addrspace(101) [[INPUT2]], align 4
535
535
; OPT-NEXT: [[INPUT1:%.*]] = addrspacecast ptr addrspace(101) [[INPUT2]] to ptr
536
536
; OPT-NEXT: [[PTRVAL:%.*]] = ptrtoint ptr [[INPUT1]] to i32
@@ -547,7 +547,7 @@ declare void @device_func(ptr byval(i32) align 4)
547
547
define ptx_kernel void @test_forward_byval_arg (ptr byval (i32 ) align 4 %input ) {
548
548
; OPT-LABEL: define ptx_kernel void @test_forward_byval_arg(
549
549
; OPT-SAME: ptr byval(i32) align 4 [[INPUT:%.*]]) #[[ATTR0]] {
550
- ; OPT-NEXT: [[INPUT_PARAM:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.noop.addrspacecast .p101.p0(ptr [[INPUT]])
550
+ ; OPT-NEXT: [[INPUT_PARAM:%.*]] = call ptr addrspace(101) @llvm.nvvm.internal.addrspace.wrap .p101.p0(ptr [[INPUT]])
551
551
; OPT-NEXT: [[INPUT_PARAM_GEN:%.*]] = addrspacecast ptr addrspace(101) [[INPUT_PARAM]] to ptr
552
552
; OPT-NEXT: call void @device_func(ptr byval(i32) align 4 [[INPUT_PARAM_GEN]])
553
553
; OPT-NEXT: ret void
0 commit comments