diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2016-10-06 15:10:57 +0200 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2016-10-07 10:05:22 +0200 |
commit | c3ce5a235741cb027b1328288ddec06470254813 (patch) | |
tree | 18b91ded381a74e17158c282dea2047b0ae3c3e6 /target-cris | |
parent | bf28a69eeb53e9e45166fbdda032454e7b1e3f29 (diff) |
qemu-tech: document lazy condition code evaluation in cpu.h
Unlike the other sections, they are pretty specific to a particular CPU.
Reviewed-by: Emilio G. Cota <cota@braap.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target-cris')
-rw-r--r-- | target-cris/cpu.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/target-cris/cpu.h b/target-cris/cpu.h index 7d7fe6eb1c..43d5f9d1da 100644 --- a/target-cris/cpu.h +++ b/target-cris/cpu.h @@ -223,6 +223,13 @@ int cpu_cris_signal_handler(int host_signum, void *pinfo, void cris_initialize_tcg(void); void cris_initialize_crisv10_tcg(void); +/* Instead of computing the condition codes after each CRIS instruction, + * QEMU just stores one operand (called CC_SRC), the result + * (called CC_DEST) and the type of operation (called CC_OP). When the + * condition codes are needed, the condition codes can be calculated + * using this information. Condition codes are not generated if they + * are only needed for conditional branches. + */ enum { CC_OP_DYNAMIC, /* Use env->cc_op */ CC_OP_FLAGS, |