[PATCH] D55369: AMDGPU: Use an ABS32_LO relocation for SCRATCH_RSRC_DWORD1
Phabricator via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Dec 19 03:59:10 PST 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rL349620: AMDGPU: Use an ABS32_LO relocation for SCRATCH_RSRC_DWORD1 (authored by nha, committed by ).
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55369/new/
https://reviews.llvm.org/D55369
Files:
llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
llvm/trunk/test/CodeGen/AMDGPU/scratch-simple.ll
Index: llvm/trunk/test/CodeGen/AMDGPU/scratch-simple.ll
===================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/scratch-simple.ll
+++ llvm/trunk/test/CodeGen/AMDGPU/scratch-simple.ll
@@ -1,6 +1,10 @@
; RUN: llc -march=amdgcn -mtriple=amdgcn-- -mcpu=verde -verify-machineinstrs < %s | FileCheck --check-prefix=GCN --check-prefix=SI %s
; RUN: llc -march=amdgcn -mtriple=amdgcn-- -mcpu=gfx803 -mattr=-flat-for-global -verify-machineinstrs < %s | FileCheck --check-prefix=GCN --check-prefix=SI %s
; RUN: llc -march=amdgcn -mtriple=amdgcn-- -mcpu=gfx900 -mattr=-flat-for-global -verify-machineinstrs < %s | FileCheck --check-prefix=GCN --check-prefix=GFX9 %s
+; RUN: llc -march=amdgcn -mtriple=amdgcn-- -mcpu=gfx900 -filetype=obj < %s | llvm-readobj -relocations | FileCheck --check-prefix=RELS %s
+
+; RELS: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 0x0
+; RELS: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD1 0x0
; This used to fail due to a v_add_i32 instruction with an illegal immediate
; operand that was created during Local Stack Slot Allocation. Test case derived
Index: llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
===================================================================
--- llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
+++ llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
@@ -46,11 +46,9 @@
if (const auto *SymA = Target.getSymA()) {
// SCRATCH_RSRC_DWORD[01] is a special global variable that represents
// the scratch buffer.
- if (SymA->getSymbol().getName() == "SCRATCH_RSRC_DWORD0")
+ if (SymA->getSymbol().getName() == "SCRATCH_RSRC_DWORD0" ||
+ SymA->getSymbol().getName() == "SCRATCH_RSRC_DWORD1")
return ELF::R_AMDGPU_ABS32_LO;
-
- if (SymA->getSymbol().getName() == "SCRATCH_RSRC_DWORD1")
- return ELF::R_AMDGPU_ABS32_HI;
}
switch (Target.getAccessVariant()) {
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55369.178862.patch
Type: text/x-patch
Size: 1944 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181219/7b17bf04/attachment.bin>
More information about the llvm-commits
mailing list