[PATCH] D16998: [AMDGPU] llvm-objdump: disassembling .hsatext section of HSA Code Object v1.0

Rafael EspĂ­ndola via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 10 09:43:58 PST 2016


On 10 March 2016 at 12:27, Pykhtin, Valery <Valery.Pykhtin at amd.com> wrote:
>
>> In other words, this is a Elf_Rel file? Why do you need a new extension?
>
> Right Elf_Rel.  Disassembling of this format requires different features that is currently suggested by llvm-objdump and these are really target specific. In particular we would like to print all custom directives and structures so it can be fed directly to assembler input, for example amd_kernel_code_t runtime control structure definitions. Dumping this structure without llvm-objdump->AMDGPU link dependency would require copy-paste of the target code. I'm not sure it's possible to create sufficient number of target callbacks to accomplish this.
>
> Another issue is with the HSA Code Object 1.0 format itself -  zero sized kernel code symbol require to preprocess the whole .hsatext section to find start markers of every item in this section to calculate the kernel code size. This particular issue is fixed with what AMDGPU assembler currently emits but we would like disassembler could accept old files too.

Nothing in this says why you need a new extension.

Adding something to llvm is a compromise. LLVM gets some interesting
technology but now the cost of maintaining it is spread over all
developers. The bigger the "specialness" of the addition, the less
advantageous the compromise. In particular, having a new extension for
a single architecture seems gratuitously different.

Cheers,
Rafael


More information about the llvm-commits mailing list