<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">