From: "Richard W.M. Jones" <rjones@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>
Cc: qemu-devel@nongnu.org, "David Hildenbrand" <david@redhat.com>,
"Weiwei Li" <liweiwei@iscas.ac.cn>,
qemu-s390x@nongnu.org, "Ilya Leoshkevich" <iii@linux.ibm.com>,
"Bin Meng" <bin.meng@windriver.com>,
"Alistair Francis" <alistair.francis@wdc.com>,
"Cameron Esfahani" <dirty@apple.com>,
qemu-ppc@nongnu.org,
"Daniel Henrique Barboza" <dbarboza@ventanamicro.com>,
qemu-riscv@nongnu.org, "Max Filippov" <jcmvbkbc@gmail.com>,
"Daniel Henrique Barboza" <danielhb413@gmail.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Cédric Le Goater" <clg@kaod.org>,
"Liu Zhiwei" <zhiwei_liu@linux.alibaba.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
"Thomas Huth" <thuth@redhat.com>,
"Roman Bolshakov" <rbolshakov@ddn.com>,
"Nicholas Piggin" <npiggin@gmail.com>
Subject: Re: [PATCH 2/6] target/riscv: Use env_archcpu() in [check_]nanbox()
Date: Mon, 9 Oct 2023 13:53:51 +0100 [thread overview]
Message-ID: <20231009125351.GS7636@redhat.com> (raw)
In-Reply-To: <20231009110239.66778-3-philmd@linaro.org>
On Mon, Oct 09, 2023 at 01:02:35PM +0200, Philippe Mathieu-Daudé wrote:
> When CPUArchState* is available (here CPURISCVState*), we
> can use the fast env_archcpu() macro to get ArchCPU* (here
> RISCVCPU*). The QOM cast RISCV_CPU() macro will be slower
> when building with --enable-qom-cast-debug.
>
> Inspired-by: Richard W.M. Jones <rjones@redhat.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> target/riscv/internals.h | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/target/riscv/internals.h b/target/riscv/internals.h
> index b5f823c7ec..8239ae83cc 100644
> --- a/target/riscv/internals.h
> +++ b/target/riscv/internals.h
> @@ -87,7 +87,7 @@ enum {
> static inline uint64_t nanbox_s(CPURISCVState *env, float32 f)
> {
> /* the value is sign-extended instead of NaN-boxing for zfinx */
> - if (RISCV_CPU(env_cpu(env))->cfg.ext_zfinx) {
> + if (env_archcpu(env)->cfg.ext_zfinx) {
> return (int32_t)f;
> } else {
> return f | MAKE_64BIT_MASK(32, 32);
> @@ -97,7 +97,7 @@ static inline uint64_t nanbox_s(CPURISCVState *env, float32 f)
> static inline float32 check_nanbox_s(CPURISCVState *env, uint64_t f)
> {
> /* Disable NaN-boxing check when enable zfinx */
> - if (RISCV_CPU(env_cpu(env))->cfg.ext_zfinx) {
> + if (env_archcpu(env)->cfg.ext_zfinx) {
> return (uint32_t)f;
> }
>
> @@ -113,7 +113,7 @@ static inline float32 check_nanbox_s(CPURISCVState *env, uint64_t f)
> static inline uint64_t nanbox_h(CPURISCVState *env, float16 f)
> {
> /* the value is sign-extended instead of NaN-boxing for zfinx */
> - if (RISCV_CPU(env_cpu(env))->cfg.ext_zfinx) {
> + if (env_archcpu(env)->cfg.ext_zfinx) {
> return (int16_t)f;
> } else {
> return f | MAKE_64BIT_MASK(16, 48);
> @@ -123,7 +123,7 @@ static inline uint64_t nanbox_h(CPURISCVState *env, float16 f)
> static inline float16 check_nanbox_h(CPURISCVState *env, uint64_t f)
> {
> /* Disable nanbox check when enable zfinx */
> - if (RISCV_CPU(env_cpu(env))->cfg.ext_zfinx) {
> + if (env_archcpu(env)->cfg.ext_zfinx) {
> return (uint16_t)f;
> }
Reviewed-by: Richard W.M. Jones <rjones@redhat.com>
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW
next prev parent reply other threads:[~2023-10-09 12:54 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-09 11:02 [PATCH 0/6] target: Use env_archcpu() instead of ARCH_CPU(env_cpu(env)) Philippe Mathieu-Daudé
2023-10-09 11:02 ` [PATCH 1/6] target/ppc: Use env_archcpu() in helper_book3s_msgsndp() Philippe Mathieu-Daudé
2023-10-09 11:45 ` Daniel Henrique Barboza
2023-10-11 1:20 ` Alistair Francis
2023-10-09 11:02 ` [PATCH 2/6] target/riscv: Use env_archcpu() in [check_]nanbox() Philippe Mathieu-Daudé
2023-10-09 11:45 ` Daniel Henrique Barboza
2023-10-09 12:42 ` LIU Zhiwei
2023-10-10 17:04 ` Richard Henderson
2023-10-11 3:25 ` LIU Zhiwei
2023-10-11 5:31 ` Philippe Mathieu-Daudé
2023-10-12 5:59 ` LIU Zhiwei
2023-10-12 16:06 ` Richard Henderson
2023-10-13 8:48 ` LIU Zhiwei
2023-10-09 12:53 ` Richard W.M. Jones [this message]
2023-10-11 1:11 ` Alistair Francis
2023-10-09 11:02 ` [PATCH 3/6] target/s390x: Use env_archcpu() in handle_diag_308() Philippe Mathieu-Daudé
2023-10-11 1:17 ` Alistair Francis
2023-10-09 11:02 ` [PATCH 4/6] target/xtensa: Use env_archcpu() in update_c[compare|count]() Philippe Mathieu-Daudé
2023-10-11 1:17 ` Alistair Francis
2023-10-09 11:02 ` [PATCH 5/6] target/i386/hvf: Use x86_cpu in simulate_[rdmsr|wrmsr]() Philippe Mathieu-Daudé
2023-10-09 22:11 ` Roman Bolshakov
2023-10-20 8:44 ` Zhao Liu
2023-10-09 11:02 ` [PATCH 6/6] target/i386: Use env_archcpu() in simulate_[rdmsr/wrmsr]() Philippe Mathieu-Daudé
2023-10-09 22:41 ` Roman Bolshakov
2023-10-20 9:14 ` Zhao Liu
2023-10-10 17:06 ` [PATCH 0/6] target: Use env_archcpu() instead of ARCH_CPU(env_cpu(env)) Richard Henderson
2023-10-20 11:12 ` Philippe Mathieu-Daudé
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=20231009125351.GS7636@redhat.com \
--to=rjones@redhat.com \
--cc=alistair.francis@wdc.com \
--cc=bin.meng@windriver.com \
--cc=clg@kaod.org \
--cc=danielhb413@gmail.com \
--cc=david@redhat.com \
--cc=dbarboza@ventanamicro.com \
--cc=dirty@apple.com \
--cc=iii@linux.ibm.com \
--cc=jcmvbkbc@gmail.com \
--cc=liweiwei@iscas.ac.cn \
--cc=npiggin@gmail.com \
--cc=palmer@dabbelt.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-riscv@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=rbolshakov@ddn.com \
--cc=richard.henderson@linaro.org \
--cc=thuth@redhat.com \
--cc=zhiwei_liu@linux.alibaba.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.