[lld] 0ab09a9 - [test][lld-macho] Improve LC_FUNCTION_STARTS test coverage
Keith Smiley via llvm-commits
llvm-commits at lists.llvm.org
Sun Jan 30 09:59:16 PST 2022
Author: Keith Smiley
Date: 2022-01-30T09:46:36-08:00
New Revision: 0ab09a9009b6e65b4ed5b982eb4291244857bc11
URL: https://github.com/llvm/llvm-project/commit/0ab09a9009b6e65b4ed5b982eb4291244857bc11
DIFF: https://github.com/llvm/llvm-project/commit/0ab09a9009b6e65b4ed5b982eb4291244857bc11.diff
LOG: [test][lld-macho] Improve LC_FUNCTION_STARTS test coverage
Previously functions that aren't included in the symtab were also
excluded from the function starts. Symbols missing from function starts
degrades the debugger experience in the case you don't have debug info
for them.
Differential Revision: https://reviews.llvm.org/D114275
Added:
Modified:
lld/test/MachO/function-starts.s
Removed:
################################################################################
diff --git a/lld/test/MachO/function-starts.s b/lld/test/MachO/function-starts.s
index d3e3f7cf9597f..ae97b19a49ce9 100644
--- a/lld/test/MachO/function-starts.s
+++ b/lld/test/MachO/function-starts.s
@@ -41,6 +41,21 @@
# RUN: llvm-objdump --macho --function-starts %t/basic >> %t/objdump
# RUN: FileCheck %s --check-prefix=BASIC < %t/objdump
+# RUN: llvm-mc -filetype=obj -triple=x86_64-apple-darwin %t/local.s -o %t/local.o
+# RUN: %lld -lSystem %t/local.o -o %t/local
+# RUN: llvm-objdump --syms %t/local > %t/objdump
+# RUN: llvm-objdump --macho --function-starts %t/local >> %t/objdump
+# RUN: FileCheck %s --check-prefix=LOCAL < %t/objdump
+
+# LOCAL-LABEL: SYMBOL TABLE:
+# LOCAL-NEXT: [[#%x,F1:]] l F __TEXT,__text +[Foo bar]
+# LOCAL-NEXT: [[#%x,F2:]] l F __TEXT,__text _foo
+# LOCAL: [[#%x,F3:]] g F __TEXT,__text _main
+# LOCAL-LABEL: local:
+# LOCAL: [[#F1]]
+# LOCAL: [[#F2]]
+# LOCAL: [[#F3]]
+
#--- basic.s
.section __TEXT,__text,regular,pure_instructions
.globl _f1
@@ -62,3 +77,15 @@ _f1:
retq
_main:
retq
+
+#--- local.s
+.section __TEXT,__text
+"+[Foo bar]":
+ retq
+
+_foo:
+ retq
+
+.globl _main
+_main:
+ retq
More information about the llvm-commits
mailing list