<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/96362>96362</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[compiler-rt] Clarify support for windows
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
h-vetinari
</td>
</tr>
</table>
<pre>
In https://github.com/llvm/llvm-project/commit/0318ce8552896df7b180ee5481463eada65c755e, @AaronBallman added the following to the [C status page](https://clang.llvm.org/c_status.html) for support of `<complex.h>`:
> `_Complex` support requires an underlying support library such as compiler-rt to provide functions like `__divsc3`, but compiler-rt is not supported on Windows.
The following discussion ensued in the corresponding [PR](https://github.com/llvm/llvm-project/pull/88161):
> > @h-vetinari: I'm surprised about the "compiler-rt is not supported on windows" comment - in our distribution, we've been building compiler-rt on windows for years, and I don't remember significant issues.
> >
> > It's true that `__divsc3` is not available _without_ compiler-rt (i.e. just relying on the msvc runtime libraries), but together with compiler-rt these things are generally possible? Note that a similar [situation](https://github.com/llvm/llvm-project/issues/54596) exists on `osx-arm` for example - in certain situations, linking `compiler-rt` is unavoidable.
>
> @AaronBallman: CC @petrhosek as compiler-rt CRT code owner -- is compiler-rt officially supported for Windows? The official documentation does not mention it under platform support: https://compiler-rt.llvm.org/
That statement of lack of support was now reiterated in https://github.com/llvm/llvm-project/commit/918ef312d1fda56ff783f3974b5a193542e5497c, and so I thought I'd open this issue to discuss.
In [conda-forge](https://conda-forge.org), we've been building and shipping compiler-rt since LLVM 9.0, and I'm not aware of fundamental issues that render the runtime unusable. To the contrary, it's been a [required](https://github.com/conda-forge/flang-feedstock/blob/main/recipe/meta.yaml#L54-57) component to get our flang-support for windows off the ground (which itself was a very [long story](https://labs.quansight.org/blog/building-scipy-with-flang)).
As such, I'd very much like for compiler-rt to stay _at least as usable_ as it has been over the last 5 years, even if perhaps the support may not be on par with other platforms. Better still would be explicit support of course. :)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJycVk1v4zgS_TX0pWBDoiTLOviQOGMgQO9iMWjsHgNKLFmcUKSGH3b87xdF2bEddKMHfUgkU_yoevXeKwrv1cEgbln1zKqXhYhhsG47LI8YlBFOLVorz9tXA0MIk2fFE-N7xvcHFYbYrjo7Mr7X-nh9LCdn_8IuML7v7DgqesmKfNPhpqr4plnLvm7zTYZYlZu8XBcopFhXXV1VyPgOWJk9CWfNs9B6FAaElCghDAi91dqelDlAsGmAVc878EGE6GESB2TVC-ObxzA7LcxhRYGtrDvQwNu8YjWEUTPeQG8d-DhN1gWwPbB1xopdZ8dJ48dqYMUfaeSJZS8se2LFHzTjbTd_Z-vsc63Dv6Ny6EEYiEai02eK9fpZq9YJdwYfuwGEBzpBaXRLFyifydmjkgh9NF1Q1njQ6h3TWW9SHX1XUBh8B20MD2uVB2PD9RiUYA38TxlpT351iTn9__6AoFS-i94rawCNjyhBmYRpZ51DP1kjaRqrnv_z549g_QfVn6LWjO83m3ydM948Qkh_ZXYjGSue4JXxegQf3eSURwmitTHMheb8Vymf5pQZ54TOiCbAknKy0VGywak2Eq4E4QkZr48ILaKBNiqdcr0_4bZhoscZhfO0UhgJryBpm5oqPuLYogNSkOpVJwwF5yN-Qn_N9eHXa2C89hBcRAiDCF-qfM1PHIXSotUIbycVBhvD20OQjG_UClfwV_QUy0w3O5dx9McOXDRBjXihnkJPZbhQKNgDhgEd0NaPZBzQU1zKHDwIh3BAg05ofYbJeq9ajazYw79tuEQvwKtRaeGILl6FKBLQv8eaGT7G91VZNWvSJ34oHzwlxtaZ9R9L4UZCiQqDH4J0OJe6QxeEMvAZQiqZVuY9UXmd3WV5gTkacbRKEsi3it0V69GLiKS75FATBjdYj-9flbz78zt0ViLYk0EHyyWd8sCsvledSmje-EupXDRL0JJUr_NA2i4SnVNGIC3O5KAhGlBhNhuYtAi9deN1Wwr2ixXewrg3xEeTECE5KiYF2R606N7pebWxk6DzT-BQBXQizM7x-62hyTfYFzmXeS9Fte77elP0RVOXbSXypqhKjlXZ1N1Vfd7CK5AYDkNIjiHBTkikV37WHrnpxd4eDPDVED87a6RY9tb9pF3cPs_wND83jBTOoKbpq3t4ZTqEb9_--y9oVtmnbyR7S8I-kaxsT2YvRSquvvjGrCiHqaQk5KuGo4k-0RS-24tRm0ANhbZXs6Gk8ARleelF8pcivIeD73tqlsseUfpgu3fG9622LeP7USjD-N5hpyaaOGIQq7OgBlp8q8plVZNSCQNriDjBwgFDMt95zyt9iOlXZ7V9nzI5OBuNJDs7DaobQAWPuk9ME3BEd6aMtKVeGqw7_ygnLVq_-jsK49VhCBdit9qmx6VeS9-p6bwkv1umoFJxmweOPPnUnwnTmVvp-JFadmrHFP6Xxu2DOMObCKBR-EB-MBfqjV5VgEFcCmOPl5Jqmlfdmgoe0YDqYUI3iMmnOVe8RnFOlGmRDHASF7-2ybqvkvcreMYQqBEFpTWcbNSSluDHpFWnwv39prPReVxBwq5ZyG0hm6IRC9zmdd5kWV1XfDFs27ptat6VuRC85-0m4xnPZdHnayyzbFMv1JZnvMzWPOc8a3K-kijzdSmQl5u6KfKMlRmOQulPr1kkim-bdbHmCy1a1D5dOjk3eJr5zzinO6jbJrto48GzMtPk_7ddggo63Vbv7bx6gZ0WTvWftnpPtUV0evv7rWiO-Ljl_w8AAP__FJO-qw">