[all-commits] [llvm/llvm-project] 67b055: [lld][WebAssebmly] Preserve custom import attribut...

Sam Clegg via All-commits all-commits at lists.llvm.org
Wed Oct 16 22:15:51 PDT 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 67b055841f3b64efd1e92bde3ed7aeeb493c1182
      https://github.com/llvm/llvm-project/commit/67b055841f3b64efd1e92bde3ed7aeeb493c1182
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2019-10-17 (Thu, 17 Oct 2019)

  Changed paths:
    A lld/test/wasm/Inputs/import-attributes.ll
    A lld/test/wasm/import-attribute-mismatch.ll
    A lld/test/wasm/lto/import-attributes.ll
    M lld/wasm/InputFiles.cpp
    M lld/wasm/LTO.cpp
    M lld/wasm/SymbolTable.cpp

  Log Message:
  -----------
  [lld][WebAssebmly] Preserve custom import attributes with LTO

Undefined symbols in WebAssembly can come with custom `import-module`
and `import-field` attributes.  However when reading symbols from
bitcode object files during LTO those curtom attributes are not
available.

Once we compile the LTO object and read in the symbol table from the
object file we have access to these custom attributes.  In this case,
when undefined symbols are added and a symbol already exists in the
SymbolTable we can't simple return it, we may need to update the
symbol's attributes.

Fixes: PR43211

Differential Revision: https://reviews.llvm.org/D68959

llvm-svn: 375081




More information about the All-commits mailing list