File: amd_kernel_code_t.s

package info (click to toggle)
llvm-toolchain-19 1%3A19.1.7-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,998,520 kB
  • sloc: cpp: 6,951,680; ansic: 1,486,157; asm: 913,598; python: 232,024; f90: 80,126; objc: 75,281; lisp: 37,276; pascal: 16,990; sh: 10,009; ml: 5,058; perl: 4,724; awk: 3,523; makefile: 3,167; javascript: 2,504; xml: 892; fortran: 664; cs: 573
file content (171 lines) | stat: -rw-r--r-- 6,208 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
; RUN: llvm-mc -triple=amdgcn-mesa-mesa3d -mcpu=gfx900 -filetype=asm < %s | FileCheck --check-prefix=ASM %s
; RUN: llvm-mc -triple=amdgcn-mesa-mesa3d -mcpu=gfx900 -filetype=obj < %s > %t
; RUN: llvm-objdump -s %t | FileCheck --check-prefix=OBJDUMP %s

; OBJDUMP: Contents of section .known_is_dynamic_callstack:
; OBJDUMP: 0030 00000000 00000000 00001000 00000000

; OBJDUMP: Contents of section .known_wavefront_sgpr_count:
; OBJDUMP: 0050 00000000 01000000 00000000 00000000

; OBJDUMP: Contents of section .known_workitem_vgpr_count:
; OBJDUMP: 0050 00000000 00000100 00000000 00000000

; OBJDUMP: Contents of section .known_workitem_private_segment_byte_size:
; OBJDUMP: 0030 00000000 00000000 00000000 01000000

; OBJDUMP: Contents of section .known_granulated_workitem_vgpr_count:
; OBJDUMP: 0030 01000000 00000000 00000000 00000000

; OBJDUMP: Contents of section .known_enable_sgpr_workgroup_id_x:
; OBJDUMP: 0030 00000000 80000000 00000000 00000000

; OBJDUMP: Contents of section .unknown_is_dynamic_callstack:
; OBJDUMP: 0030 00000000 00000000 00001000 00000000

; OBJDUMP: Contents of section .unknown_wavefront_sgpr_count:
; OBJDUMP: 0050 00000000 01000000 00000000 00000000

; OBJDUMP: Contents of section .unknown_workitem_vgpr_count:
; OBJDUMP: 0050 00000000 00000100 00000000 00000000

; OBJDUMP: Contents of section .unknown_workitem_private_segment_byte_size:
; OBJDUMP: 0030 00000000 00000000 00000000 01000000

; OBJDUMP: Contents of section .unknown_granulated_workitem_vgpr_count:
; OBJDUMP: 0030 01000000 00000000 00000000 00000000

; OBJDUMP: Contents of section .unknown_enable_sgpr_workgroup_id_x:
; OBJDUMP: 0030 00000000 80000000 00000000 00000000

.set known, 1

