Skip to content

Commit 1f78ab0

Browse files
author
Edd Dawson
committed
[lld][ELF][test] test LTO-removed symbols are not in symtab
Differential Revision: https://reviews.llvm.org/D90680
1 parent 8e01749 commit 1f78ab0

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

lld/test/ELF/lto/internalize-basic.ll

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
; RUN: llvm-as %s -o %t.o
33
; RUN: ld.lld %t.o -o %t2 -save-temps
44
; RUN: llvm-dis < %t2.0.2.internalize.bc | FileCheck %s
5+
; RUN: llvm-readelf --syms %t2 | FileCheck --check-prefix=SYMTAB %s
56

67
target triple = "x86_64-unknown-linux-gnu"
78
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
@@ -25,3 +26,10 @@ define hidden void @foo() {
2526
; Check that the foo and bar functions are correctly internalized.
2627
; CHECK: define internal void @bar()
2728
; CHECK: define internal void @foo()
29+
30+
; Check foo and bar are not emitted to the .symtab
31+
; SYMTAB: Symbol table '.symtab' contains 3 entries:
32+
; SYMTAB-NEXT: Num: Value Size Type Bind Vis Ndx Name
33+
; SYMTAB-NEXT: 0: {{.+}} 0 NOTYPE
34+
; SYMTAB-NEXT: 1: {{.+}} 0 FILE
35+
; SYMTAB-NEXT: 2: {{.+}} 1 FUNC GLOBAL DEFAULT {{.+}} _start

0 commit comments

Comments
 (0)