| ; NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py |
| ; RUN: llc -global-isel -march=amdgcn -mcpu=gfx900 -stop-after=irtranslator -o - %s | FileCheck %s |
| ; Make sure intrinsics with metadata arguments are translated |
| |
| define i32 @reloc_constant() { |
| ; CHECK-LABEL: name: reloc_constant |
| ; CHECK: bb.1 (%ir-block.0): |
| ; CHECK: liveins: $sgpr30_sgpr31 |
| ; CHECK: [[COPY:%[0-9]+]]:sgpr_64 = COPY $sgpr30_sgpr31 |
| ; CHECK: [[INT:%[0-9]+]]:_(s32) = G_INTRINSIC intrinsic(@llvm.amdgcn.reloc.constant), !0 |
| ; CHECK: $vgpr0 = COPY [[INT]](s32) |
| ; CHECK: [[COPY1:%[0-9]+]]:ccr_sgpr_64 = COPY [[COPY]] |
| ; CHECK: S_SETPC_B64_return [[COPY1]], implicit $vgpr0 |
| %val = call i32 @llvm.amdgcn.reloc.constant(metadata !0) |
| ret i32 %val |
| } |
| |
| declare i32 @llvm.amdgcn.reloc.constant(metadata) #0 |
| |
| attributes #0 = { nounwind readnone speculatable willreturn } |
| |
| !0 = !{!"arst"} |