blob: ae21f00410959863d70aa46f46519536f06ba618 [file] [log] [blame]
Scott Linderf5b36e52018-12-12 19:39:27 +00001; RUN: llc -mattr=+code-object-v3 -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 -mattr=+code-object-v3 -mtriple=amdgcn-amd-amdhsa -mcpu=gfx803 -filetype=obj -o - < %s | llvm-readobj -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX803 --check-prefix=NOTES %s
3; RUN: llc -mattr=+code-object-v3 -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
4
Tim Renoufed0b9af2019-03-13 18:55:50 +00005; CHECK: ---
6; CHECK: amdhsa.kernels:
7; CHECK: - .args:
8; CHECK-NEXT: - .address_space: global
9; CHECK-NEXT: .name: r
10; CHECK-NEXT: .offset: 0
11; CHECK-NEXT: .size: 8
12; CHECK-NEXT: .value_kind: global_buffer
13; CHECK-NEXT: .value_type: f16
14; CHECK-NEXT: - .address_space: global
15; CHECK-NEXT: .name: a
16; CHECK-NEXT: .offset: 8
17; CHECK-NEXT: .size: 8
18; CHECK-NEXT: .value_kind: global_buffer
19; CHECK-NEXT: .value_type: f16
20; CHECK-NEXT: - .address_space: global
21; CHECK-NEXT: .name: b
22; CHECK-NEXT: .offset: 16
23; CHECK-NEXT: .size: 8
24; CHECK-NEXT: .value_kind: global_buffer
25; CHECK-NEXT: .value_type: f16
26; CHECK-NEXT: - .offset: 24
27; CHECK-NEXT: .size: 8
28; CHECK-NEXT: .value_kind: hidden_global_offset_x
29; CHECK-NEXT: .value_type: i64
30; CHECK-NEXT: - .offset: 32
31; CHECK-NEXT: .size: 8
32; CHECK-NEXT: .value_kind: hidden_global_offset_y
33; CHECK-NEXT: .value_type: i64
34; CHECK-NEXT: - .offset: 40
35; CHECK-NEXT: .size: 8
36; CHECK-NEXT: .value_kind: hidden_global_offset_z
37; CHECK-NEXT: .value_type: i64
38; CHECK-NEXT: - .address_space: global
39; CHECK-NEXT: .offset: 48
40; CHECK-NEXT: .size: 8
41; CHECK-NEXT: .value_kind: hidden_none
42; CHECK-NEXT: .value_type: i8
43; CHECK-NEXT: - .address_space: global
44; CHECK-NEXT: .offset: 56
45; CHECK-NEXT: .size: 8
46; CHECK-NEXT: .value_kind: hidden_none
47; CHECK-NEXT: .value_type: i8
48; CHECK-NEXT: - .address_space: global
49; CHECK-NEXT: .offset: 64
50; CHECK-NEXT: .size: 8
51; CHECK-NEXT: .value_kind: hidden_none
52; CHECK-NEXT: .value_type: i8
53; CHECK: .language: OpenCL C
54; CHECK-NEXT: .language_version:
55; CHECK-NEXT: - 2
56; CHECK-NEXT: - 0
57; CHECK: .name: test
58; CHECK: .symbol: test.kd
Scott Linderf5b36e52018-12-12 19:39:27 +000059define amdgpu_kernel void @test(
60 half addrspace(1)* %r,
61 half addrspace(1)* %a,
62 half addrspace(1)* %b) {
63entry:
64 %a.val = load half, half addrspace(1)* %a
65 %b.val = load half, half addrspace(1)* %b
66 %r.val = fadd half %a.val, %b.val
67 store half %r.val, half addrspace(1)* %r
68 ret void
69}
70
71; CHECK: amdhsa.version:
72; CHECK-NEXT: - 1
73; CHECK-NEXT: - 0
74
75!opencl.ocl.version = !{!0}
76!0 = !{i32 2, i32 0}