llvm-project/lld/test/MachO
Nico Weber 04e8d0b62d [lld/mac] Implement support for section$start and section$ end symbols
With this, libclang_rt.profile_osx.a can be linked, that is coverage
and PGO-instrumented builds should now work with lld.

section$start and section$end symbols can create non-existing sections.
They're also undefined symbols that are only magic if there isn't a
regular symbol with their name, which means the need to be handled
in treatUndefined() instead of just looping over all existing
sections and adding start and end symbols like the ELF port does.

To represent the actual symbols, this uses absolute symbols that
get their value updated once an output section is layed out.

segment$start and segment$end are still missing for now, but they produce a
nicer error message after this patch.

Main part of PR50760.

Differential Revision: https://reviews.llvm.org/D106629
2021-07-23 16:01:09 -04:00
..
Inputs [lld-macho] Deduplicate CFStrings 2021-07-01 21:22:38 -04:00
invalid [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
tools
U-dynamic-lookup.s
abs-symbols.s
add-ast-path.s
adhoc-codesign.s
application-extension.s [lld/mac] Implement -application_extension 2021-07-12 13:42:16 -04:00
arch-multiple.s [lld/mac] Implement -arch_multiple 2021-07-06 00:25:18 -04:00
arch.s
archive.s
arm-branch-relocs.s
arm64-32-reloc-got-load.s
arm64-32-stubs.s
arm64-reloc-got-load.s
arm64-reloc-pointer-to-got.s
arm64-reloc-tlv-load.s
arm64-relocs.s
arm64-stubs.s
arm64-thunks.s
bind-opcodes.s Change requires line from arm to aarch64 since the test uses arm64_32 which is AArch64. 2021-07-21 12:51:53 -07:00
bitcode-bundle.ll
bss.s
builtin-rename.s [lld-macho] Only enable `__DATA_CONST` for newer platforms 2021-06-30 18:55:48 -04:00
bundle-loader.s
cfstring-dedup.s [lld-macho] Deduplicate CFStrings 2021-07-01 21:22:38 -04:00
color-diagnostics.test
common-symbol-coalescing.s
common-symbol-resolution.s [lld-macho][nfc] Fix test to reflect that symbol attributes don't matter within an archive 2021-07-23 11:49:00 -04:00
compact-unwind-generated.test
compact-unwind-stack-ind.s
compact-unwind-sym-relocs.s [lld-macho][nfc] Fix YAML input in compact-unwind-sym-relocs.s 2021-07-11 21:36:24 -04:00
compact-unwind.s [lld/mac] Don't crash when dead-stripping removes all unwind info 2021-07-07 13:05:40 -04:00
cstring-dedup.s
data-in-code.s
dead-strip-align.s [lld-macho] Preserve alignment for non-deduplicated cstrings 2021-06-28 22:26:43 -04:00
dead-strip-dylibs.s
dead-strip.s [lld/mac] Handle symbols from -U in treatUndefinedSymbol() 2021-07-22 19:43:57 -04:00
demangle.s
dependency-info.s
driver.test
dso-handle.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
dyld-stub-binder.s [lld/mac] Always reference dyld_stub_binder when linked with libSystem 2021-07-11 13:37:48 -04:00
dylib-stub.yaml
dylib-version.s
dylib.s
dylink-ordinal.s [lld/mac] Make tbd files in one test valid 2021-07-12 11:13:54 -04:00
dylink.s
encryption-info.s
entry-symbol.s
error-limit.test
export-options.s
export-trie.s
fat-arch.s
fatal-warnings.s
filelist.s
final-output.s [lld/mac] Implement -final_output 2021-07-05 20:06:26 -04:00
flat-namespace.s
force-load-swift-libs.ll
force-load.s
framework.s
function-starts.s
header.s
headerpad.s
icf-literals.s [lld-macho] Extend ICF to literal sections 2021-06-28 14:49:39 -04:00
icf-options.s
icf-scale.s
icf.s [lld-macho] Reorganize + extend ICF test 2021-07-23 11:49:00 -04:00
implicit-dylibs.s
indirect-symtab.s
install-name.s
lc-build-version.s
lc-linker-option.ll
link-search-at-executable-path.s
link-search-at-loader-path-symlink.s
link-search-at-loader-path.s
link-search-at-rpath.s
link-search-order.s
linkedit-contiguity.s
lit.local.cfg
literal-dedup.s
load-command-sequence.s [lld/mac] Change load command order to be more like ld64 2021-07-19 15:04:32 -04:00
load-commands.s
local-got.s
local-private-extern.yaml
lto-archive.ll
lto-archivecollision.ll [lld/mac] Add missing REQUIRES line to new test 2021-07-23 10:40:22 -04:00
lto-cache.ll [lld-macho] Add LTO cache support 2021-07-15 12:56:13 -04:00
lto-codemodel.ll [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
lto-cpu-string.ll [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
lto-internalize.ll [lld/mac] Always reference dyld_stub_binder when linked with libSystem 2021-07-11 13:37:48 -04:00
lto-linkonce.ll [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
lto-mattrs.ll [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
lto-module-asm.ll [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
lto-objc-arc-contract.ll [lld/mac] Give several LTO tests an "lto-" prefix 2021-07-06 15:23:42 -04:00
lto-object-path.ll
lto-opt-level.ll [lld/mac] Add test for --lto-O 2021-07-19 16:45:33 -04:00
lto-save-temps.ll
lto-symbol-resolution.ll [lld-macho][nfc] Add test for resolution of bitcode symbols 2021-07-23 11:49:00 -04:00
map-file.s
mark-dead-strippable-dylib.s
mh-execute-header.s
mh-header-link.s
no-exports-dylib.s
no-unneeded-dyld-info.s
nonweak-definition-override.s
obj-file-with-stabs.s [lld-macho][nfc] Rename test file to be more descriptive (rather than referencing the bug number) 2021-07-07 13:15:55 -04:00
objc.s [lld/mac] Unbreak objc.s after 6e05c1cd5f 2021-07-11 13:57:15 -04:00
order-file.s [lld/mac] Don't crash on absolute symbols in order files 2021-07-23 11:33:23 -04:00
platform-version.s
private-extern.s
reexport-stub.s
referenced-dynamically.s
reloc-subtractor.s
rename.s [lld-macho] -section_rename should work on synthetic sections too 2021-06-30 18:55:48 -04:00
reproduce-thin-archives.s
reproduce.s
reroot-path.s
resolution.s
responsefile.test
rpath.s
search-paths-darwin.test
search-paths.test
sectalign.s
sectcreate.s
section-headers.s
section-merge.s
section-order.s
segments.s
segprot.s
silent-ignore.test
skip-platform-checks.s
special-symbol-ld-install-name.s
special-symbol-ld-previous.s
stabs.s [lld/mac] Always reference dyld_stub_binder when linked with libSystem 2021-07-11 13:37:48 -04:00
start-end.s [lld/mac] Implement support for section$start and section$ end symbols 2021-07-23 16:01:09 -04:00
static-link.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
sub-library.s
subsections-symbol-relocs.s
symbol-order.s
symtab.s
syslibroot.test
t.s
tapi-framework.s
tapi-link-by-arch.s
tapi-link.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
thin-archive.s
thinlto-jobs.ll
thinlto-time-trace.ll
threads.s
time-trace.s
tlv-dylib.s [lld/mac] Fix nondeterminism in output section ordering 2021-06-28 18:41:33 -04:00
tlv.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
treat-undef-sym.s
u.s
umbrella.s [lld/mac] Implement -umbrella 2021-07-05 20:06:25 -04:00
unsorted-relocations.yaml [lld-macho][nfc] Add REQUIRES: x86 to test 2021-07-05 03:40:54 -04:00
weak-binding.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
weak-def-can-be-hidden.s
weak-def-thumb-conflict.s
weak-definition-direct-fetch.s [lld-macho][nfc] Fix test to reflect that symbol attributes don't matter within an archive 2021-07-23 11:49:00 -04:00
weak-definition-gc.s
weak-definition-in-main-file.s [lld/mac] Resolve defined symbols before undefined symbols 2021-07-19 16:37:41 -04:00
weak-definition-indirect-fetch.s
weak-definition-order.s
weak-definition-over-dysym.s
weak-header-flags.s
weak-import.s
weak-private-extern.s
weak-reference.s
why-load.s
x86-64-reloc-got-load.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
x86-64-reloc-signed.s [llvm-objdump] Print memory operand addresses as regular comments 2021-06-28 14:25:22 +07:00
x86-64-reloc-unsigned.s
x86-64-relocs.s
x86-64-stubs.s
zippered.yaml