From: Richard Henderson <rth@twiddle.net>
To: "Andreas Färber" <andreas.faerber@web.de>
Cc: peter.maydell@linaro.org, Nathan Froyd <froydnj@codesourcery.com>,
Stefan Weil <sw@weilnetz.de>,
riku.voipio@iki.fi, qemu-devel@nongnu.org, khansa@kics.edu.pk,
aurelien@aurel32.net
Subject: Re: [Qemu-devel] [PATCH 2/3] target-mips:enabling of 64 bit user mode and floating point operations MIPS_HFLAG_UX is included in env->hflags so that the address computation for LD instruction does not treated as 32 bit code see gen_op_addr_add() in translate.c
Date: Wed, 14 Dec 2011 09:05:09 -0800 [thread overview]
Message-ID: <4EE8D745.7080908@twiddle.net> (raw)
In-Reply-To: <4EE15075.6060208@web.de>
On 12/08/2011 04:04 PM, Andreas Färber wrote:
>> > + /* if cpu has FPU, MIPS_HFLAG_F64 must be included in env->hflags
>> > + so that floating point operations can be emulated */
>> > + env->active_fpu.fcr0 = env->cpu_model->CP1_fcr0;
>> > if (env->active_fpu.fcr0 & (1 << FCR0_F64)) {
>> > env->hflags |= MIPS_HFLAG_F64;
>> > }
> Nack. env->active_fpu.fcr0 gets initialized in translate_init.c based on
> cpu_model->CR1_fcr0, where FCR0_F64 is set only for 24Kf, 34Kf,
> MIPS64R2-generic. TARGET_ABI_MIPSN64 linux-user defaults to 20Kc. So it
> seems to rather be an issue of using the right -cpu parameter or
> changing the default for n64. [cc'ing Nathan, who introduced the if]
That said, there's still something missing, e.g. MIPS_HFLAG_COP1X.
My first guess is simply
if (env->insn_flags & (ISA_MIPS32 | ISA_MIPS4)) {
env->hflags |= MIPS_HFLAG_COP1X;
}
immediately after this MIPS64 hunk.
r~
next prev parent reply other threads:[~2011-12-14 17:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-08 5:25 [Qemu-devel] [PATCH 0/3] MIPS64 user mode emulation in QEMU khansa
2011-12-08 5:25 ` [Qemu-devel] [PATCH 1/3] linux-user:Support for " khansa
2011-12-08 15:15 ` Andreas Färber
2011-12-09 0:18 ` Andreas Färber
2011-12-14 16:04 ` Richard Henderson
2011-12-08 5:25 ` [Qemu-devel] [PATCH 2/3] target-mips:enabling of 64 bit user mode and floating point operations MIPS_HFLAG_UX is included in env->hflags so that the address computation for LD instruction does not treated as 32 bit code see gen_op_addr_add() in translate.c khansa
2011-12-09 0:04 ` Andreas Färber
2011-12-14 17:05 ` Richard Henderson [this message]
2011-12-08 5:25 ` [Qemu-devel] [PATCH 3/3] linux-user:Signal handling for MIPS64 khansa
2011-12-14 16:20 ` Richard Henderson
2011-12-28 11:09 ` Khansa Butt
2011-12-29 10:58 ` Khansa Butt
2011-12-29 11:23 ` Andreas Färber
2011-12-08 13:22 ` [Qemu-devel] [PATCH 0/3] MIPS64 user mode emulation in QEMU Andreas Färber
-- strict thread matches above, loose matches on Subject: below --
2011-11-30 11:07 [Qemu-devel] [PATCH 0/3] MIPS64 user mode emulation in QEMU with Cavium specific instruction support khansa
2011-11-30 11:07 ` [Qemu-devel] [PATCH 2/3] target-mips:enabling of 64 bit user mode and floating point operations MIPS_HFLAG_UX is included in env->hflags so that the address computation for LD instruction does not treated as 32 bit code see gen_op_addr_add() in translate.c khansa
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=4EE8D745.7080908@twiddle.net \
--to=rth@twiddle.net \
--cc=andreas.faerber@web.de \
--cc=aurelien@aurel32.net \
--cc=froydnj@codesourcery.com \
--cc=khansa@kics.edu.pk \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=riku.voipio@iki.fi \
--cc=sw@weilnetz.de \
/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.