20b6643324
The old ppc64 implementation replaces 2 or 4 insns, which leaves a race condition in which a thread could be stopped at a PC in the middle of the sequence, and when restarted does not see the complete address computation and branches to nowhere. The new implemetation replaces only one insn, swapping between b <dest> and mtctr r31 falling through to a general-case indirect branch. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> |
||
---|---|---|
.. | ||
aarch64 | ||
arm | ||
i386 | ||
loongarch64 | ||
mips | ||
ppc | ||
riscv | ||
s390x | ||
sparc64 | ||
tci | ||
meson.build | ||
optimize.c | ||
region.c | ||
tcg-common.c | ||
tcg-internal.h | ||
tcg-ldst.c.inc | ||
tcg-op-gvec.c | ||
tcg-op-vec.c | ||
tcg-op.c | ||
tcg-pool.c.inc | ||
tcg.c | ||
tci.c |