aboutsummaryrefslogtreecommitdiff
path: root/rust/qemu-api
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2024-12-15 10:06:07 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2025-01-23 11:35:33 +0100
commit6986cf003226ddf7e5af36a9f4f033cb16c8636c (patch)
treecf6f1c567f53acc646034fa796596671bcf606ce /rust/qemu-api
parent0d82d9e84644ecee3e626bdf204e9847ffe10bce (diff)
downloadqemu-6986cf003226ddf7e5af36a9f4f033cb16c8636c.zip
qemu-6986cf003226ddf7e5af36a9f4f033cb16c8636c.tar.gz
qemu-6986cf003226ddf7e5af36a9f4f033cb16c8636c.tar.bz2
target/i386: make cc_op handling more explicit for repeated string instructions.
Since the cost of gen_update_cc_op() must be paid anyway, it's easier to place them manually and not rely on spilling that is buried under multiple levels of function calls. While at it, clarify the circumstances in which the gen_update_cc_op() is needed, and why it is not for REPxx SCAS and REPxx CMPS. And since cc_op will have been spilled at the point of a fault, just make the whole insn CC_OP_DYNAMIC. Once repz_opt is reintroduced, a fault could happen either before or after the first execution of CMPS/SCAS, and CC_OP_DYNAMIC sidesteps the complicated matter of what x86_restore_state_to_opc would do. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Link: https://lore.kernel.org/r/20241215090613.89588-9-pbonzini@redhat.com Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'rust/qemu-api')
0 files changed, 0 insertions, 0 deletions