From a7defb7150ccd4a8c4ff302d5ad134029e50e700 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 27 Jul 2009 17:39:40 +0000 Subject: [PATCH] add an explanatory comment about why we drop these in readonly and not in mergable git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77210 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/TargetAsmInfo.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/Target/TargetAsmInfo.cpp b/lib/Target/TargetAsmInfo.cpp index ce905effa79..f5c1458e3d8 100644 --- a/lib/Target/TargetAsmInfo.cpp +++ b/lib/Target/TargetAsmInfo.cpp @@ -247,7 +247,9 @@ static SectionKind::Kind SectionKindForGlobal(const GlobalValue *GV, case Constant::LocalRelocation: // In static relocation model, the linker will resolve all addresses, so // the relocation entries will actually be constants by the time the app - // starts up. + // starts up. However, we can't put this into a mergable section, because + // the linker doesn't take relocations into consideration when it tries to + // merge entries in the section. if (ReloModel == Reloc::Static) return SectionKind::ReadOnly; @@ -258,7 +260,9 @@ static SectionKind::Kind SectionKindForGlobal(const GlobalValue *GV, case Constant::GlobalRelocations: // In static relocation model, the linker will resolve all addresses, so // the relocation entries will actually be constants by the time the app - // starts up. + // starts up. However, we can't put this into a mergable section, because + // the linker doesn't take relocations into consideration when it tries to + // merge entries in the section. if (ReloModel == Reloc::Static) return SectionKind::ReadOnly;