blob: 286f57399b71b77886a55f368535e13bc2e65f76 [file] [log] [blame]
Konstantin Zhuravlyovb3c605d2017-10-14 18:21:42 +00001; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx700 -filetype=obj -o - < %s | llvm-readobj -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX700 --check-prefix=NOTES %s
2; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx800 -filetype=obj -o - < %s | llvm-readobj -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX800 --check-prefix=NOTES %s
3; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -filetype=obj -o - < %s | llvm-readobj -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX900 --check-prefix=NOTES %s
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +00004
5%opencl.image1d_t = type opaque
6%opencl.image1d_array_t = type opaque
7%opencl.image1d_buffer_t = type opaque
8%opencl.image2d_t = type opaque
9%opencl.image2d_array_t = type opaque
10%opencl.image2d_array_depth_t = type opaque
11%opencl.image2d_array_msaa_t = type opaque
12%opencl.image2d_array_msaa_depth_t = type opaque
13%opencl.image2d_depth_t = type opaque
14%opencl.image2d_msaa_t = type opaque
15%opencl.image2d_msaa_depth_t = type opaque
16%opencl.image3d_t = type opaque
17
18; CHECK: ---
19; CHECK: Version: [ 1, 0 ]
20
21; CHECK: Kernels:
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000022; CHECK: - Name: test
23; CHECK: SymbolName: 'test@kd'
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000024; CHECK: Args:
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000025; CHECK: - TypeName: image1d_t
26; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000027; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000028; CHECK: - TypeName: image1d_array_t
29; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000030; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000031; CHECK: - TypeName: image1d_buffer_t
32; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000033; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000034; CHECK: - TypeName: image2d_t
35; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000036; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000037; CHECK: - TypeName: image2d_array_t
38; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000039; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000040; CHECK: - TypeName: image2d_array_depth_t
41; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000042; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000043; CHECK: - TypeName: image2d_array_msaa_t
44; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000045; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000046; CHECK: - TypeName: image2d_array_msaa_depth_t
47; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000048; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000049; CHECK: - TypeName: image2d_depth_t
50; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000051; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000052; CHECK: - TypeName: image2d_msaa_t
53; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000054; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000055; CHECK: - TypeName: image2d_msaa_depth_t
56; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000057; CHECK: ValueKind: Image
Konstantin Zhuravlyova01d8b02017-10-14 19:03:51 +000058; CHECK: - TypeName: image3d_t
59; CHECK: Size: 8
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000060; CHECK: ValueKind: Image
Konstantin Zhuravlyov54ba4312017-04-25 20:38:26 +000061define amdgpu_kernel void @test(%opencl.image1d_t addrspace(1)* %a,
62 %opencl.image1d_array_t addrspace(1)* %b,
63 %opencl.image1d_buffer_t addrspace(1)* %c,
64 %opencl.image2d_t addrspace(1)* %d,
65 %opencl.image2d_array_t addrspace(1)* %e,
66 %opencl.image2d_array_depth_t addrspace(1)* %f,
67 %opencl.image2d_array_msaa_t addrspace(1)* %g,
68 %opencl.image2d_array_msaa_depth_t addrspace(1)* %h,
69 %opencl.image2d_depth_t addrspace(1)* %i,
70 %opencl.image2d_msaa_t addrspace(1)* %j,
71 %opencl.image2d_msaa_depth_t addrspace(1)* %k,
72 %opencl.image3d_t addrspace(1)* %l)
73 !kernel_arg_type !1 !kernel_arg_base_type !1 {
74 ret void
75}
76
77!1 = !{!"image1d_t", !"image1d_array_t", !"image1d_buffer_t",
78 !"image2d_t", !"image2d_array_t", !"image2d_array_depth_t",
79 !"image2d_array_msaa_t", !"image2d_array_msaa_depth_t",
80 !"image2d_depth_t", !"image2d_msaa_t", !"image2d_msaa_depth_t",
81 !"image3d_t"}