make SectionKind know whether a symbol is weak or not in addition
to its classification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77140 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 5da01a2..0bbbddf 100644
--- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -311,15 +311,17 @@
SectionKind Kind;
switch (CPE.getRelocationInfo()) {
default: llvm_unreachable("Unknown section kind");
- case 2: Kind = SectionKind::get(SectionKind::ReadOnlyWithRel); break;
- case 1: Kind = SectionKind::get(SectionKind::ReadOnlyWithRelLocal); break;
+ case 2: Kind = SectionKind::get(SectionKind::ReadOnlyWithRel, false); break;
+ case 1:
+ Kind = SectionKind::get(SectionKind::ReadOnlyWithRelLocal,false);
+ break;
case 0:
- switch (TM.getTargetData()->getTypeAllocSize(CPE.getType())) {
- case 4: Kind = SectionKind::get(SectionKind::MergeableConst4); break;
- case 8: Kind = SectionKind::get(SectionKind::MergeableConst8); break;
- case 16: Kind = SectionKind::get(SectionKind::MergeableConst16); break;
- default: Kind = SectionKind::get(SectionKind::MergeableConst); break;
- }
+ switch (TM.getTargetData()->getTypeAllocSize(CPE.getType())) {
+ case 4: Kind = SectionKind::get(SectionKind::MergeableConst4,false); break;
+ case 8: Kind = SectionKind::get(SectionKind::MergeableConst8,false); break;
+ case 16: Kind = SectionKind::get(SectionKind::MergeableConst16,false);break;
+ default: Kind = SectionKind::get(SectionKind::MergeableConst,false); break;
+ }
}
const Section *S = TAI->getSectionForMergeableConstant(Kind);
diff --git a/lib/CodeGen/ELFWriter.cpp b/lib/CodeGen/ELFWriter.cpp
index 97b7ff0..c0e7b93 100644
--- a/lib/CodeGen/ELFWriter.cpp
+++ b/lib/CodeGen/ELFWriter.cpp
@@ -157,14 +157,16 @@
SectionKind Kind;
switch (CPE.getRelocationInfo()) {
default: llvm_unreachable("Unknown section kind");
- case 2: Kind = SectionKind::get(SectionKind::ReadOnlyWithRel); break;
- case 1: Kind = SectionKind::get(SectionKind::ReadOnlyWithRelLocal); break;
+ case 2: Kind = SectionKind::get(SectionKind::ReadOnlyWithRel,false); break;
+ case 1:
+ Kind = SectionKind::get(SectionKind::ReadOnlyWithRelLocal,false);
+ break;
case 0:
switch (TM.getTargetData()->getTypeAllocSize(CPE.getType())) {
- case 4: Kind = SectionKind::get(SectionKind::MergeableConst4); break;
- case 8: Kind = SectionKind::get(SectionKind::MergeableConst8); break;
- case 16: Kind = SectionKind::get(SectionKind::MergeableConst16); break;
- default: Kind = SectionKind::get(SectionKind::MergeableConst); break;
+ case 4: Kind = SectionKind::get(SectionKind::MergeableConst4,false); break;
+ case 8: Kind = SectionKind::get(SectionKind::MergeableConst8,false); break;
+ case 16: Kind = SectionKind::get(SectionKind::MergeableConst16,false);break;
+ default: Kind = SectionKind::get(SectionKind::MergeableConst,false); break;
}
}