<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/63045>63045</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[X86][MC] Linker error when using movdir64b
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
akshaykhadse
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
akshaykhadse
</td>
</tr>
</table>
<pre>
Look at the following code:
```
int main(int argc, char *argv[]) {
int arr[1000];
__asm movdir64b rax, ZMMWORD PTR [arr]
return 0;
}
```
Compiling this code using `clang -O0 -fasm-blocks bug.c` gives the linker error `xxx`
But, according to Intel SDM address to 512-bit data should be supported:
![image](https://github.com/llvm/llvm-project/assets/18427356/670c36a7-4dc4-4fb3-aece-da451169a96e)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUU09vvDYQ_TTmMmJljO2FA4ds0EqVskqVVmrVSzTYBtw1eGWbzebbV5DNn0MvPwkB5nnevHk8Y4x2mI1piDgQxvAcR3w_j6ijIYwR0Wa4pNGH5ieSdV6_N0_enwETpNFA753zb3YeQHltSPlAaEvoA5H0fm1LOyeY0M6EVesrhkER9ghqxACEPWAYrqsM0RJWA9kfPqoAAD62ByIOBaV03VF-oq-vGCeY_FXbIHkHAW8r6T-n01_PLy38_ucLEHHYittvwmDSEmagXzxk3_6v5kc_XaxbJ0ujjdt4sMR1TSRVDucB8mcKeY9xyjvn1TlCtww7RSSFwV5N3Axydj6bACYEH9bK2-321eLjfljSqhuV8kFv_Tz8Nifj4I_2BKh1MDGuH0XB8s4m0JgQ4ugXp6EzEJfLxYdk9Lf7rCDiYCcczOZpNaZ0iSvMjoQdB5vGpdspPxF2dO76-cgvwf9rVCLsiDGaFAk7FhVn-1JIwo5yT1UpcZ9zrXjO-67M0SiTa-SiKGSNtTSE1ZluSl2XNWamKWQlRM0KyrOx0R3jtOZd37OOFQVWjCnWS0UraqQwdWYbRllJJS0opwXnO61NUVWS9Zxq7FVPODUTWrdb1e58GDIb42IaWVIuMoedcfGe59m8wQbewxyabcJuGSLh1NmY4jdLssltB-HvSq6GicPpkYgWnn7-u7fRzPcAfGUuW4JrftncTddq7qb7vwAAAP__W4sSWw">