[PATCH] D30970: [AMDGPU] Do not emit isa info as code object metadata

Tony Tye via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 15 09:51:33 PDT 2017


tony-tye added a comment.

In https://reviews.llvm.org/D30970#701733, @arsenm wrote:

> In https://reviews.llvm.org/D30970#701589, @yaxunl wrote:
>
> > LGTM.
> >
> > Do we have a general guideline what should be in metadata and what should not? Do we assume that end user should be able to manually craft the metadata when they write the ISA assembly by hand?
>
>
> I'm not sure why we need to encode some of these static hardware properties into it. Why doesn't the runtime/debugger know these already?


The plan is not to encode any hardware static properties in the code object, the tools will get these from the ROCM Runtime queries.

The general guideline is that properties required to load the code object into the hardware by the ROCM Runtime and execute it by the CP micro code hardware are in the kernel code descriptor in the .rodata section. Debug information is in the standard DWARF sections. All other properties that are specific to the kernels is in the code object metadata, which includes information needed by high level language runtimes (above ROCM Runtime), tools and any other consumers of the code object. Hardware static information is available from ROCM Runtime queries (which is implemented from header files shared with the compiler so there is a single definition).


https://reviews.llvm.org/D30970





More information about the llvm-commits mailing list