<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/56165>56165</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Backend error when compiling x86 AMX-INT8 code with -Od
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
mpermino
</td>
</tr>
</table>
<pre>
Reproduced @ OS Windows 11, clang 14.0.5 (the binary from https://github.com/llvm/llvm-project/releases/tag/llvmorg-14.0.5).
$ clang.exe -c -Od -mamx-tile -mamx-int8 amx_test2.c
>> 3. Running pass 'Function Pass Manager' on module 'C:\work\gb\amx_test2.c'. >> 4. Running pass 'Fast Tile Register Configure' on function '@do_tmul'
With /O2 it compiles successfully.
The code is as small as:
#include <immintrin.h>
void do_tmul(int* C)
{
__tile1024i c_tile = {16, 16};
__tile_zero(&c_tile);
__tile_dpbssd(&c_tile, c_tile, c_tile);
}
[amx_test.zip](https://github.com/llvm/llvm-project/files/8961068/amx_test.zip)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzlVEtv2zAM_jX2hYhhy4_YBx-aZAF26Dp0BbZbIFuMo1W2Aklu2v76UY7Txx6HnmcIEiVSHynyoxstnupbPBotxhYFBFkMN9_guxyEPllIkoCtoVV86CDJojjKIWClOyA0cuDmCfZG93Bw7miD9CpgWxqddIexiVrd00aph8uyICc_sXW0NaiQW7QkOt7Nem26xdlHwKooiDdBTIjZ2XuEjwiwaGFxI2DR8_5x4aTCWZSDK4GEnUPrWNTCfDv9RAPSCKbvdhwGSQ85cmvpGcvtOLRO6gG--oNrPvAODZ0DHfWUD4Kn3do_LF-ftLmnpWtoeuOJDGb0_-KbM5r9K6PcOrjzdbnFTlqHBtZ62MtuNDgndn9JOu2JbELvXD8qr3zv6FzAaf5OhCLz7Q0D6YB4dSQPFuzYtmjtflTqaabLHRGz1QJBWuBk0XOlSPAVfIMXsFQOrRrJLkjXsu-JPkYO0cG_brJ40FLAS2gl6QN2BWvi5YywXM0R-lh3O0_FJGaZhHaSCXcDZJQUvn1oXm6CdPX7jd0zGk3wASvO1zz-X8zEsbFWvDdcw5_S62Xv7wXlkst8deFt9CyPQb4hxA937t6nntayKpK4oIi270BfEjTNoahTUaUVD510CusVb-9xEIDGaAOnAw5zNT2HHssCrq5_LD5_uSvPRTz5ulO_h6NR9YcjldaOU6h5kRR5eKjbuIkbIbBZJk1VYZVj3DAu9vuqijFbNqHiDSpbU6IoOaGsWcxYXDCa0iTNozjPWVYWmC5FmWcxI_Ziz6WKvOOI_l6hqacYmrGzpFTUAPZVSS0iuwHxgs9Hd9Cm7o9oiIA6nOKtp2B_AWdpkfY">