<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/111126>111126</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Regression from clang 16: missed vectorization in simple array initialization
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          ZY546
      </td>
    </tr>
</table>

<pre>
    reduced code:
https://godbolt.org/z/3MYzE1v7M
```cpp
long arr [20];

void f() {
    for (int i = 0; i < 20; i += 1) 
    {
 arr [i] = 1;
    }
}
```

clang -O3:
```asm
f():
        mov     qword ptr [rip + arr], 1
 mov     qword ptr [rip + arr+8], 1
        mov     qword ptr [rip + arr+16], 1
        mov     qword ptr [rip + arr+24], 1
        mov qword ptr [rip + arr+32], 1
        mov     qword ptr [rip + arr+40], 1
        mov     qword ptr [rip + arr+48], 1
        mov     qword ptr [rip + arr+56], 1
        mov     qword ptr [rip + arr+64], 1
 mov     qword ptr [rip + arr+72], 1
        mov     qword ptr [rip + arr+80], 1
        mov     qword ptr [rip + arr+88], 1
        mov qword ptr [rip + arr+96], 1
        mov     qword ptr [rip + arr+104], 1
        mov     qword ptr [rip + arr+112], 1
        mov     qword ptr [rip + arr+120], 1
        mov     qword ptr [rip + arr+128], 1
 mov     qword ptr [rip + arr+136], 1
        mov     qword ptr [rip + arr+144], 1
        mov     qword ptr [rip + arr+152], 1
 ret
```

expected code (clang 15 or gcc):
```asm
f():
 movaps  xmm0, xmmword ptr [rip + .LCPI0_0]
        movaps  xmmword ptr [rip + arr], xmm0
        movaps  xmmword ptr [rip + arr+16], xmm0
 movaps  xmmword ptr [rip + arr+32], xmm0
        movaps  xmmword ptr [rip + arr+48], xmm0
        movaps  xmmword ptr [rip + arr+64], xmm0
 movaps  xmmword ptr [rip + arr+80], xmm0
        movaps  xmmword ptr [rip + arr+96], xmm0
        movaps  xmmword ptr [rip + arr+112], xmm0
 movaps  xmmword ptr [rip + arr+128], xmm0
        movaps  xmmword ptr [rip + arr+144], xmm0
        ret

```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyklt9u4joQxp_GuRkV2ZP_F7loykE60qnOau-6NyvHNsGrBGdtw7Z9-lVCGhDLUpoiRIw9n2f8g_lk7pyut0oVJC5JvAz4zm-MLb49xVESVEa-FFbJnVAShJGKhPeELgm933jfuf4brgiuaiMr0_iFsTXB1SvBVfj49PoP26ePh3CS0MNbdN1hpjHbGri1QOISKYmXJCzH2OFzb7SENcGMYA4kHdcAANbGAsFMbz1oIOESKAnLYfgA-DbGsl9hg3hSHrcZE2sSL-EQGJanccuxlGnwVv9piaLh2xru_g8nKlMYd-1hZjzBFAHjqzX74fnzl7ESOj-UY3XXV95X1wPBB2Cj6t1wLLMzya2JsGTJbClGf5dekYU4O2NE50vnI4rnI0rOEd2gSefzyebzya7wuSLL57Nh9Mr_5z0tmw-J4XxKDM8x3SIKPwEp-gSk-BySVf6KpannTgk_mn3vsgePYzEYC7UQp1Z2g9m1Zs87B_DctrQv4rltL9W6-O_hy7_0-_CbnJ_wTX_dJ4cEH5WeON-J_ibhZGAzE09WNFM_mcpHC5_sYWbi_AKxDxFnF8jdpsRPMjv20Z8bHLviUm8EsghlHuY8UAVLMaNhHKVJsCnynOciT9cYRwkXNF8rmiWSVilWCQq5DnSBFCNGaUTzmLFkkcYoRVatZSSZUrkiEVUt182iafZtf38KtHM7VTDGGCZBwyvVuOFuhjj0IsEeYGCLXnBX7WpHItpo591xC699o4qvqrbKOW22sLamhbGVExLeQ6udUxL2Snhj9Sv3fZTegtNt16geGH8BvdVe82ZcDna2Kc6ufdpvdtVCmJbgqs8-Pu46a34o4QmuhtM4gqvxQPsCfwcAAP__AF3XUg">