// REQUIRES: aarch64 // RUN: split-file %s %t.dir && cd %t.dir // RUN: llvm-mc -filetype=obj -triple=aarch64-windows arm64-data-sym.s -o arm64-data-sym.obj // RUN: llvm-mc -filetype=obj -triple=arm64ec-windows arm64ec-data-sym.s -o arm64ec-data-sym.obj // RUN: lld-link -machine:arm64x -dll -out:out.dll -map -mapinfo:exports arm64-data-sym.obj arm64ec-data-sym.obj // RUN: FileCheck %s < out.map // CHECK: Start Length Name Class // CHECK-NEXT: 0001:00000000 00001004H .text CODE // CHECK-NEXT: 0004:00000000 00000008H .data DATA // CHECK-NEXT: 0004:00000008 00000000H .bss DATA // CHECK-EMPTY: // CHECK-NEXT: Address Publics by Value Rva+Base Lib:Object // CHECK-EMPTY: // CHECK-NEXT: 0001:00000000 _DllMainCRTStartup 0000000180001000 arm64-data-sym.obj // CHECK-NEXT: 0001:00001000 _DllMainCRTStartup 0000000180002000 arm64ec-data-sym.obj // CHECK-NEXT: 0004:00000000 arm64_data_sym 0000000180005000 arm64-data-sym.obj // CHECK-NEXT: 0004:00000004 arm64ec_data_sym 0000000180005004 arm64ec-data-sym.obj // CHECK-EMPTY: // CHECK-NEXT: entry point at 0002:00000000 // CHECK-EMPTY: // CHECK-NEXT: Static symbols // CHECK-EMPTY: // CHECK-EMPTY: // CHECK-NEXT: Exports // CHECK-EMPTY: // CHECK-NEXT: ordinal name // CHECK-EMPTY: // CHECK-NEXT: 1 arm64ec_data_sym #--- arm64ec-data-sym.s .text .globl _DllMainCRTStartup _DllMainCRTStartup: ret .data .globl arm64ec_data_sym .p2align 2, 0x0 arm64ec_data_sym: .word 0x02020202 .section .drectve .ascii "-export:arm64ec_data_sym,DATA" #--- arm64-data-sym.s .text .globl _DllMainCRTStartup _DllMainCRTStartup: ret .data .globl arm64_data_sym .p2align 2, 0x0 arm64_data_sym: .word 0x01010101 .section .drectve .ascii "-export:arm64_data_sym,DATA"