From: "Emilio G. Cota" <cota@braap.org>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 05/10] qemu-tech: document lazy condition code evaluation in cpu.h
Date: Thu, 6 Oct 2016 12:18:33 -0400 [thread overview]
Message-ID: <20161006161833.GA31142@flamenco> (raw)
In-Reply-To: <1475767463-12045-6-git-send-email-pbonzini@redhat.com>
On Thu, Oct 06, 2016 at 17:24:18 +0200, Paolo Bonzini wrote:
> Unlike the other sections, they are pretty specific to a particular CPU.
>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> qemu-tech.texi | 25 -------------------------
> target-cris/cpu.h | 7 +++++++
> target-i386/cpu.h | 7 +++++++
> target-m68k/cpu.h | 8 ++++++++
> target-sparc/cpu.h | 5 +++++
> 5 files changed, 27 insertions(+), 25 deletions(-)
(snip)
> diff --git a/target-cris/cpu.h b/target-cris/cpu.h
> index 7d7fe6e..6d3de56 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 x86 instruction,
> + * QEMU just stores one operand (called CC_SRC), the result
> + * (called CC_DST) 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.
> + */
This text doesn't seem to be cris-specific, e.g.:
- "each x86 instruction"
- CC_SRC (git grep CC_SRC here doesn't return anything)
- CC_DST (ditto)
> enum {
> CC_OP_DYNAMIC, /* Use env->cc_op */
> CC_OP_FLAGS,
> diff --git a/target-i386/cpu.h b/target-i386/cpu.h
> index 6d028aa..f606f15 100644
> --- a/target-i386/cpu.h
> +++ b/target-i386/cpu.h
> @@ -698,6 +698,13 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
> /* Use a clearer name for this. */
> #define CPU_INTERRUPT_INIT CPU_INTERRUPT_RESET
>
> +/* Instead of computing the condition codes after each x86 instruction,
> + * QEMU just stores one operand (called CC_SRC), the result
> + * (called CC_DST) 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.
> + */
> typedef enum {
> CC_OP_DYNAMIC, /* must use dynamic code to get cc_op */
> CC_OP_EFLAGS, /* all cc are explicitly computed, CC_SRC = flags */
> diff --git a/target-m68k/cpu.h b/target-m68k/cpu.h
> index c2d40cb..ccc7157 100644
> --- a/target-m68k/cpu.h
> +++ b/target-m68k/cpu.h
> @@ -154,6 +154,14 @@ int cpu_m68k_signal_handler(int host_signum, void *pinfo,
> void *puc);
> void cpu_m68k_flush_flags(CPUM68KState *, int);
>
> +
> +/* Instead of computing the condition codes after each x86 instruction,
> + * QEMU just stores one operand (called CC_SRC), the result
> + * (called CC_DST) 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.
> + */
Same as above:
- "each x86 instruction"
- no CC_DST
Emilio
next prev parent reply other threads:[~2016-10-06 16:18 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-06 15:24 [Qemu-devel] [PATCH 00/10] qemu-tech cleanup Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 01/10] qemu-tech: drop index Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 02/10] qemu-doc: replace introduction with the one from the internals manual Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 03/10] qemu-doc: drop installation and compilation notes Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 04/10] qemu-tech: move text from qemu-tech to tcg/README Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 05/10] qemu-tech: document lazy condition code evaluation in cpu.h Paolo Bonzini
2016-10-06 16:18 ` Emilio G. Cota [this message]
2016-10-06 16:21 ` Paolo Bonzini
2016-10-06 18:45 ` Peter Maydell
2016-10-07 8:02 ` Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 06/10] qemu-tech: move user mode emulation features from qemu-tech Paolo Bonzini
2016-10-06 18:32 ` Jonathan Neuschäfer
2016-10-07 7:55 ` Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 07/10] qemu-tech: move TCG test documentation to tests/tcg/README Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 08/10] qemu-tech: reorganize content Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 09/10] qemu-tech: rewrite some parts Paolo Bonzini
2016-10-06 16:31 ` Emilio G. Cota
2016-10-07 7:55 ` Paolo Bonzini
2016-10-06 15:24 ` [Qemu-devel] [PATCH 10/10] qemu-doc: merge qemu-tech and qemu-doc Paolo Bonzini
2016-10-06 16:36 ` [Qemu-devel] [PATCH 00/10] qemu-tech cleanup Emilio G. Cota
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161006161833.GA31142@flamenco \
--to=cota@braap.org \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).