[lld][WebAssembly] Handle TLS symbols in older object file
In older versions of llvm (e.g. llvm 13), symbols were not individually flagged as TLS. In this case, the indent was to implicitly mark any symbols defined in TLS segments as TLS. However, we were not performing this implicit conversion if the segment was explicitly marked as TLS As it happens, llvm 13 was branched between the addition of the segment flag and the addition of the symbol flag. See: - segment flag added: https://reviews.llvm.org/D102202 - symbol flag added: https://reviews.llvm.org/D109426 Testing this is tricky because the assembler will imply the TLS status of the symbol based on the segment its declared in, so we are forced to use a yaml file here. Fixes: https://github.com/emscripten-core/emscripten/issues/15891 Differential Revision: https://reviews.llvm.org/D118414
Loading
Please sign in to comment