[PATCH] D128515: [lld][WebAssembly] Don't apply data relocations at static constructor time

Sam Clegg via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 24 04:32:14 PDT 2022


sbc100 created this revision.
Herald added subscribers: pmatos, asb, wingo, ecnelises, sunfish, jgravelle-google, dschuff.
Herald added a project: All.
sbc100 requested review of this revision.
Herald added subscribers: llvm-commits, aheejin.
Herald added a project: LLVM.

Instead, export `__wasm_apply_data_relocs` and `__wasm_call_ctors`
separately.

This is required since user code in a shared library (such as static
constructors) should not be run until relocations have been applied to
all loaded libraries.

See: https://github.com/emscripten-core/emscripten/issues/17295


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D128515

Files:
  lld/test/wasm/data-segments.ll
  lld/test/wasm/pie.ll
  lld/test/wasm/shared-weak-symbols.s
  lld/test/wasm/shared.s
  lld/test/wasm/shared64.s
  lld/test/wasm/tls-export.s
  lld/test/wasm/tls-non-shared-memory.s
  lld/wasm/Driver.cpp
  lld/wasm/Writer.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D128515.439699.patch
Type: text/x-patch
Size: 12385 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220624/74ef7d5b/attachment.bin>


More information about the llvm-commits mailing list