mirror of
https://github.com/RPCS3/llvm.git
synced 2026-07-16 11:44:33 -04:00
[LTO][ThinLTO] Use the linker resolutions to mark global values as dso_local.
Now that we have a way to mark GlobalValues as local we can use the symbol resolutions that the linker plugin provides as part of lto/thinlto link step to refine the compilers view on what symbols will end up being local. Differential Revision: https://reviews.llvm.org/D35702 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@317374 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
; Bitcode compatibility test for dso_local flag in thin-lto summaries.
|
||||
; Checks that older bitcode summaries without the dso_local op are still
|
||||
; properly parsed and don't set GlobalValues as dso_local.
|
||||
|
||||
; RUN: llvm-dis < %s.bc | FileCheck %s
|
||||
; RUN: llvm-bcanalyzer -dump %s.bc | FileCheck %s --check-prefix=BCAN
|
||||
|
||||
define void @foo() {
|
||||
;CHECK-DAG:define void @foo()
|
||||
ret void
|
||||
}
|
||||
|
||||
@bar = global i32 0
|
||||
;CHECK-DAG: @bar = global i32 0
|
||||
|
||||
@baz = alias i32, i32* @bar
|
||||
;CHECK-DAG: @bar = global i32 0
|
||||
|
||||
;BCAN: <SOURCE_FILENAME
|
||||
;BCAN-NEXT: <GLOBALVAR {{.*}} op7=0/>
|
||||
;BCAN-NEXT: <FUNCTION {{.*}} op16=0/>
|
||||
;BCAN-NEXT: <ALIAS {{.*}} op9=0/>
|
||||
Reference in New Issue
Block a user