Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[ELF] - Change -t implementation to print which archive members are u…
…sed. Previously each archive file was reported no matter were it's member used or not, like: lib/libLLVMSupport.a Now lld prints line for each used internal file, like: lib/libLLVMSupport.a(lib/Support/CMakeFiles/LLVMSupport.dir/StringSaver.cpp.o) lib/libLLVMSupport.a(lib/Support/CMakeFiles/LLVMSupport.dir/Host.cpp.o) lib/libLLVMSupport.a(lib/Support/CMakeFiles/LLVMSupport.dir/ConvertUTF.c.o) That should be consistent with what gold do. This fixes PR27243. Differential revision: http://reviews.llvm.org/D19011 llvm-svn: 266220
- Loading branch information
George Rimar
committed
Apr 13, 2016
1 parent
4ac1242
commit 2a78fce
Showing
5 changed files
with
47 additions
and
19 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
.globl _used | ||
_used: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
.globl _notused | ||
_notused: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# REQUIRES: x86 | ||
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.foo.o | ||
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/trace-ar1.s -o %t.obj1.o | ||
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/trace-ar2.s -o %t.obj2.o | ||
# RUN: llvm-ar rcs %t.boo.a %t.obj1.o %t.obj2.o | ||
|
||
## Check how -t works with achieves | ||
# RUN: ld.lld %t.foo.o %t.boo.a -o %t.out -t 2>&1 | FileCheck %s | ||
# CHECK: {{.*}}.foo.o | ||
# CHECK-NEXT: {{.*}}.boo.a({{.*}}.obj1.o) | ||
# CHECK-NOT: {{.*}}.boo.a({{.*}}.obj2.o) | ||
|
||
## Test output with --start-lib | ||
# RUN: ld.lld %t.foo.o --start-lib %t.obj1.o %t.obj2.o -o %t.out -t 2>&1 | FileCheck --check-prefix=STARTLIB %s | ||
# STARTLIB: {{.*}}.foo.o | ||
# STARTLIB-NEXT: {{.*}}.obj1.o | ||
# STARTLIB-NOT: {{.*}}.obj2.o | ||
|
||
.globl _start, _used | ||
_start: | ||
call _used |