mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-24 14:20:17 +00:00
[lld][WebAssembly] Fix name of data section in PIC mode
This should always have been ".data". Without this we treat the section as a user-defined section in other places (such as the generation of __start/__stop symbols). Differential Revision: https://reviews.llvm.org/D64439 llvm-svn: 365547
This commit is contained in:
parent
9e77d0c6df
commit
51c2b99eff
@ -304,9 +304,9 @@ void Writer::addSection(OutputSection *Sec) {
|
||||
// gold provide the feature, and used by many programs.
|
||||
static void addStartStopSymbols(const OutputSegment *Seg) {
|
||||
StringRef Name = Seg->Name;
|
||||
LLVM_DEBUG(dbgs() << "addStartStopSymbols: " << Name << "\n");
|
||||
if (!isValidCIdentifier(Name))
|
||||
return;
|
||||
LLVM_DEBUG(dbgs() << "addStartStopSymbols: " << Name << "\n");
|
||||
uint32_t Start = Seg->StartVA;
|
||||
uint32_t Stop = Start + Seg->Size;
|
||||
Symtab->addOptionalDataSymbol(Saver.save("__start_" + Name), Start);
|
||||
@ -601,7 +601,7 @@ static StringRef getOutputDataSegmentName(StringRef Name) {
|
||||
// With PIC code we currently only support a single data segment since
|
||||
// we only have a single __memory_base to use as our base address.
|
||||
if (Config->Pic)
|
||||
return "data";
|
||||
return ".data";
|
||||
if (!Config->MergeDataSegments)
|
||||
return Name;
|
||||
if (Name.startswith(".text."))
|
||||
|
Loading…
Reference in New Issue
Block a user