[all-commits] [llvm/llvm-project] 597266: [WebAssembly] Strip TLS when "atomics" is not enabled

Dan Gohman via All-commits all-commits at lists.llvm.org
Fri May 20 15:20:16 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 59726668f1dcb32883de4cf027fe3585ca384cf5
      https://github.com/llvm/llvm-project/commit/59726668f1dcb32883de4cf027fe3585ca384cf5
  Author: Dan Gohman <dev at sunfishcode.online>
  Date:   2022-05-20 (Fri, 20 May 2022)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/test/CodeGen/WebAssembly/target-features-tls.ll
    M llvm/test/CodeGen/WebAssembly/tls-general-dynamic.ll
    M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll

  Log Message:
  -----------
  [WebAssembly] Strip TLS when "atomics" is not enabled

With f3b4f99007cdcb3306484c9a39d31addc20aaa69, the exclusive source of
truth for whether threads are supported is the -matomics flag.
Accordingly, strip TLS flags when -matomic is not specified, even if
bulk-memory is specified and it would theoretically be supportable.
This allows the backend to compile TLS variables when -mbulk-memory is
enabled but threads are not enabled.

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




More information about the All-commits mailing list