qemu/target/i386/tcg
Paolo Bonzini d4f611711a target/i386: move operand load and writeback out of gen_cmovcc1
Similar to gen_setcc1, make gen_cmovcc1 receive TCGv.  This is more friendly
to simultaneous implementation in the old and the new decoder.

A small wart is that s->T0 of CMOV is currently the *second* argument (which
would ordinarily be in T1).  Therefore, the condition has to be inverted in
order to overwrite s->T0 with cpu_regs[reg] if the MOV is not performed.

This only applies to the old decoder, and this code will go away soon.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-12-29 22:04:15 +01:00
..
sysemu accel/tcg: Replace CPUState.env_ptr with cpu_env() 2023-10-04 11:03:54 -07:00
user target/i386: implement SYSCALL/SYSRET in 32-bit emulators 2023-06-26 10:23:56 +02:00
bpt_helper.c compiler.h: replace QEMU_NORETURN with G_NORETURN 2022-04-21 17:03:51 +04:00
cc_helper_template.h.inc target/i386: Rename helper template headers as '.h.inc' 2023-06-13 11:28:58 +02:00
cc_helper.c target/i386: clean up cpu_cc_compute_all 2023-12-29 22:03:02 +01:00
decode-new.c.inc target/i386: do not decode string source/destination into decode->mem 2023-12-29 22:03:18 +01:00
decode-new.h target/i386: add X86_SPECIALs for MOVSX and MOVZX 2023-12-29 22:03:15 +01:00
emit.c.inc target/i386: add X86_SPECIALs for MOVSX and MOVZX 2023-12-29 22:03:15 +01:00
excp_helper.c target/i386: remove unnecessary arguments from raise_interrupt 2023-12-29 22:02:55 +01:00
fpu_helper.c target/i386: clean up cpu_cc_compute_all 2023-12-29 22:03:02 +01:00
helper-tcg.h target/i386: remove unnecessary arguments from raise_interrupt 2023-12-29 22:02:55 +01:00
int_helper.c target/i386: clean up cpu_cc_compute_all 2023-12-29 22:03:02 +01:00
mem_helper.c target/i386: Inline cmpxchg16b 2023-02-04 06:19:43 -10:00
meson.build i386: split svm_helper into sysemu and stub-only user 2021-05-10 15:41:51 -04:00
misc_helper.c target/i386: clean up cpu_cc_compute_all 2023-12-29 22:03:02 +01:00
mpx_helper.c i386: move TCG cpu class initialization to tcg/ 2020-12-16 15:50:33 -05:00
ops_sse_header.h.inc target/i386: implement SHA instructions 2023-10-25 17:35:07 +02:00
seg_helper.c target/i386: clean up cpu_cc_compute_all 2023-12-29 22:03:02 +01:00
seg_helper.h i386: split seg_helper into user-only and sysemu parts 2021-05-10 15:41:52 -04:00
shift_helper_template.h.inc target/i386: Rename helper template headers as '.h.inc' 2023-06-13 11:28:58 +02:00
tcg-cpu.c target/i386: Fix 32-bit wrapping of pc/eip computation 2023-12-12 13:35:08 -08:00
tcg-cpu.h target/i386: Move X86XSaveArea into TCG 2021-07-06 08:33:51 +02:00
tcg-stub.c
translate.c target/i386: move operand load and writeback out of gen_cmovcc1 2023-12-29 22:04:15 +01:00