; ASM-LABEL: known_is_dynamic_callstack:
; ASM: is_dynamic_callstack = 1
.section .known_is_dynamic_callstack
known_is_dynamic_callstack:
	.amd_kernel_code_t
		is_dynamic_callstack = known
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: known_wavefront_sgpr_count:
; ASM: wavefront_sgpr_count = 1
.section .known_wavefront_sgpr_count
known_wavefront_sgpr_count:
	.amd_kernel_code_t
		wavefront_sgpr_count = known
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: known_workitem_vgpr_count:
; ASM: workitem_vgpr_count = 1
.section .known_workitem_vgpr_count
known_workitem_vgpr_count:
	.amd_kernel_code_t
		workitem_vgpr_count = known
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: known_workitem_private_segment_byte_size:
; ASM: workitem_private_segment_byte_size = 1
.section .known_workitem_private_segment_byte_size
known_workitem_private_segment_byte_size:
	.amd_kernel_code_t
		workitem_private_segment_byte_size = known
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: known_granulated_workitem_vgpr_count:
; ASM: granulated_workitem_vgpr_count = 1
.section .known_granulated_workitem_vgpr_count
known_granulated_workitem_vgpr_count:
	.amd_kernel_code_t
		granulated_workitem_vgpr_count = known
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: known_enable_sgpr_workgroup_id_x:
; ASM: enable_sgpr_workgroup_id_x = 1
.section .known_enable_sgpr_workgroup_id_x
known_enable_sgpr_workgroup_id_x:
	.amd_kernel_code_t
		enable_sgpr_workgroup_id_x = known
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: unknown_is_dynamic_callstack:
; ASM: is_dynamic_callstack = unknown
.section .unknown_is_dynamic_callstack
unknown_is_dynamic_callstack:
	.amd_kernel_code_t
		is_dynamic_callstack = unknown
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: unknown_wavefront_sgpr_count:
; ASM: wavefront_sgpr_count = unknown
.section .unknown_wavefront_sgpr_count
unknown_wavefront_sgpr_count:
	.amd_kernel_code_t
		wavefront_sgpr_count = unknown
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: unknown_workitem_vgpr_count:
; ASM: workitem_vgpr_count = unknown
.section .unknown_workitem_vgpr_count
unknown_workitem_vgpr_count:
	.amd_kernel_code_t
		workitem_vgpr_count = unknown
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: unknown_workitem_private_segment_byte_size:
; ASM: workitem_private_segment_byte_size = unknown
.section .unknown_workitem_private_segment_byte_size
unknown_workitem_private_segment_byte_size:
	.amd_kernel_code_t
		workitem_private_segment_byte_size = unknown
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: unknown_granulated_workitem_vgpr_count:
; ASM: granulated_workitem_vgpr_count = ((0&4294967232)|(unknown&63))&63
; ASM: granulated_wavefront_sgpr_count = (((0&4294967232)|(unknown&63))>>6)&15
; ASM: priority = (((0&4294967232)|(unknown&63))>>10)&3
; ASM: float_mode = (((0&4294967232)|(unknown&63))>>12)&255
; ASM: priv = (((0&4294967232)|(unknown&63))>>20)&1
; ASM: enable_dx10_clamp = (((0&4294967232)|(unknown&63))>>21)&1
; ASM: debug_mode = (((0&4294967232)|(unknown&63))>>22)&1
; ASM: enable_ieee_mode = (((0&4294967232)|(unknown&63))>>23)&1
; ASM: enable_wgp_mode = (((0&4294967232)|(unknown&63))>>29)&1
; ASM: enable_mem_ordered = (((0&4294967232)|(unknown&63))>>30)&1
; ASM: enable_fwd_progress = (((0&4294967232)|(unknown&63))>>31)&1
.section .unknown_granulated_workitem_vgpr_count
unknown_granulated_workitem_vgpr_count:
	.amd_kernel_code_t
		granulated_workitem_vgpr_count = unknown
	.end_amd_kernel_code_t
	s_endpgm

; ASM-LABEL: unknown_enable_sgpr_workgroup_id_x:
; ASM: enable_sgpr_private_segment_wave_byte_offset = ((0&4294967167)|((unknown&1)<<7))&1
; ASM: user_sgpr_count = (((0&4294967167)|((unknown&1)<<7))>>1)&31
; ASM: enable_trap_handler = (((0&4294967167)|((unknown&1)<<7))>>6)&1
; ASM: enable_sgpr_workgroup_id_x = (((0&4294967167)|((unknown&1)<<7))>>7)&1
; ASM: enable_sgpr_workgroup_id_y = (((0&4294967167)|((unknown&1)<<7))>>8)&1
; ASM: enable_sgpr_workgroup_id_z = (((0&4294967167)|((unknown&1)<<7))>>9)&1
; ASM: enable_sgpr_workgroup_info = (((0&4294967167)|((unknown&1)<<7))>>10)&1
; ASM: enable_vgpr_workitem_id = (((0&4294967167)|((unknown&1)<<7))>>11)&3
; ASM: enable_exception_msb = (((0&4294967167)|((unknown&1)<<7))>>13)&3
; ASM: granulated_lds_size = (((0&4294967167)|((unknown&1)<<7))>>15)&511
; ASM: enable_exception = (((0&4294967167)|((unknown&1)<<7))>>24)&127
.section .unknown_enable_sgpr_workgroup_id_x
unknown_enable_sgpr_workgroup_id_x:
	.amd_kernel_code_t
		enable_sgpr_workgroup_id_x = unknown
	.end_amd_kernel_code_t
	s_endpgm

.set unknown, 1