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

    <tr>
        <th>Summary</th>
        <td>
            aarch64: use fmov for constant forming of (vect64 float) {1.0f, 0.0}
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    Take:
```
#define vect64 __attribute__((vector_size(8) ))
vect64  float f1( float a)
{
 return (vect64 float){1.0f, 0.0};
}
```

This should just produce:
```
        fmov    s0, 1.0e+0
        ret
```
as fmov in this case zeros the other bits


This is https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113856 for GCC.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0Ul1v3CAQ_DXrFxQL1l_4wQ-5nNw_kPcT2Ngm4cyJhUTNr6-4u7ZRmlrIgJiZnV2NIrLrbswAzQGaY6FS3HwYLnanV6sK7eefw7N6NVA9Aj8Cf4SW39ftitVsFrsb9mam2NbsdFIxBqtTNKcToASU-cWHE9kPAyglYM8A-7yuEnciW5xXkS0CUN7P6g8GusPtwIKJKezsLtvWN2gGdgdR8gXwifGSQ3eE6vCbfPze-_X_vFlitPnkZvaSKLJL8HOa_tsxu3_L2b_lnXguKUpuAA9fMMHEbzUU3eh2ZzGXnxQZ9mGCJxY3w3zcTGDaRvps9JNdS2yL8ULZI46A4zpN5bqn0ocVcNRp_bDOKcCRNv9-0mktp9VCNdoZqqMQlWxatvjAfjw9lcU8VHNf9aowg-h41_Q1Nn2xDUJKga1qtajbrmuwrSspdTtPmi-96uvCDsix5ii46Ota9CXOplK606ppZymlgJqbs7KudO7tnM0VliiZQYqq6wqntHF0TR7ibt7Z9REQcxDDkDkPOq0ENXeWIv1ViTY6MygVpq2toXpkicxtormpye8U1R7z5Wz3lfnlm7ywfwJTpOCGL3O1cUu6nPwZcMzl79vDJfgXM0XA8WqaAMdrU78CAAD__9sJ9YQ">