<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62309>62309</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang]: The output result is incorrect after the speculative_load_hardening attribute is added.
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
llongint
</td>
</tr>
</table>
<pre>
cat test.c
```cpp
#include <stdio.h>
__attribute__((speculative_load_hardening))
int main() {
unsigned char arr[] = {1,2,3,4,5,6};
for (char i = 0;i < 6;i++)
printf("%d", arr[i]);
printf("\n");
return 0;
}
```
```bash
$ clang -O0 -lpthread t2.c -o 15
$ ./15
```
No output is printed. Actually, 123456 should be printed.
`Note`: My machine is aarch64.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0U8tu6zgM_Rp6Q8SQKduJF16kzmQ3dzazD2RJiTVQJEOPAv37gZW0zS1wDcJ68VCHh5SI0dyc1iN0b9CdKpHT4sNorXc341I1e_UxSpEw6ZhqCewE7Ag9e5hc1-cOceOkzUoj8CkmZXy9AP_reVr-l4tIKZg5J325AB2ADnHVMluRzLu-WC_UZRFBaWfcDWjYrACNS3gXxhXMgLB_e-wjImZX-CuUiwgoQnjkgcBPm2MDNBHQxIGmFmjqgKYe9ifgLzGuPiDQoUQwBcmAv22zCfttBvRWbPjGbN8ajEvXwoqAOlWG6UnCQHfaEK8X_QboJlcALy5Bpxxcuf0p3P70Q_Efy1nE5bMCLUor3A13_zDc2TUtQQuFiWqJO49N9-1XA52_1r9H_uXR57TmhCY--GpV41GmLKz92NJriLddj3Hx2Sqc9ZfXa62hZ7980ltYfsS_P_Au5GKc3qIKEeTSt3WlRq4GPohKj01_IGpbRk21jKyb91ypq5BcKD43Bz7MTA_UHBpOPcnKjMSIs5Z4wxijpp73WjI580E1ot8PB2iZvgtja2vf77UPt8rEmPXYE2dDZcWsbfzs-K3Z3--7Od8itMyamOI3LJlky9so0m4l5Uf8d9GfIgUdsy1aGSd9CFomFNekA6ZF45_bG7-eQlFEKa3qKgc7LimtEfgR6Ax0vpm05LmW_g503kg9h90a_H9aJqBzSSwCnUtu_wcAAP__d8wZhA">