aboutsummaryrefslogtreecommitdiff
path: root/rust/qemu-api/src
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2024-12-15 10:06:09 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2025-01-23 11:35:33 +0100
commit0360b781870a628379de20e03305c4e62dbdcca4 (patch)
tree3dd5e8959d83a2e31d420507cf4c868694666e0f /rust/qemu-api/src
parent365811602572054b1c1173b19e8fd28689d827d9 (diff)
downloadqemu-0360b781870a628379de20e03305c4e62dbdcca4.zip
qemu-0360b781870a628379de20e03305c4e62dbdcca4.tar.gz
qemu-0360b781870a628379de20e03305c4e62dbdcca4.tar.bz2
target/i386: optimize CX handling in repeated string operations
In a repeated string operation, CX/ECX will be decremented until it is 0 but never underflow. Use this observation to avoid a deposit or zero-extend operation if the address size of the operation is smaller than MO_TL. As in the previous patch, the patch is structured to include some preparatory work for subsequent changes. In particular, introducing cx_next prepares for when ECX will be decremented *before* calling fn(s, ot), and therefore cannot yet be written back to cpu_regs. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Link: https://lore.kernel.org/r/20241215090613.89588-11-pbonzini@redhat.com Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'rust/qemu-api/src')
0 files changed, 0 insertions, 0 deletions