]> granicus.if.org Git - llvm/commit
AMDGPU/SI: Refactor fixup handling for constant addrspace variables
authorTom Stellard <thomas.stellard@amd.com>
Tue, 14 Jun 2016 20:29:59 +0000 (20:29 +0000)
committerTom Stellard <thomas.stellard@amd.com>
Tue, 14 Jun 2016 20:29:59 +0000 (20:29 +0000)
commita09ba98fef414b1034a4e075caef835e6dc1a956
tree009e240d6c0d9a5f381fc3cc10a93c662e89845a
parent3564e5c13d965b5963e1dd4c8608dbe9ebef42f2
AMDGPU/SI: Refactor fixup handling for constant addrspace variables

Summary:
We now use a standard fixup type applying the pc-relative address of
constant address space variables, and we have the GlobalAddress lowering
code add the required 4 byte offset to the global address rather than
doing it as part of the fixup.

This refactoring will make it easier to use the same code for global
address space variables and also simplifies the code.

Re-commit this after fixing a bug where we were trying to use a
reference to a Triple object that had already been destroyed.

Reviewers: arsenm, kzhuravl

Subscribers: arsenm, kzhuravl, llvm-commits

Differential Revision: http://reviews.llvm.org/D21154

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272705 91177308-0d34-0410-b5e6-96231b3b80d8
13 files changed:
lib/Target/AMDGPU/AMDGPUISelLowering.cpp
lib/Target/AMDGPU/AMDGPUISelLowering.h
lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUFixupKinds.h
lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp
lib/Target/AMDGPU/SIISelLowering.cpp
lib/Target/AMDGPU/SIISelLowering.h
lib/Target/AMDGPU/SIInstrInfo.cpp
lib/Target/AMDGPU/SIInstrInfo.td
lib/Target/AMDGPU/SIInstructions.td