[all-commits] [llvm/llvm-project] eb6d51: [Cygwin] Enable TLS on Cygwin target (#138618)

Tomohiro Kashiwada via All-commits all-commits at lists.llvm.org
Tue May 6 13:38:39 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: eb6d51a2fdddcc305b51f7d412d0e5144cbd444d
      https://github.com/llvm/llvm-project/commit/eb6d51a2fdddcc305b51f7d412d0e5144cbd444d
  Author: Tomohiro Kashiwada <kikairoya at gmail.com>
  Date:   2025-05-06 (Tue, 06 May 2025)

  Changed paths:
    M clang/lib/Basic/Targets/X86.h
    M clang/test/Driver/emulated-tls.cpp

  Log Message:
  -----------
  [Cygwin] Enable TLS on Cygwin target (#138618)

Cygwin environment and toolchain supports EMUTLS.

From
https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=config/tls.m4;hb=HEAD#l118,

```
$ LANG=C gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/15/lto-wrapper.exe Target: x86_64-pc-cygwin
Configured with: (snip)
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 15.0.1 20250406 (experimental) (GCC)

$ echo '__thread int a; int b; int main() { return a = b; }' | gcc -S -xc -o- - | grep __emutls_get_address
        call    __emutls_get_address
        .def    __emutls_get_address;   .scl    2;      .type   32;     .endef
```



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list