[PATCH] D91276: [WebAssembly] Add new relocation types for TLS data symbols
Thomas Lively via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 12 22:53:49 PST 2020
tlively added a comment.
Why are there separate versions of the new relocation for both i32 and sleb128? Do we use both of them?
================
Comment at: lld/test/wasm/tls.s:10
global.get __tls_base
- i32.const tls1
+ i32.const tls1 at TLSREL
i32.add
----------------
Was the previous direct addressing relocation implicit in `i32.const tls1` because it used a symbol name in place of a number literal?
================
Comment at: lld/wasm/InputFiles.cpp:242
+ // backward compat with old object files built with `-fPIC`.
+ if (D->segment && D->segment->outputSeg->name == ".tdata")
+ return D->getOutputSegmentOffset() + reloc.Addend;
----------------
What about `.tbss`? Are there other possible thread-local section names? Same question down in `scanRelocations` and elsewhere.
================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp:246
+ArrayRef<std::pair<unsigned, const char *>>
+WebAssemblyInstrInfo::getSerializableBitmaskMachineOperandTargetFlags() const {
+ static const std::pair<unsigned, const char *> TargetFlags[] = {
----------------
What is this function used for?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D91276/new/
https://reviews.llvm.org/D91276
More information about the llvm-commits
mailing list