projects
/
qemu.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9e946ea
)
target/arm: Flush high bits of sve register after AdvSIMD EXT
author
Richard Henderson
<richard.henderson@linaro.org>
Fri, 14 Feb 2020 19:46:40 +0000
(11:46 -0800)
committer
Peter Maydell
<peter.maydell@linaro.org>
Fri, 21 Feb 2020 16:07:00 +0000
(16:07 +0000)
Writes to AdvSIMD registers flush the bits above 128.
Buglink:
https://bugs.launchpad.net/bugs/1863247
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id:
20200214194643
.23317-2-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/translate-a64.c
patch
|
blob
|
history
diff --git
a/target/arm/translate-a64.c
b/target/arm/translate-a64.c
index 7c26c3bfebb7c4632911e9261f6d027a652f4f51..620a4290671bd834112369e4668c19c5e485f2ca 100644
(file)
--- a/
target/arm/translate-a64.c
+++ b/
target/arm/translate-a64.c
@@
-6895,6
+6895,7
@@
static void disas_simd_ext(DisasContext *s, uint32_t insn)
tcg_temp_free_i64(tcg_resl);
write_vec_element(s, tcg_resh, rd, 1, MO_64);
tcg_temp_free_i64(tcg_resh);
+ clear_vec_high(s, true, rd);
}
/* TBL/TBX