<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/104416>104416</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[sve] should support the sve for __bf16 similar to type float
</td>
</tr>
<tr>
<th>Labels</th>
<td>
SVE
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
vfdff
</td>
</tr>
</table>
<pre>
* test: https://gcc.godbolt.org/z/cbT1aE7j5
```
typedef __bf16 baseType;
// typedef float baseType;
baseType* test_ret_bf16(baseType* a, baseType* b, baseType* c) {
for (int i = 0; i < 10000; i++) {
c[i] = a[i] + b[i];
}
return c;
}
```
* the above case don't generate sve even with option **-march=armv8.5a+sve2**. But it we change the type **baseType** from __bf16 to float , it will works fine.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxsU99uqzwMfxpzYw0lpkB7wUVZ1xf4pu92SsCU7KSkSgLTztMfkdFtZzpSBPG_X-yfbRWCuUzMDZQtlKdMzXF0vlmGfhgy7fr3BuiIkUOE4ohjjLcAxRHoDHS-dF1-cb12NubOX4DOv4HOnX6W6ql-LUGcQByhEttJYny_cc8DvrzoQVaoVeDn9xtD0W7uCRnvboN1Kv7DK30_1VuGL55jggXaf7cpoEf8rtA_FR3QAaHe0BEH5xFob6aIBqE4oYCiTddHlEKIDxGoTeevUMQOytZAeUqB6lOgFvUmfNaBCPXpfvUcZz9h91Xl3faDwztTR4wjo9JuYexUYOzdBFRHvPDEXkXGsDDywhO-mTiiu0XjJgRaYx-uyncjFCflr8s-LxVQGxamD2uO7RzRRHxj7EY1XTi9tbZli_9G35rJ4N313tTotr6tNK8Yxlp8c_5XwMFMnGd9U_SH4qAybmRNRS32hayysZHEVafqUnS12vdEYtCsBqr2O9kzVyIzDQnaib0sRV3KssoHKQ-yqmVZ6r4gvYOd4KsyNrd2ua5DmZkQZm6k2O1klVml2YY060T__f8EROvQ-2Z1f9DzJcBOWBNi-AKIJtq0HmHhtZFhdLPtMcy3m_Mx0bLSvI7MVn8wV2OVX3lIhCUystnb5sf-mDjOOu_cFei8vrf9Hm7evXIXgc4p-wB03gpYGvoTAAD__6yQF3M">