<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/57732>57732</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
armel: regression in clang-14 on `invalid output constraint '+g,w' in asm`
</td>
</tr>
<tr>
<th>Labels</th>
<td>
backend:ARM,
regression
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
sylvestre
</td>
</tr>
</table>
<pre>
```
template <typename Packet> void psincos_float(Packet &_x) {
__asm__("" : "+g,w"(_x));
}
```
$ clang-13 foo.cpp
works
$ clang-{14,15} fails with:
```
foo.cpp:3:16: error: invalid output constraint '+g,w' in asm
__asm__("" : "+g,w"(_x));
^
1 error generated.
```
This code can be found in Eigen:
https://gitlab.com/libeigen/eigen/-/commit/82d61af3a490154ad1c0ae2fe00c561095854897#859198abc81bc7db86d6add0a16b27c957a7358b_1066_1114
Initially reported here:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1017765
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJylU01vnDAQ_TXmYi3yBxg4cEiyidRDparqHdl4YN2wgLDZdP99x7BNGvVDqoqMPfbYz2_ejM1krzVR7NbYkbC7AOd50AEokQ_hOsOoz0A_6fYZApGP9DI5S2fvxnbyTTdMOhBR7m5KhGq-EVFRUtzvYJQ2jfbnpsFNRAhsCHtHN_O-J-LhZTPL7Vhs8naQFMebsffvORKR0XbQY3_gknbTlLbzTHfXy7Q8-3dHX_ciK57hnTxHdNppN3j64sIJGf32lhswuiX-XEXmsCzTEg03XvSAUkxrmNdA22n0YdFujCoUb8EVuJGiAv8pB33_kfxxX-c7IdrDCAsmzaZ_Ue3LyXkkaoG2eqQGULl1tJHgo0OAVxlOIcw-zsQTtt6FQZu0nc44GZyBba94-jEe8Efn2WEhPJXCKq47qbOK8TzTlrdMg-iAsTZXnFV5mWdlhQLJMq94VWrTlty0hTWlskpbyzRXRhRtlRe6kHlpGs6UajjH1P0c2tZ_GF1wehiudIF5WjB-eoIF_hCJWXufWjBOj-m09JF37w7Gjbtvh0hxjcg4J_LIGS8Kle9gCdRcKcllUUqe2FraSlY6CagP1Ho5wxBzuQACee-mMQp7K9KM4hTz8K9Fo1iyLkP9S0JO62tChsuP4TAv01doYxqc9yt4NPKikCI51ZlUWckzWyluhWbWguWmADCmE9yWPMEUw-Brkt9jBZr4nEeLN959_rhV5EOs0bfQ4lp-TFwtmBCs4hlTmcxZyisheV6A7Ixsu86QjMEZ31ka-UXNk6XeqMZUoHNwPvg3p0bwfgTYaCC-XsNpWmp_HS6AQkGyxVVvQX0Hc0Nc0A">