[PATCH] D111101: [lld][WebAssembly] Remove redundant check for undefined global (NFC)
Sam Clegg via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 4 16:43:27 PDT 2021
sbc100 added a comment.
we return `true` uncondition
================
Comment at: lld/wasm/Relocations.cpp:45
- if (g->importName)
- return true;
return config->allowUndefinedSymbols.count(sym->getName()) != 0;
----------------
aheejin wrote:
> sbc100 wrote:
> > Actually there was a recent refactor that made `importName` a (optional) member of the Symbol superclass.. so I think this can be written as:
> >
> > ```
> > if (sym->importName)
> > return true;
> > if (isa<UndefinedFunction>(sym) && config->importUndefined)
> > return true;
> > ```
> >
> > But if you would rather land this as is that is fine too.
> > if (isa<UndefinedFunction>(sym) && config->importUndefined)
>
> Isn't this `||` in the current code?
>
> Also, if we return `true` unconditionally when `sym->importName` is defined, I think we return `true` for data or tables. Is that what you intended?
Yes, any symbol with an explicit `importName` should always be imported and never have "undefined symbol" reported about it.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D111101/new/
https://reviews.llvm.org/D111101
More information about the llvm-commits
mailing list