2026年1月18日 16:45:44 (+09:00) で、Takashi Yano さんが書きました:

> Thanks for pointing this out.
> 
> The comment in the emutls.c explains that.
> https://github.com/llvm/llvm-project/blob/main/compiler-rt/lib/builtins/emutls.c#L378-L389
> 
> Do you think this is a defect we should accept?
> 

The restriction might be acceptable if there is a great gain with using
compiler-rt, but I feel linking to cyggcc_s.dll is not so bad.

If you are planning to provide a package built with compiler-rt, especially
one that contains a DLL, I would say, "Please don't do that." It's very
different if someone decides to build their own application with compiler-rt
and takes responsibility for doing so. Before providing such a package, the
implementation of native TLS in cygwin1.dll is needed, as well as an update
to the toolchains to use it (and, I guess, it is impossible to switch with
keeping ABI). That changes the fundamental design of the distribution.


BTW, the profiler that provided by compiler-rt (unfortunately, it isn't included
in your package; available without -rtlib=compiler-rt, it works fine even with
libgcc_s) is definitely great; clang built with profile guided optimization
reduces 20% of walltime to build LLVM in GitHub Actions.

-- 
Tomohiro Kashiwada (@kikairoya)


-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to