<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/102418>102418</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[llvm] Deal vector data failed when using option Os、-mfloat-abi=softfp、--target=armebv7-linux
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
Zhenhang1213
</td>
</tr>
</table>
<pre>
I find results in armebv7-linux are different from armv7.
code
'''
#include <stdio.h>
volatile int one = 1;
int main (int argc, char *argv[]) {
__attribute__((vector_size((8)*sizeof(short)))) short v0 = {one, 1, 2, 3, 4, 5, 6, 7};
__attribute__((vector_size((8)*sizeof(short)))) short v1;
v1 = v0 % 2;
for (int __i = 0; __i < 8; __i++) {
printf("v1: %d\n", (*((short *) &(v1) + __i)));
}
return 0;
}
'''
When __i is 4, the result is different. I think this Instruction: **vrev32.16 d17, d18** is wrong, and I try to modify it is **vmov.16 d17, d18**, the result is right. However I don't know how to fix this bug.
https://godbolt.org/z/EqYebY73z
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysVE1zozgT_jXNpcsUtIzBBw52HNeb03vcmr24BBKgHZC8ksCT_PotCZJMstdNqTrq7-dp2uLOqV5LWUNxhuKS8NkPxtZ_DlIPXPc55SxpjHitX7BTWqCVbh69Q6WR20k2S7kblZ5_IXIrUaiuk1Zqj501U4hYyhQhu0B2ao2Q6w2o3M6mMqXbcRYSgT05L5RJB2DPW95iRu7VKFFpj0aHoAvmwM5bdpTBN3GlEagKd277FugJ24FbBDpx2y8rQ6AjQrklIyLebtx7q5rZy9sNqAKqFtl6Y29OvcnVUAEdgU7BYDqgyg3G-mjbDkYLLllEB-XZaBn650FQECyIfRBFEIcgSigvH0T-cyz5l9JLHqEFhFQgATvjp7Mz9n1yt5uKgVmIWJUnrDYF6BxPHOFv-eHvbpX2XcRIofcpNBJQPGmgOIHoOq0kVohRPSLQIRDN1_vW6J3PF5xhXh-KlX62OgLdVuHd-33BovxjkDoSUm79Dn6Q2zoH08fqpviCflD6Z5AOX7Tzdm69MnrldAI6LVYujNL8sHEXeRkqinxleAoFH9boPliRaxFq2lf0BicjVPeKKjbdqk1mCbW-V_k3SKv6waf4P_OQi7T4gsJooNLjT20eOJhH6NCpXyv0Zu7T3ycweH93wE5AV6Brb0RjRp8a2wNd34Cuz3__kM2Pkr2t4YmomTiyI09knZfEsupY5CwZ6rLMD1kjqai65tg1rKsOXZs1GS-ytuNCJqqmjPZZlVUZKyrG0pYKceCS2v3-mJXFEfaZnLga03FcpoAgUc7Nss4z2udVMvJGji4-SURaPjB6wxoVl8TWIWnXzL2DfTYq591nGa_8GN-yYIHighfJR1x_Qyi459hxNUqBj7ANs1O6R3MPHxf_7-CZQZVBle-mbjTc73ijgF2c6Xx3_3TuPLe99MAuX17AZLZj_W3Eyg9zk7ZmArpGROu_3d2av2Trga6RmQO6btSXmv4JAAD__2ppmqk">