xref: /llvm-project/llvm/test/CodeGen/AMDGPU/r600-constant-array-fixup.ll (revision da0293e3cc66803217e9331d95a89ab6b59cdaae)
1; RUN: llc -filetype=obj -mtriple=r600-mesa-mesa3d -mcpu=cypress -verify-machineinstrs < %s | llvm-readobj -r --symbols - | FileCheck %s
2
3@arr = internal unnamed_addr addrspace(4) constant [4 x i32] [i32 4, i32 5, i32 6, i32 7], align 4
4
5; CHECK: Relocations [
6; CHECK: Section (3) .rel.text {
7; CHECK: 0x58 R_AMDGPU_ABS32 .text
8; CHECK: }
9; CHECK: ]
10
11; CHECK: Symbol {
12; CHECK: Name: arr (11)
13; CHECK: Value: 0x70
14; CHECK: Size: 16
15; CHECK: Binding: Local (0x0)
16; CHECK: Type: Object (0x1)
17; CHECK: Other: 0
18; CHECK: Section: .text (0x2)
19; CHECK: }
20define amdgpu_kernel void @test_constant_array_fixup(ptr addrspace(1) nocapture %out, i32 %idx) #0 {
21entry:
22  %arrayidx = getelementptr inbounds [4 x i32], ptr addrspace(4) @arr, i32 0, i32 %idx
23  %val = load i32, ptr addrspace(4) %arrayidx
24  store i32 %val, ptr addrspace(1) %out, align 4
25  ret void
26}
27
28attributes #0 = { nounwind }
29