AMDGPU: Emit runtime metadata as a note element in .note section
authorYaxun Liu <Yaxun.Liu@amd.com>
Thu, 10 Nov 2016 21:18:49 +0000 (21:18 +0000)
committerYaxun Liu <Yaxun.Liu@amd.com>
Thu, 10 Nov 2016 21:18:49 +0000 (21:18 +0000)
commitd6fbe65040a91483035d7de8f7accd07449abfd4
treeb829582cb75aed3cf96b6666b71dd09327eae98d
parent949f9b9f641720804832e460b5e04df47ec6b8a5
AMDGPU: Emit runtime metadata as a note element in .note section

Currently runtime metadata is emitted as an ELF section with name .AMDGPU.runtime_metadata.

However there is a standard way to convey vendor specific information about how to run an ELF binary, which is called vendor-specific note element (http://www.netbsd.org/docs/kernel/elf-notes.html).

This patch lets AMDGPU backend emits runtime metadata as a note element in .note section.

Differential Revision: https://reviews.llvm.org/D25781

llvm-svn: 286502
llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
llvm/lib/Target/AMDGPU/AMDGPUPTNote.h [new file with mode: 0644]
llvm/lib/Target/AMDGPU/AMDGPURuntimeMetadata.h
llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
llvm/test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll
llvm/test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll
llvm/test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll
llvm/test/CodeGen/AMDGPU/runtime-metadata.ll