forked from OSchip/llvm-project
[WebAssembly] Update Config member to match command line option
Subscribers: dschuff, jgravelle-google, aheejin, sunfish, llvm-commits Differential Revision: https://reviews.llvm.org/D50976 llvm-svn: 343157
This commit is contained in:
parent
bd37e09355
commit
4aad12ce0b
|
@ -20,7 +20,7 @@ namespace wasm {
|
||||||
|
|
||||||
struct Configuration {
|
struct Configuration {
|
||||||
bool AllowUndefined;
|
bool AllowUndefined;
|
||||||
bool CompressRelocTargets;
|
bool CompressRelocations;
|
||||||
bool Demangle;
|
bool Demangle;
|
||||||
bool DisableVerify;
|
bool DisableVerify;
|
||||||
bool ExportAll;
|
bool ExportAll;
|
||||||
|
|
|
@ -396,7 +396,7 @@ void LinkerDriver::link(ArrayRef<const char *> ArgsArr) {
|
||||||
Config->SearchPaths = args::getStrings(Args, OPT_L);
|
Config->SearchPaths = args::getStrings(Args, OPT_L);
|
||||||
Config->StripAll = Args.hasArg(OPT_strip_all);
|
Config->StripAll = Args.hasArg(OPT_strip_all);
|
||||||
Config->StripDebug = Args.hasArg(OPT_strip_debug);
|
Config->StripDebug = Args.hasArg(OPT_strip_debug);
|
||||||
Config->CompressRelocTargets = Args.hasArg(OPT_compress_relocations);
|
Config->CompressRelocations = Args.hasArg(OPT_compress_relocations);
|
||||||
Config->StackFirst = Args.hasArg(OPT_stack_first);
|
Config->StackFirst = Args.hasArg(OPT_stack_first);
|
||||||
Config->ThinLTOCacheDir = Args.getLastArgValue(OPT_thinlto_cache_dir);
|
Config->ThinLTOCacheDir = Args.getLastArgValue(OPT_thinlto_cache_dir);
|
||||||
Config->ThinLTOCachePolicy = CHECK(
|
Config->ThinLTOCachePolicy = CHECK(
|
||||||
|
@ -412,7 +412,7 @@ void LinkerDriver::link(ArrayRef<const char *> ArgsArr) {
|
||||||
Config->ZStackSize =
|
Config->ZStackSize =
|
||||||
args::getZOptionValue(Args, OPT_z, "stack-size", WasmPageSize);
|
args::getZOptionValue(Args, OPT_z, "stack-size", WasmPageSize);
|
||||||
|
|
||||||
if (!Config->StripDebug && !Config->StripAll && Config->CompressRelocTargets)
|
if (!Config->StripDebug && !Config->StripAll && Config->CompressRelocations)
|
||||||
error("--compress-relocations is incompatible with output debug"
|
error("--compress-relocations is incompatible with output debug"
|
||||||
" information. Please pass --strip-debug or --strip-all");
|
" information. Please pass --strip-debug or --strip-all");
|
||||||
|
|
||||||
|
@ -442,7 +442,7 @@ void LinkerDriver::link(ArrayRef<const char *> ArgsArr) {
|
||||||
error("entry point specified for relocatable output file");
|
error("entry point specified for relocatable output file");
|
||||||
if (Config->GcSections)
|
if (Config->GcSections)
|
||||||
error("-r and --gc-sections may not be used together");
|
error("-r and --gc-sections may not be used together");
|
||||||
if (Config->CompressRelocTargets)
|
if (Config->CompressRelocations)
|
||||||
error("-r -and --compress-relocations may not be used together");
|
error("-r -and --compress-relocations may not be used together");
|
||||||
if (Args.hasArg(OPT_undefined))
|
if (Args.hasArg(OPT_undefined))
|
||||||
error("-r -and --undefined may not be used together");
|
error("-r -and --undefined may not be used together");
|
||||||
|
|
|
@ -220,7 +220,7 @@ static unsigned getRelocWidth(const WasmRelocation &Rel, uint32_t Value) {
|
||||||
// This function only computes the final output size. It must be called
|
// This function only computes the final output size. It must be called
|
||||||
// before getSize() is used to calculate of layout of the code section.
|
// before getSize() is used to calculate of layout of the code section.
|
||||||
void InputFunction::calculateSize() {
|
void InputFunction::calculateSize() {
|
||||||
if (!File || !Config->CompressRelocTargets)
|
if (!File || !Config->CompressRelocations)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
LLVM_DEBUG(dbgs() << "calculateSize: " << getName() << "\n");
|
LLVM_DEBUG(dbgs() << "calculateSize: " << getName() << "\n");
|
||||||
|
@ -255,7 +255,7 @@ void InputFunction::calculateSize() {
|
||||||
// Override the default writeTo method so that we can (optionally) write the
|
// Override the default writeTo method so that we can (optionally) write the
|
||||||
// compressed version of the function.
|
// compressed version of the function.
|
||||||
void InputFunction::writeTo(uint8_t *Buf) const {
|
void InputFunction::writeTo(uint8_t *Buf) const {
|
||||||
if (!File || !Config->CompressRelocTargets)
|
if (!File || !Config->CompressRelocations)
|
||||||
return InputChunk::writeTo(Buf);
|
return InputChunk::writeTo(Buf);
|
||||||
|
|
||||||
Buf += OutputOffset;
|
Buf += OutputOffset;
|
||||||
|
|
|
@ -138,7 +138,7 @@ public:
|
||||||
uint32_t getFunctionInputOffset() const { return getInputSectionOffset(); }
|
uint32_t getFunctionInputOffset() const { return getInputSectionOffset(); }
|
||||||
uint32_t getFunctionCodeOffset() const { return Function->CodeOffset; }
|
uint32_t getFunctionCodeOffset() const { return Function->CodeOffset; }
|
||||||
uint32_t getSize() const override {
|
uint32_t getSize() const override {
|
||||||
if (Config->CompressRelocTargets && File) {
|
if (Config->CompressRelocations && File) {
|
||||||
assert(CompressedSize);
|
assert(CompressedSize);
|
||||||
return CompressedSize;
|
return CompressedSize;
|
||||||
}
|
}
|
||||||
|
@ -165,7 +165,7 @@ public:
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
ArrayRef<uint8_t> data() const override {
|
ArrayRef<uint8_t> data() const override {
|
||||||
assert(!Config->CompressRelocTargets);
|
assert(!Config->CompressRelocations);
|
||||||
return File->CodeSection->Content.slice(getInputSectionOffset(),
|
return File->CodeSection->Content.slice(getInputSectionOffset(),
|
||||||
Function->Size);
|
Function->Size);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue