# RUN: rm -rf %t && mkdir -p %t # RUN: llvm-mc -triple x86_64-apple-macosx10.9 -filetype=obj \ # RUN: -o %t/MachO_weak_defs_extra.o %S/Inputs/MachO_weak_defs_extra.s # RUN: llvm-mc -triple x86_64-apple-macosx10.9 -filetype=obj \ # RUN: -o %t/MachO_weak_definitions.o %s # RUN: llvm-jitlink -noexec -check=%s %t/MachO_weak_definitions.o \ # RUN: %t/MachO_weak_defs_extra.o # # Check that objects linked separately agree on the address of weak symbols. # # jitlink-check: *{8}WeakDefAddrInThisFile = *{8}WeakDefAddrInExtraFile .section __TEXT,__text,regular,pure_instructions .build_version macos, 10, 14 sdk_version 10, 14 .globl _main .p2align 4, 0x90 _main: retq .section __DATA,__data .globl WeakDef .weak_definition WeakDef .p2align 2 WeakDef: .long 1 .globl WeakDefAddrInThisFile .p2align 3 WeakDefAddrInThisFile: .quad WeakDef # Take the address of WeakDefAddrInExtraFile to force its materialization .globl extra_file_anchor .p2align 3 extra_file_anchor: .quad WeakDefAddrInExtraFile .subsections_via_symbols