target-i386: compute eflags outside rcl/rcr helper
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 5 Oct 2012 22:18:55 +0000 (00:18 +0200)
committerRichard Henderson <rth@twiddle.net>
Mon, 18 Feb 2013 23:03:56 +0000 (15:03 -0800)
commitf5847c912d62d60a9917ed1e88cd6d4548fd40f3
treedbe0eaca71459a4b66143b1de77e27341f732a45
parent0ff6addd92979b9759efa1c0945526e6ac78ce5b
target-i386: compute eflags outside rcl/rcr helper

Always compute EFLAGS first since it is needed whenever
the shift is non-zero, i.e. most of the time.  This makes it possible
to remove some writes of CC_OP_EFLAGS to cpu_cc_op and more importantly
removes cases where s->cc_op becomes CC_OP_DYNAMIC.  Also, we can
remove cc_tmp and just modify cc_src from within the helper.

Finally, always follow gen_compute_eflags(cpu_cc_src) by setting s->cc_op
and discarding cpu_cc_dst.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Richard Henderson <rth@twiddle.net>
target-i386/cpu.h
target-i386/shift_helper_template.h
target-i386/translate.c