<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/82725>82725</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
16bit aligned access uses load_byte with -mno-unaligned-access
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
wzssyqa
</td>
</tr>
</table>
<pre>
```
#include <stdio.h>
volatile
struct s
{
char c[2];
int i;
long long l;
float f;
double d;
} __attribute__ ((packed)) s __attribute__((aligned(1) ));
int main() {
s.i = 0x12345678;
printf ("%x\n", s.i);
}
```
Lots of load_byte instructions are used. In fact we can use load_half in this case.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxckt2O4yoMx5_GubEaEROa5CIXM5NT6Uj7DhUB0rBLoRvIdGaffpUPTTuLIseYn8H-g4zRXrwxLYhXEF0m5zSGqb3_ifHzt8z6oD9bOLL9Yx2wFyBuvXKzNgj8LSZtQz4C_29fXe17cDJZZ7ZZTNOsEsadqF43B1GNckIF4pVAdMC_4tYntI-5C_6ymydocEEmHJ4iOsy9M6i_QlB1eD7LlCbbz8mczwhUA9U3qX4ZDdQANRi_Ixsh3SKLBqqLhdnQx76rXaq8SuvXjAaf-tpGzC0C75B9FMRLcazqp1q3cZusT8NWFQGJDxBvfnXflvRvZ1bd7vxzHav9EVLEMKALUp_7z2TQ-k12G3xEORmco9E5_u9xkCrh3aCSfgluOaN0A1qPabQRlYwmz3TLdcMbmZm2qFh9FGXNKRvbytTEGUneN4U8FmU_1HUvj0xLUxpVmMy2xKhktFDEOOWVFA1TRgmmNRtqDiUzV2ld7tz7NQ_TJbMxzqatqSKROdkbF9cXSeTNHdfFRRXRZVO75Bz6-RKhZM7GFB-7JJucaYtjbxPuN4hSKRPj0mh8Uudu04iHqw-H2e_kYSOzeXLtmNItAn8BOgGdLjaNc5-rcAU6LYftv8NtCj-NSkCntcQIdFpb-BsAAP__aZD6nw">