# RUN: rm -rf %t && mkdir -p %t
# RUN: llvm-mc -triple x86_64-apple-macosx10.9 -filetype=obj \
# RUN: -o %t/MachO_extra_def_weak.o %S/Inputs/MachO_extra_def_weak.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_extra_def_weak.o
#
# Check that objects linked separately agree on the address of weak symbols.
#
# jitlink-check: *{8}ExtraDefAddrInThisFile = *{8}ExtraDefAddrInExtraFile
.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 ExtraDef
.weak_definition ExtraDef
.p2align 2
ExtraDef:
.long 1
.globl ExtraDefAddrInThisFile
.p2align 3
ExtraDefAddrInThisFile:
.quad ExtraDef
# Take the address of ExtraDefAddrInExtraFile to force its materialization
.globl extra_file_anchor
.p2align 3
extra_file_anchor:
.quad ExtraDefAddrInExtraFile
.subsections_via_symbols