38 lines · plain
1REQUIRES: aarch64, x862RUN: split-file %s %t.dir && cd %t.dir3 4Link a mix of ARM64EC and x86_64 data and check that relocations work.5 6RUN: llvm-mc -filetype=obj -triple=arm64ec-windows arm64ec-data-sym.s -o arm64ec-data-sym.obj7RUN: llvm-mc -filetype=obj -triple=x86_64-windows x86_64-data-sym.s -o x86_64-data-sym.obj8RUN: lld-link -out:test.dll -machine:arm64ec arm64ec-data-sym.obj x86_64-data-sym.obj -dll -noentry9 10RUN: llvm-readobj --hex-dump=.data test.dll | FileCheck -check-prefix=ARM64EC-DATA %s11ARM64EC-DATA: 0x180001000 00100080 01000000 08100080 0100000012 13RUN: llvm-readobj --coff-basereloc test.dll | FileCheck -check-prefix=RELOCS %s14RELOCS: BaseReloc [15RELOCS-NEXT: Entry {16RELOCS-NEXT: Type: DIR6417RELOCS-NEXT: Address: 0x100018RELOCS-NEXT: }19RELOCS-NEXT: Entry {20RELOCS-NEXT: Type: DIR6421RELOCS-NEXT: Address: 0x100822RELOCS-NEXT: }23RELOCS-NEXT: ]24 25#--- arm64ec-data-sym.s26 .data27 .globl arm64ec_data_sym28 .p2align 2, 0x029arm64ec_data_sym:30 .xword arm64ec_data_sym31 32#--- x86_64-data-sym.s33 .data34 .globl x86_64_data_sym35 .p2align 2, 0x036x86_64_data_sym:37 .quad x86_64_data_sym38