Changes between Version 42 and Version 43 of ClrxAsmAmdCl2
- Timestamp:
- 06/29/18 20:00:43 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ClrxAsmAmdCl2
v42 v43 41 41 <p>The CLRX assembler allow to use one of two ways to configure kernel setup: 42 42 for human (<code>.config</code>) and for quick recompilation (kernel setup, stub, metadata content).</p> 43 <p>In HSA layout mode the kernel codes in single main code section and no code section 44 for each kernel.</p> 43 45 <h2>Register usage setup</h2> 44 46 <p>The CLRX assembler automatically sets number of used VGPRs and number of used SGPRs. … … 238 240 <p>This pseudo-operation must be inside kernel. Go to ISA metadata content 239 241 (only older driver binaries).</p> 242 <h3>.kcode</h3> 243 <p>Syntax: .kcode KERNEL1,....<br /> 244 Syntax: .kcode +</p> 245 <p>Open code that will be belonging to specified kernels. By default any code between 246 two consecutive kernel labels belongs to the kernel with first label name. 247 This pseudo-operation can change membership of the code to specified kernels. 248 You can nest this <code>.kcode</code> any times. Just next .kcode adds or remove membership code 249 to kernels. The most important reason why this feature has been added is register usage 250 calculation. Any kernel given in this pseudo-operation must be already defined.</p> 251 <p>Sample usage:</p> 252 <p><code>.kcode + # this code belongs to all kernels 253 .kcodeend 254 .kcode kernel1, kernel2 # this code belongs to kernel1, kernel2 255 .kcode -kernel1 # this code belongs only to kernel2 (kernel1 removed) 256 .kcodeend 257 .kcodeend</code></p> 258 <h3>.kcodeend</h3> 259 <p>Close <code>.kcode</code> clause. Refer to <code>.kcode</code>.</p> 240 260 <h3>.kernarg_segment_align</h3> 241 261 <p>Syntax: .kernarg_segment_align ALIGN</p> … … 528 548 .... 529 549 /*bf810000 */ s_endpgm 530 .p2align 550 .p2align 8 531 551 DCT2: 532 552 .skip 256 # setup kernel skip