OSDN Git Service

[AMDGPU] Restructure code object metadata creation
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Wed, 22 Mar 2017 22:32:22 +0000 (22:32 +0000)
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Wed, 22 Mar 2017 22:32:22 +0000 (22:32 +0000)
commit1c4f1852fb02bb30fffeafb1ac80091a03b1692e
tree4af3d52a98592c2e19732ba6e497c64334190cac
parentbc72a21666a9efc78e71b0296313f6e1449649fa
[AMDGPU] Restructure code object metadata creation
  - Rename runtime metadata -> code object metadata
  - Make metadata not flow
  - Switch enums to use ScalarEnumerationTraits
  - Cleanup and move AMDGPUCodeObjectMetadata.h to AMDGPU/MCTargetDesc
  - Introduce in-memory representation for attributes
  - Code object metadata streamer
  - Create metadata for isa and printf during EmitStartOfAsmFile
  - Create metadata for kernel during EmitFunctionBodyStart
  - Finalize and emit metadata to .note during EmitEndOfAsmFile
  - Other minor improvements/bug fixes

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@298552 91177308-0d34-0410-b5e6-96231b3b80d8
32 files changed:
lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
lib/Target/AMDGPU/AMDGPUAsmPrinter.h
lib/Target/AMDGPU/AMDGPUPTNote.h
lib/Target/AMDGPU/AMDGPURuntimeMetadata.h [deleted file]
lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUCodeObjectMetadata.h [new file with mode: 0644]
lib/Target/AMDGPU/MCTargetDesc/AMDGPUCodeObjectMetadataStreamer.cpp [new file with mode: 0644]
lib/Target/AMDGPU/MCTargetDesc/AMDGPUCodeObjectMetadataStreamer.h [new file with mode: 0644]
lib/Target/AMDGPU/MCTargetDesc/AMDGPURuntimeMD.cpp [deleted file]
lib/Target/AMDGPU/MCTargetDesc/AMDGPURuntimeMD.h [deleted file]
lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
test/CodeGen/AMDGPU/code-object-metadata-from-llvm-ir-full.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-1.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-2.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-3.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll [deleted file]
test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll [deleted file]
test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll [deleted file]
test/CodeGen/AMDGPU/runtime-metadata.ll [deleted file]
test/MC/AMDGPU/code-object-metadata-isa.s [new file with mode: 0644]
test/MC/AMDGPU/code-object-metadata-kernel-args.s [new file with mode: 0644]
test/MC/AMDGPU/code-object-metadata-kernel-attrs.s [new file with mode: 0644]
test/MC/AMDGPU/code-object-metadata-unknown-key.s [new file with mode: 0644]
test/MC/AMDGPU/hsa.s
test/MC/AMDGPU/runtime-metadata-1.s [deleted file]
test/MC/AMDGPU/runtime-metadata-2.s [deleted file]
test/MC/AMDGPU/runtime-metadata-invalid-1.s [deleted file]
tools/llvm-readobj/ELFDumper.cpp
tools/llvm-readobj/ObjDumper.h
tools/llvm-readobj/llvm-readobj.cpp