From: Richard Henderson <rth@twiddle.net>
To: qemu-devel <qemu-devel@nongnu.org>
Subject: [Qemu-devel] Fwd: Re: [PULL 07/11] tcg: Compress TCGLabelQemuLdst
Date: Tue, 23 Sep 2014 11:17:31 -0700 [thread overview]
Message-ID: <5421B93B.7030009@twiddle.net> (raw)
In-Reply-To: <dh3mgdbdpd5d06hw5i0nqofq.1411427440387@email.android.com>
[-- Attachment #1: Type: text/plain, Size: 698 bytes --]
Ug. Failure to operate the mail program on my phone properly;
the following went to Paolo only instead of the list too.
r~
-------- Forwarded Message --------
Subject: Re: [PULL 07/11] tcg: Compress TCGLabelQemuLdst
Date: Mon, 22 Sep 2014 16:10:40 -0700
From: Richard Henderson <rth@twiddle.net>
To: Paolo Bonzini <pbonzini@redhat.com>
We probably average less than 10 memory operations per TB, but we reserve space
for 640 of them.
Probably what ought to be fixed is tcg's entire notion of preallocated arrays.
Obstacks, or similar pooled memory, may well work much better.
I can certainly drop this patch, but Claudio was the only one to comment when
it was posted three weeks ago.
r~
[-- Attachment #2: Attached Message Part --]
[-- Type: text/plain, Size: 46 bytes --]
Paolo Bonzini <pbonzini@redhat.com> wrote:
[-- Attachment #3: Attached Message Part --]
[-- Type: text/plain, Size: 1277 bytes --]
Il 22/09/2014 22:57, Richard Henderson ha scritto:
> +QEMU_BUILD_BUG_ON(TCG_TARGET_NB_REGS > 32);
> +QEMU_BUILD_BUG_ON(NB_MMU_MODES > 8);
> +
> typedef struct TCGLabelQemuLdst {
> - bool is_ld:1; /* qemu_ld: true, qemu_st: false */
> - TCGMemOp opc:4;
> - TCGReg addrlo_reg; /* reg index for low word of guest virtual addr */
> - TCGReg addrhi_reg; /* reg index for high word of guest virtual addr */
> - TCGReg datalo_reg; /* reg index for low word to be loaded or stored */
> - TCGReg datahi_reg; /* reg index for high word to be loaded or stored */
> - int mem_index; /* soft MMU memory index */
> + TCGMemOp opc : 4;
> + bool is_ld : 1; /* qemu_ld: true, qemu_st: false */
> + TCGReg addrlo_reg : 5; /* reg index for low word of guest virtual addr */
> + TCGReg addrhi_reg : 5; /* reg index for high word of guest virtual addr */
> + TCGReg datalo_reg : 5; /* reg index for low word to be loaded or stored */
> + TCGReg datahi_reg : 5; /* reg index for high word to be loaded or stored */
> + unsigned mem_index : 3; /* soft MMU memory index */
> + /* 4 bits unused in 32-bit word */
Why? Are there more than 10 or so loads in the typical tb?
Paolo
next parent reply other threads:[~2014-09-23 18:17 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <dh3mgdbdpd5d06hw5i0nqofq.1411427440387@email.android.com>
2014-09-23 18:17 ` Richard Henderson [this message]
2014-09-23 18:42 ` [Qemu-devel] Fwd: Re: [PULL 07/11] tcg: Compress TCGLabelQemuLdst Paolo Bonzini
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=5421B93B.7030009@twiddle.net \
--to=rth@twiddle.net \
--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).