1 ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1010 -asm-verbose=0 < %s | FileCheck -check-prefixes=GCN,GCN-ASM,GFX10END,GFX10END-ASM %s
2 ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1010 -filetype=obj < %s | llvm-objdump -arch=amdgcn -mcpu=gfx1010 -disassemble - | FileCheck -check-prefixes=GCN,GCN-OBJ,GFX10END,GFX10END-OBJ %s
3 ; RUN: llc -mtriple=amdgcn-amd-amdpal -mcpu=gfx1010 -asm-verbose=0 < %s | FileCheck -check-prefixes=GCN,GCN-ASM,GFX10END,GFX10END-ASM %s
4 ; RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx1010 -asm-verbose=0 < %s | FileCheck -check-prefixes=GCN,GCN-ASM,GFX10NOEND,GFX10NOEND-ASM %s
5 ; RUN: llc -mtriple=amdgcn-- -mcpu=gfx1010 -filetype=obj < %s | llvm-objdump -arch=amdgcn -mcpu=gfx1010 -disassemble - | FileCheck -check-prefixes=GCN,GCN-OBJ,GFX10NOEND,GFX10NOEND-OBJ %s
9 ; GCN-ASM: [[END_LABEL1:\.Lfunc_end.*]]:
10 ; GCN-ASM-NEXT: .size a_kernel1, [[END_LABEL1]]-a_kernel1
12 ; GCN-OBJ-NEXT: s_nop 0
14 define amdgpu_kernel void @a_kernel1() {
20 ; GCN-ASM: [[END_LABEL2:\.Lfunc_end.*]]:
21 ; GCN-ASM-NEXT: .size a_kernel2, [[END_LABEL2]]-a_kernel2
25 define amdgpu_kernel void @a_kernel2() {
29 ; GCN-ASM: .globl a_function
30 ; GCN-ASM-NEXT: .p2align 2
31 ; GCN-ASM-NEXT: .type a_function,@function
33 ; GCN-NEXT: a_function:
35 ; GCN-ASM-NEXT: [[END_LABEL3:\.Lfunc_end.*]]:
36 ; GCN-ASM-NEXT: .size a_function, [[END_LABEL3]]-a_function
37 ; GFX10END-ASM: .p2alignl 6, 3214868480
38 ; GFX10END-ASM-NEXT: .fill 32, 4, 3214868480
39 ; GFX10NOEND-NOT: .fill
41 ; GFX10NOEND-OBJ-NOT: s_code_end
42 ; GFX10END-OBJ-NEXT: s_code_end
44 ; GFX10END-OBJ: s_code_end // 000000000140:
45 ; GFX10END-OBJ-NEXT: s_code_end
46 ; GFX10END-OBJ-NEXT: s_code_end
47 ; GFX10END-OBJ-NEXT: s_code_end
48 ; GFX10END-OBJ-NEXT: s_code_end
49 ; GFX10END-OBJ-NEXT: s_code_end
50 ; GFX10END-OBJ-NEXT: s_code_end
51 ; GFX10END-OBJ-NEXT: s_code_end
53 ; GFX10END-OBJ-NEXT: s_code_end
54 ; GFX10END-OBJ-NEXT: s_code_end
55 ; GFX10END-OBJ-NEXT: s_code_end
56 ; GFX10END-OBJ-NEXT: s_code_end
57 ; GFX10END-OBJ-NEXT: s_code_end
58 ; GFX10END-OBJ-NEXT: s_code_end
59 ; GFX10END-OBJ-NEXT: s_code_end
60 ; GFX10END-OBJ-NEXT: s_code_end
62 ; GFX10END-OBJ-NEXT: s_code_end
63 ; GFX10END-OBJ-NEXT: s_code_end
64 ; GFX10END-OBJ-NEXT: s_code_end
65 ; GFX10END-OBJ-NEXT: s_code_end
66 ; GFX10END-OBJ-NEXT: s_code_end
67 ; GFX10END-OBJ-NEXT: s_code_end
68 ; GFX10END-OBJ-NEXT: s_code_end
69 ; GFX10END-OBJ-NEXT: s_code_end
71 ; GFX10END-OBJ-NEXT: s_code_end
72 ; GFX10END-OBJ-NEXT: s_code_end
73 ; GFX10END-OBJ-NEXT: s_code_end
74 ; GFX10END-OBJ-NEXT: s_code_end
75 ; GFX10END-OBJ-NEXT: s_code_end
76 ; GFX10END-OBJ-NEXT: s_code_end
77 ; GFX10END-OBJ-NEXT: s_code_end
78 ; GFX10END-OBJ-NEXT: s_code_end
80 define void @a_function() {