aboutsummaryrefslogtreecommitdiff
path: root/linux-user/tilegx/target_cpu.h
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2019-05-18 11:37:02 -0700
committerRichard Henderson <richard.henderson@linaro.org>2019-05-22 15:09:43 -0400
commit11e2bfef799024be4a08fcf6797fe0b22fb16b58 (patch)
tree0a5cb2aec8d91f6e6cf68ce2b4962e831ef57314 /linux-user/tilegx/target_cpu.h
parent9e27f58b9902834dffc0d66d9eb62f78d9c2a632 (diff)
downloadqemu-11e2bfef799024be4a08fcf6797fe0b22fb16b58.zip
qemu-11e2bfef799024be4a08fcf6797fe0b22fb16b58.tar.gz
qemu-11e2bfef799024be4a08fcf6797fe0b22fb16b58.tar.bz2
tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store
This instruction raises #GP, aka SIGSEGV, if the effective address is not aligned to 16-bytes. We have assertions in tcg-op-gvec.c that the offset from ENV is aligned, for vector types <= V128. But the offset itself does not validate that the final pointer is aligned -- one must also remember to use the QEMU_ALIGNED() attribute on the vector member within ENV. PowerPC Altivec has vector load/store instructions that silently discard the low 4 bits of the address, making alignment mistakes difficult to discover. Aid that by making the most popular host visibly signal the error. Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'linux-user/tilegx/target_cpu.h')
0 files changed, 0 insertions, 0 deletions