<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/124907>124907</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang-cl] arm_neon.h: cannot mangle built-in type __mfp8
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
tycho
</td>
</tr>
</table>
<pre>
On the `release/20.x` and `main` branches, when targeting ARM64 on clang-cl:
https://gcc.godbolt.org/z/Mx1Y8hze4
```
In file included from <source>:1:
/opt/compiler-explorer/clang-trunk-20250129/lib/clang/20/include/arm_neon.h(41124,1): error: cannot mangle this built-in type: __mfp8 yet
41124 | __ai __attribute__((target("fp8,neon"))) bfloat16x8_t vcvt1_bf16_mf8_fpm(mfloat8x8_t __p0, fpm_t __p1) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41125 | bfloat16x8_t __ret;
| ~~~~~~~~~~~~~~~~~~~
41126 | __ret = (bfloat16x8_t) __builtin_neon_vcvt1_bf16_mf8_fpm(__p0, __p1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41127 | return __ret;
| ~~~~~~~~~~~~~
41128 | }
| ~
/opt/compiler-explorer/clang-trunk-20250129/lib/clang/20/include/arm_neon.h(124,14): note: expanded from macro '__ai'
124 | #define __ai static __inline__ __attribute__((__always_inline__, __nodebug__))
| ^
1 error generated.
```
Just including `<arm_neon.h>` causes a compile error, due to the `__mfp8` type. This prevents compiling any Windows ARM64 code that includes the intrinsics header.
Can someone get this fixed before LLVM 20 release please?
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJy8Vd-PozYQ_msmL6NEYCAhD3nIZRep1Z0qVVWrPlnGDODW2Mg22eQe7m-vDOS6u7pWVaUWWQnG9vz4Zr7PwnvVGaITFB-geNqIKfTWncJd9nZT2-Z--sFg6AlhnzjSJDwBq1iyu8E-QWGauDAIZeK0dsLInjywC770ZDAI11FQpsPzj5_2OVqDUgvTbaWG7AxJHH0Io48zVgGrOil3nW1qq8POug5Y9RlY9emW_lr2nylfjsA-WUdy_s5gqzShMlJPDTXYOjsgZBdvJycJsmfIzunqjVV2DMAqaYdRaXJbuo3aOnLx2xxYcJP5fcsSViQpOwKrtKofi3PiwKrVFbBKuIEbsmbXAyvzNGU5sEsK7AjZGck56-KLFMbYgIMwnSYMvfJYT0qHrTIY7iPFPcj50I4l3ilAcsbZFsLhgpwLFX9CcKqeAnEOrARWLtDO76wdS2CXGAgwFr3PA-tWWxHS_a3kAa_yGlJet-meD23J23EAVg7zjnLewPmYxMK147DMYh4Ihw8xnuWJ8UDx_OX_eR44FLNffJsO544CZO-CQ_wbO_sVT0cBIXtCYOVrkzFbzufCKDNXlX8TswdOK0JrDH_p_d_nfViNOgqTM_8s48fZcqnV4ent7i__OQlWCuQrB4wNc3vTbRTmKzsHIZ1FYIfY3MAOc5CPhgeWNdQqQ0vr-yCCksi5MloZ4vxbZOBc6Bdx9183LQUytqF66uJ05sQDiwW4Vw8Uz5Cc04Wy2JEhJwI1u3daA8n5-8mHVWuirMXv2eUVAtlzFEKUYvLkUeAK8ioG7ILNRBjsQ1IX1scjUQh2-FMUh9HRlUzw6-HoR5g7_qJMY1_8KqXSNlFLxCMa8rNNZYJTxivpsSfRkNstcV-EQW8Hsoawo7CoUKtu1GBNrXWEHz_-_AlZgqvK47iIfVZtmlPWHLOj2NApPWRlWiRpud_0JyZzmWWFyPO6yBvGDkdK86Nsj61gMpHlRp0ePZSm7Jjvd2lSiCxP0ibL27ZODpAnNAild1pfh6j3G-X9RKeU5cfksNGiJu3nq4kxQy84r0aNK5427hQPbeup85AnWvng_zQTVNDznfb1uime8HWZ3qvyG0FexXgzOX16dz2p0E_1TtohskJfH3_b0dnfSEZazTF6YNWaxPXE_ggAAP__6Upmhg">