Only put unnamed_addr constants in mergeable sections. Fixes PR8297.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123585 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2011-01-16 17:19:34 +00:00
parent d6e5cbc842
commit 7010401c6b

View File

@ -162,7 +162,7 @@ SectionKind TargetLoweringObjectFile::getKindForGlobal(const GlobalValue *GV,
// If the global is marked constant, we can put it into a mergable section,
// a mergable string section, or general .data if it contains relocations.
if (GVar->isConstant()) {
if (GVar->isConstant() && GVar->hasUnnamedAddr()) {
// If the initializer for the global contains something that requires a
// relocation, then we may have to drop this into a wriable data section
// even though it is marked const.