Give string constants generated by IRBuilder private linkage.
Fixes PR11640. llvm-svn: 147144
This commit is contained in:
parent
4977edd33d
commit
f1fd6e394d
|
@ -27,7 +27,7 @@ Value *IRBuilderBase::CreateGlobalString(StringRef Str, const Twine &Name) {
|
||||||
Constant *StrConstant = ConstantArray::get(Context, Str, true);
|
Constant *StrConstant = ConstantArray::get(Context, Str, true);
|
||||||
Module &M = *BB->getParent()->getParent();
|
Module &M = *BB->getParent()->getParent();
|
||||||
GlobalVariable *GV = new GlobalVariable(M, StrConstant->getType(),
|
GlobalVariable *GV = new GlobalVariable(M, StrConstant->getType(),
|
||||||
true, GlobalValue::InternalLinkage,
|
true, GlobalValue::PrivateLinkage,
|
||||||
StrConstant, "", 0, false);
|
StrConstant, "", 0, false);
|
||||||
GV->setName(Name);
|
GV->setName(Name);
|
||||||
GV->setUnnamedAddr(true);
|
GV->setUnnamedAddr(true);
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
@str = internal constant [13 x i8] c"hello world\0A\00" ; <[13 x i8]*> [#uses=1]
|
@str = internal constant [13 x i8] c"hello world\0A\00" ; <[13 x i8]*> [#uses=1]
|
||||||
@str1 = internal constant [2 x i8] c"h\00" ; <[2 x i8]*> [#uses=1]
|
@str1 = internal constant [2 x i8] c"h\00" ; <[2 x i8]*> [#uses=1]
|
||||||
|
|
||||||
; CHECK: internal unnamed_addr constant [12 x i8] c"hello world\00"
|
; CHECK: private unnamed_addr constant [12 x i8] c"hello world\00"
|
||||||
|
|
||||||
declare i32 @printf(i8*, ...)
|
declare i32 @printf(i8*, ...)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue