mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-08 09:43:20 +00:00
InstrProf: Make the __llvm_profile_runtime_user symbol hidden
This symbol exists only to pull in the required pieces of the runtime, so nothing ever needs to refer to it. Making it hidden avoids the potential for issues with duplicate symbols when linking profiled libraries together. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230566 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
344ea29148
commit
4a3b80e1f9
@ -288,6 +288,7 @@ void InstrProfiling::emitRuntimeHook() {
|
||||
User->addFnAttr(Attribute::NoInline);
|
||||
if (Options.NoRedZone)
|
||||
User->addFnAttr(Attribute::NoRedZone);
|
||||
User->setVisibility(GlobalValue::HiddenVisibility);
|
||||
|
||||
IRBuilder<> IRB(BasicBlock::Create(M->getContext(), "", User));
|
||||
auto *Load = IRB.CreateLoad(Var);
|
||||
|
@ -40,7 +40,7 @@ declare void @llvm.instrprof.increment(i8*, i64, i32, i32)
|
||||
|
||||
; CHECK: @__llvm_profile_runtime = external global i32
|
||||
|
||||
; CHECK: define linkonce_odr i32 @__llvm_profile_runtime_user() {{.*}} {
|
||||
; CHECK: define linkonce_odr hidden i32 @__llvm_profile_runtime_user() {{.*}} {
|
||||
; CHECK: %[[REG:.*]] = load i32* @__llvm_profile_runtime
|
||||
; CHECK: ret i32 %[[REG]]
|
||||
; CHECK: }
|
||||
|
Loading…
x
Reference in New Issue
Block a user