[PATCH] D130053: [WebAssembly] Use `localexec` as default TLS model for non-Emscripten targets
Dan Gohman via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 20 10:05:45 PDT 2022
sunfish added inline comments.
================
Comment at: llvm/test/CodeGen/WebAssembly/tls-general-dynamic.ll:2
-; RUN: not llc < %s -asm-verbose=false -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -mattr=+bulk-memory,atomics 2>&1 | FileCheck %s --check-prefix=ERROR
-; RUN: not llc < %s -asm-verbose=false -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -mattr=+bulk-memory,atomics -fast-isel 2>&1 | FileCheck %s --check-prefix=ERROR
; RUN: llc < %s -asm-verbose=false -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -mattr=+bulk-memory,atomics --mtriple wasm32-unknown-emscripten | FileCheck %s --check-prefixes=CHECK,TLS
----------------
penzn wrote:
> sunfish wrote:
> > abrown wrote:
> > > @sbc100, @sunfish: I am not exactly sure what to do here. Ideally it would be nice to test that the "no-Emscripten, general dynamic, no DSO local case" actually emits the same code as localexec, but this test does not seem set up for this.
> > I suggest leaving this test as-is, because updating it to handle non-Emscripten targets would require adding all new CHECK lines, which would be a lot of clutter. I suggest just adding RUN lines to tls-initial-exec.ll, or perhaps making a copy of that file, to test this feature.
> The test would fail if these two lines are preserved, because they check that default behavior is to throw an error.
Ah, right. Can we just disable non-Emscripten targets here? My main thought here is to avoid needing to add all the CHECKs for local-exec code in tls-general-dynamic.ll.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D130053/new/
https://reviews.llvm.org/D130053
More information about the llvm-commits
mailing list