5
5
; llvm.amdgcn.image.sample a16 is disabled on pre-gfx9
6
6
; --------------------------------------------------------------------
7
7
8
- declare <4 x float > @llvm.amdgcn.image.sample.1d.v4f32.f32 (i32 , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
9
- declare <4 x float > @llvm.amdgcn.image.sample.2d.v4f32.f32 (i32 , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
10
- declare <4 x float > @llvm.amdgcn.image.sample.3d.v4f32.f32 (i32 , float , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
11
- declare <4 x float > @llvm.amdgcn.image.sample.cube.v4f32.f32 (i32 , float , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
12
- declare <4 x float > @llvm.amdgcn.image.sample.1darray.v4f32.f32 (i32 , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
13
- declare <4 x float > @llvm.amdgcn.image.sample.2darray.v4f32.f32 (i32 , float , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
8
+ declare <4 x float > @llvm.amdgcn.image.sample.1d.v4f32.f32.v8i32.v4i32 (i32 , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
9
+ declare <4 x float > @llvm.amdgcn.image.sample.2d.v4f32.f32.v8i32.v4i32 (i32 , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
10
+ declare <4 x float > @llvm.amdgcn.image.sample.3d.v4f32.f32.v8i32.v4i32 (i32 , float , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
11
+ declare <4 x float > @llvm.amdgcn.image.sample.cube.v4f32.f32.v8i32.v4i32 (i32 , float , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
12
+ declare <4 x float > @llvm.amdgcn.image.sample.1darray.v4f32.f32.v8i32.v4i32 (i32 , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
13
+ declare <4 x float > @llvm.amdgcn.image.sample.2darray.v4f32.f32.v8i32.v4i32 (i32 , float , float , float , <8 x i32 >, <4 x i32 >, i1 , i32 , i32 ) #1
14
14
15
15
define amdgpu_kernel void @image_sample_a16_1d (ptr addrspace (1 ) %out , <8 x i32 > inreg %rsrc , <4 x i32 > inreg %samp , half %s ) {
16
16
; CHECK-LABEL: @image_sample_a16_1d(
@@ -20,7 +20,7 @@ define amdgpu_kernel void @image_sample_a16_1d(ptr addrspace(1) %out, <8 x i32>
20
20
; CHECK-NEXT: ret void
21
21
;
22
22
%s32 = fpext half %s to float
23
- %res = call <4 x float > @llvm.amdgcn.image.sample.1d.v4f32.f32 (i32 15 , float %s32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
23
+ %res = call <4 x float > @llvm.amdgcn.image.sample.1d.v4f32.f32.v8i32 (i32 15 , float %s32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
24
24
store <4 x float > %res , ptr addrspace (1 ) %out
25
25
ret void
26
26
}
@@ -35,7 +35,7 @@ define amdgpu_kernel void @image_sample_a16_2d(ptr addrspace(1) %out, <8 x i32>
35
35
;
36
36
%s32 = fpext half %s to float
37
37
%t32 = fpext half %t to float
38
- %res = call <4 x float > @llvm.amdgcn.image.sample.2d.v4f32.f32 (i32 15 , float %s32 , float %t32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
38
+ %res = call <4 x float > @llvm.amdgcn.image.sample.2d.v4f32.f32.v8i32 (i32 15 , float %s32 , float %t32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
39
39
store <4 x float > %res , ptr addrspace (1 ) %out
40
40
ret void
41
41
}
@@ -52,7 +52,7 @@ define amdgpu_kernel void @image_sample_a16_3d(ptr addrspace(1) %out, <8 x i32>
52
52
%s32 = fpext half %s to float
53
53
%t32 = fpext half %t to float
54
54
%r32 = fpext half %r to float
55
- %res = call <4 x float > @llvm.amdgcn.image.sample.3d.v4f32.f32 (i32 15 , float %s32 , float %t32 , float %r32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
55
+ %res = call <4 x float > @llvm.amdgcn.image.sample.3d.v4f32.f32.v8i32 (i32 15 , float %s32 , float %t32 , float %r32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
56
56
store <4 x float > %res , ptr addrspace (1 ) %out
57
57
ret void
58
58
}
@@ -70,7 +70,7 @@ define amdgpu_kernel void @image_sample_a16_cube(ptr addrspace(1) %out, <8 x i32
70
70
%s32 = fpext half %s to float
71
71
%t32 = fpext half %t to float
72
72
%face32 = fpext half %face to float
73
- %res = call <4 x float > @llvm.amdgcn.image.sample.cube.v4f32.f32 (i32 15 , float %s32 , float %t32 , float %face32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
73
+ %res = call <4 x float > @llvm.amdgcn.image.sample.cube.v4f32.f32.v8i32 (i32 15 , float %s32 , float %t32 , float %face32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
74
74
store <4 x float > %res , ptr addrspace (1 ) %out
75
75
ret void
76
76
}
@@ -85,7 +85,7 @@ define amdgpu_kernel void @image_sample_a16_1darray(ptr addrspace(1) %out, <8 x
85
85
;
86
86
%s32 = fpext half %s to float
87
87
%slice32 = fpext half %slice to float
88
- %res = call <4 x float > @llvm.amdgcn.image.sample.1darray.v4f32.f32 (i32 15 , float %s32 , float %slice32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
88
+ %res = call <4 x float > @llvm.amdgcn.image.sample.1darray.v4f32.f32.v8i32 (i32 15 , float %s32 , float %slice32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
89
89
store <4 x float > %res , ptr addrspace (1 ) %out
90
90
ret void
91
91
}
@@ -102,7 +102,7 @@ define amdgpu_kernel void @image_sample_a16_2darray(ptr addrspace(1) %out, <8 x
102
102
%s32 = fpext half %s to float
103
103
%t32 = fpext half %t to float
104
104
%slice32 = fpext half %slice to float
105
- %res = call <4 x float > @llvm.amdgcn.image.sample.2darray.v4f32.f32 (i32 15 , float %s32 , float %t32 , float %slice32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
105
+ %res = call <4 x float > @llvm.amdgcn.image.sample.2darray.v4f32.f32.v8i32 (i32 15 , float %s32 , float %t32 , float %slice32 , <8 x i32 > %rsrc , <4 x i32 > %samp , i1 0 , i32 0 , i32 0 )
106
106
store <4 x float > %res , ptr addrspace (1 ) %out
107
107
ret void
108
108
}
0 commit comments