parent
c3d15128de
commit
388838ed23
|
@ -450,8 +450,6 @@ void LinkerDriver::readConfigs(opt::InputArgList &Args) {
|
||||||
if (!RPaths.empty())
|
if (!RPaths.empty())
|
||||||
Config->RPath = llvm::join(RPaths.begin(), RPaths.end(), ":");
|
Config->RPath = llvm::join(RPaths.begin(), RPaths.end(), ":");
|
||||||
|
|
||||||
Config->SectionStartMap = getSectionStartMap(Args);
|
|
||||||
|
|
||||||
if (auto *Arg = Args.getLastArg(OPT_m)) {
|
if (auto *Arg = Args.getLastArg(OPT_m)) {
|
||||||
// Parse ELF{32,64}{LE,BE} and CPU type.
|
// Parse ELF{32,64}{LE,BE} and CPU type.
|
||||||
StringRef S = Arg->getValue();
|
StringRef S = Arg->getValue();
|
||||||
|
@ -512,13 +510,18 @@ void LinkerDriver::readConfigs(opt::InputArgList &Args) {
|
||||||
Config->ZNow = hasZOption(Args, "now");
|
Config->ZNow = hasZOption(Args, "now");
|
||||||
Config->ZOrigin = hasZOption(Args, "origin");
|
Config->ZOrigin = hasZOption(Args, "origin");
|
||||||
Config->ZRelro = !hasZOption(Args, "norelro");
|
Config->ZRelro = !hasZOption(Args, "norelro");
|
||||||
|
Config->ZStackSize = getZOptionValue(Args, "stack-size", -1);
|
||||||
Config->ZWxneeded = hasZOption(Args, "wxneeded");
|
Config->ZWxneeded = hasZOption(Args, "wxneeded");
|
||||||
|
|
||||||
|
Config->OFormatBinary = isOutputFormatBinary(Args);
|
||||||
|
Config->SectionStartMap = getSectionStartMap(Args);
|
||||||
|
Config->SortSection = getSortKind(Args);
|
||||||
|
Config->Target2 = getTarget2Option(Args);
|
||||||
|
Config->UnresolvedSymbols = getUnresolvedSymbolOption(Args);
|
||||||
|
|
||||||
if (!Config->Relocatable)
|
if (!Config->Relocatable)
|
||||||
Config->Strip = getStripOption(Args);
|
Config->Strip = getStripOption(Args);
|
||||||
|
|
||||||
Config->ZStackSize = getZOptionValue(Args, "stack-size", -1);
|
|
||||||
|
|
||||||
// Config->Pic is true if we are generating position-independent code.
|
// Config->Pic is true if we are generating position-independent code.
|
||||||
Config->Pic = Config->Pie || Config->Shared;
|
Config->Pic = Config->Pie || Config->Shared;
|
||||||
|
|
||||||
|
@ -554,8 +557,6 @@ void LinkerDriver::readConfigs(opt::InputArgList &Args) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Config->OFormatBinary = isOutputFormatBinary(Args);
|
|
||||||
|
|
||||||
for (auto *Arg : Args.filtered(OPT_auxiliary))
|
for (auto *Arg : Args.filtered(OPT_auxiliary))
|
||||||
Config->AuxiliaryList.push_back(Arg->getValue());
|
Config->AuxiliaryList.push_back(Arg->getValue());
|
||||||
if (!Config->Shared && !Config->AuxiliaryList.empty())
|
if (!Config->Shared && !Config->AuxiliaryList.empty())
|
||||||
|
@ -564,12 +565,6 @@ void LinkerDriver::readConfigs(opt::InputArgList &Args) {
|
||||||
for (auto *Arg : Args.filtered(OPT_undefined))
|
for (auto *Arg : Args.filtered(OPT_undefined))
|
||||||
Config->Undefined.push_back(Arg->getValue());
|
Config->Undefined.push_back(Arg->getValue());
|
||||||
|
|
||||||
Config->SortSection = getSortKind(Args);
|
|
||||||
|
|
||||||
Config->UnresolvedSymbols = getUnresolvedSymbolOption(Args);
|
|
||||||
|
|
||||||
Config->Target2 = getTarget2Option(Args);
|
|
||||||
|
|
||||||
if (auto *Arg = Args.getLastArg(OPT_dynamic_list))
|
if (auto *Arg = Args.getLastArg(OPT_dynamic_list))
|
||||||
if (Optional<MemoryBufferRef> Buffer = readFile(Arg->getValue()))
|
if (Optional<MemoryBufferRef> Buffer = readFile(Arg->getValue()))
|
||||||
parseDynamicList(*Buffer);
|
parseDynamicList(*Buffer);
|
||||||
|
|
|
@ -54,15 +54,10 @@ private:
|
||||||
public:
|
public:
|
||||||
Kind kind() const { return (Kind)SectionKind; }
|
Kind kind() const { return (Kind)SectionKind; }
|
||||||
|
|
||||||
// Used for garbage collection.
|
unsigned Live : 1; // for garbage collection
|
||||||
unsigned Live : 1;
|
|
||||||
|
|
||||||
unsigned Compressed : 1;
|
unsigned Compressed : 1;
|
||||||
|
|
||||||
uint32_t Alignment;
|
uint32_t Alignment;
|
||||||
|
|
||||||
StringRef Name;
|
StringRef Name;
|
||||||
|
|
||||||
ArrayRef<uint8_t> Data;
|
ArrayRef<uint8_t> Data;
|
||||||
ArrayRef<uint8_t> getData(const SectionPiece &P) const;
|
ArrayRef<uint8_t> getData(const SectionPiece &P) const;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue