[llvm] r283593 - AMDGPU/SI: Add support for 8-byte relocations

Tom Stellard via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 7 13:36:59 PDT 2016


Author: tstellar
Date: Fri Oct  7 15:36:58 2016
New Revision: 283593

URL: http://llvm.org/viewvc/llvm-project?rev=283593&view=rev
Log:
AMDGPU/SI: Add support for 8-byte relocations

Reviewers: arsenm, kzhuravl

Subscribers: wdng, nhaehnle, yaxunl, llvm-commits, tony-tye

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

Modified:
    llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
    llvm/trunk/test/MC/AMDGPU/reloc.s

Modified: llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp?rev=283593&r1=283592&r2=283593&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp (original)
+++ llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp Fri Oct  7 15:36:58 2016
@@ -62,6 +62,8 @@ unsigned AMDGPUELFObjectWriter::getReloc
   case FK_Data_4:
   case FK_SecRel_4:
     return ELF::R_AMDGPU_ABS32;
+  case FK_Data_8:
+    return ELF::R_AMDGPU_ABS64;
   }
 
   llvm_unreachable("unhandled relocation type");

Modified: llvm/trunk/test/MC/AMDGPU/reloc.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/AMDGPU/reloc.s?rev=283593&r1=283592&r2=283593&view=diff
==============================================================================
--- llvm/trunk/test/MC/AMDGPU/reloc.s (original)
+++ llvm/trunk/test/MC/AMDGPU/reloc.s Fri Oct  7 15:36:58 2016
@@ -1,10 +1,15 @@
 // RUN: llvm-mc -filetype=obj -triple amdgcn-- -mcpu=kaveri -show-encoding %s | llvm-readobj -relocations | FileCheck %s
 
 // CHECK: Relocations [
+// CHECK: .rel.text {
 // CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 0x0
 // CHECK: R_AMDGPU_ABS32_HI SCRATCH_RSRC_DWORD1 0x0
 // CHECK: R_AMDGPU_GOTPCREL global_var 0x0
 // CHECK: R_AMDGPU_ABS32 var 0x0
+// CHECK: }
+// CHECK: .rel.data {
+// CHECK: R_AMDGPU_ABS64 temp 0x0
+// CHECK: }
 // CHECK: ]
 
 kernel:
@@ -18,3 +23,13 @@ kernel:
 
 .section nonalloc, "w", @progbits
   .long var, common_var
+
+
+// 8 byte relocations
+	.type	ptr, at object
+	.data
+	.globl	ptr
+	.p2align	3
+ptr:
+	.quad	temp
+	.size	ptr, 8




More information about the llvm-commits mailing list