blob: 0a349da49a3c9d4119843b54e4cd648c60308618 [file] [log] [blame]
// 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_LO SCRATCH_RSRC_DWORD1 0x0
// CHECK: R_AMDGPU_GOTPCREL global_var0 0x0
// CHECK: R_AMDGPU_GOTPCREL32_LO global_var1 0x0
// CHECK: R_AMDGPU_GOTPCREL32_HI global_var2 0x0
// CHECK: R_AMDGPU_REL32_LO global_var3 0x0
// CHECK: R_AMDGPU_REL32_HI global_var4 0x0
// CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 0x0
// CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD1 0x0
// CHECK: R_AMDGPU_GOTPCREL global_var0 0x0
// CHECK: R_AMDGPU_GOTPCREL32_LO global_var1 0x0
// CHECK: R_AMDGPU_GOTPCREL32_HI global_var2 0x0
// CHECK: R_AMDGPU_REL32_LO global_var3 0x0
// CHECK: R_AMDGPU_REL32_HI global_var4 0x0
// CHECK: R_AMDGPU_ABS32 var 0x0
// CHECK: }
// CHECK: .rel.data {
// CHECK: R_AMDGPU_ABS64 temp 0x0
// CHECK: R_AMDGPU_REL64 temp 0x0
// CHECK: }
// CHECK: ]
kernel:
s_mov_b32 s0, SCRATCH_RSRC_DWORD0
s_mov_b32 s1, SCRATCH_RSRC_DWORD1
s_mov_b32 s2, global_var0@GOTPCREL
s_mov_b32 s3, global_var1@gotpcrel32@lo
s_mov_b32 s4, global_var2@gotpcrel32@hi
s_mov_b32 s5, global_var3@rel32@lo
s_mov_b32 s6, global_var4@rel32@hi
v_mov_b32 v0, SCRATCH_RSRC_DWORD0
v_mov_b32 v1, SCRATCH_RSRC_DWORD1
v_mov_b32 v2, global_var0@GOTPCREL
v_mov_b32 v3, global_var1@gotpcrel32@lo
v_mov_b32 v4, global_var2@gotpcrel32@hi
v_mov_b32 v5, global_var3@rel32@lo
v_mov_b32 v6, global_var4@rel32@hi
.globl global_var0
.globl global_var1
.globl global_var2
.globl global_var3
.globl global_var4
.globl SCRATCH_RSRC_DWORD0
.section nonalloc, "w", @progbits
.long var, common_var
// 8 byte relocations
.type ptr,@object
.data
.globl ptr
.globl foo
.p2align 3
ptr:
.quad temp
.size ptr, 8
foo:
.quad temp@rel64
.size foo, 8