diff --git a/test/CodeGen/AArch64/elf-extern.ll b/test/CodeGen/AArch64/elf-extern.ll deleted file mode 100644 index e09aa127ca2..00000000000 --- a/test/CodeGen/AArch64/elf-extern.ll +++ /dev/null @@ -1,17 +0,0 @@ -; RUN: llc -verify-machineinstrs < %s -mtriple=aarch64-none-linux-gnu -filetype=obj | llvm-readobj -r | FileCheck %s - -; External symbols are a different concept to global variables but should still -; get relocations and so on when used. - -declare void @llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1) - -define i32 @check_extern() { - call void @llvm.memcpy.p0i8.p0i8.i32(i8* undef, i8* undef, i32 undef, i32 4, i1 0) - ret i32 0 -} - -; CHECK: Relocations [ -; CHECK: Section (2) .rela.text { -; CHECK: 0x{{[0-9,A-F]+}} R_AARCH64_CALL26 memcpy -; CHECK: } -; CHECK: ] diff --git a/test/MC/AArch64/elf-extern.s b/test/MC/AArch64/elf-extern.s new file mode 100644 index 00000000000..dfa3fb002ed --- /dev/null +++ b/test/MC/AArch64/elf-extern.s @@ -0,0 +1,33 @@ +// RUN: llvm-mc < %s -triple=aarch64-none-linux-gnu -filetype=obj | llvm-readobj -r | FileCheck %s + +// External symbols are a different concept to global variables but should still +// get relocations and so on when used. + + .file "" + .text + .globl check_extern + .type check_extern,@function +check_extern: // @check_extern + .cfi_startproc +// BB#0: + sub sp, sp, #16 +.Ltmp2: + .cfi_def_cfa sp, 16 + str x30, [sp, #8] // 8-byte Folded Spill +.Ltmp3: + .cfi_offset x30, -8 + bl memcpy + mov x0, xzr + ldr x30, [sp, #8] // 8-byte Folded Reload + add sp, sp, #16 + ret +.Ltmp4: + .size check_extern, .Ltmp4-check_extern + .cfi_endproc + + +// CHECK: Relocations [ +// CHECK: Section (2) .rela.text { +// CHECK: 0x{{[0-9,A-F]+}} R_AARCH64_CALL26 memcpy +// CHECK: } +// CHECK: ]