On Sun, 18 Jan 2026 10:07:43 +0000
kikairoya wrote:
> 
> 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.

I attempted to build the entire compiler-rt (builtins) as a shared library,
similar to the suggestions in:
https://github.com/llvm/llvm-project/blob/main/compiler-rt/lib/builtins/emutls.c#L388-L389
, and could successfully solve the problem.
Could you please try 21.1.4-2 (Test)?

> 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.

Actually, profiler itself was included, but did not work at all. Both the
compiler-rt package and the llvm package had their own issues. I have
uploaded llvm 21.1.4-2 (Test) and compiler-rt 21.1.4-2 (Test), so please
test the profiler as well.

-- 
Takashi Yano <[email protected]>

-- 
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