diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2013-01-11 15:42:52 -0800 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2013-01-19 10:13:14 +0000 |
commit | 3a9d8b179b1e43237365ede641d5aa6779ba91bc (patch) | |
tree | 81c03d4e59337804a9498e03a9b2060e1d874c12 /.gitignore | |
parent | d193a14a2c94c9c4877ab100c31ec174dc78644c (diff) | |
download | qemu-3a9d8b179b1e43237365ede641d5aa6779ba91bc.zip |
optimize: track nonzero bits of registers
Add a "mask" field to the tcg_temp_info struct. A bit that is zero
in "mask" will always be zero in the corresponding temporary.
Zero bits in the mask can be produced from moves of immediates,
zero-extensions, ANDs with constants, shifts; they can then be
be propagated by logical operations, shifts, sign-extensions,
negations, deposit operations, and conditional moves. Other
operations will just reset the mask to all-ones, i.e. unknown.
[rth: s/target_ulong/tcg_target_ulong/]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions