qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Vince Weaver <vince@csl.cornell.edu>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] mipsIV support for mips-linux-user
Date: Wed, 8 Apr 2009 21:00:42 -0400 (EDT)	[thread overview]
Message-ID: <20090408205500.A76201@stanley.csl.cornell.edu> (raw)
In-Reply-To: <20090408221724.GE26602@hall.aurel32.net>


>> Because of this the generated assembly in the debug output
>> unconditionally generates an illegal instruction exception the first time
>> a cop1x instruction is executed (in my case, "msub.d")
>
> This instruction is clearly marked as MIPS64 only in the manual.

I'm running MIPSIV compiled o32 binaries.  Even though the binaries
are 32-bits, they are running on a 64-bit enabled OS.  (I have actual r12k 
and r5k machines running Debian Linux.  They have 64-bit kernels but 
32-bit userspace).

mips-linux-user can run these executables fine if you hack it so that
cop1x instructions are enabled.

Perhaps the proper solution is to run the binaries under 
mips64-linux-user, but there you run into the 64-bit qemu-linux-user
can't load 32-bit ELF files problem.  I'm also not sure if 
mips64-linux-user implements the o32 syscalls.

> I think this should be enabled in cpu_reset(), where env->hflags is
> setup for user mode.

That's currently what I am doing to enable these binaries to run.

> But I am actually concern about the results you get when enabling
> MIPS_HFLAG_COP1X. If your program is expecting to have the FPU in 64-bit
> mode you may have really strange results. Did you check them?

I'm running the Spec2k benchmarks and the results are as close as can be 
expected to the actual hardware.

Vince

      reply	other threads:[~2009-04-09  1:01 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-29 20:56 [Qemu-devel] mipsIV support for mips-linux-user Vince Weaver
2009-03-30  1:05 ` Aurelien Jarno
2009-03-30  2:14   ` Vince Weaver
2009-03-30  4:35     ` Aurelien Jarno
2009-03-30 17:29       ` Vince Weaver
2009-04-08 22:17         ` Aurelien Jarno
2009-04-09  1:00           ` Vince Weaver [this message]

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=20090408205500.A76201@stanley.csl.cornell.edu \
    --to=vince@csl.cornell.edu \
    --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).