From: Ralf Baechle <ralf@oss.sgi.com>
To: Matthew Dharm <mdharm@momenco.com>
Cc: Linux-MIPS <linux-mips@oss.sgi.com>
Subject: Re: MIPS 64?
Date: Mon, 20 May 2002 13:30:56 -0700 [thread overview]
Message-ID: <20020520133056.D14066@dea.linux-mips.net> (raw)
In-Reply-To: <20020519230552.A17175@momenco.com>; from mdharm@momenco.com on Sun, May 19, 2002 at 11:05:52PM -0700
On Sun, May 19, 2002 at 11:05:52PM -0700, Matthew Dharm wrote:
> > > What does it take to do a 64-bit port? The first problem I see is the
> > > boot loader -- do I have to be in 64-bit mode when the kernel starts,
> > > or can I start in 32-bit mode and then transfer to 64-bit mode?
> >
> > Same loader as before - the build procedure will result in a 32-bit kernel
> > binary which is loaded to the same old KSEG0 addresses.
>
> Call me a bit slow, but...
>
> Are you saying that my 32-bit loader (which is designed to load a 32-bit
> ELF file) will do exactly that... but this 32-bit ELF file has the magic in
> it to switch to 64-bit internally?
>
> Nice... Very nice. I'm used to slick Open Source solutions, but I have to
> admit that this is a pretty elegant one that solves a great many
> problems...
It's a fairly natural solution to the problem we had. The scenario we had
to deal with was
- a machine (SGI Origin 200/2000 aka IP27) where configurations are
commonly way too large for a 32-bit kernel.
- 64-bit MIPS/ELF support that was close to entierly unusable
- fixing binutils fully would have taken a serious amount of time which
we didn't have.
As it turned out gas is perfectly able to assemble the assembler code that
is generated for the N64 ABI by gcc into 32-bit ELF and linking that.
That code model still uses 64-bit pointers just all intra-kernel refernces
that were generated from la or dla macros get expanded into just the
two instruction sequence for 32-bit code, not the upto 7 instruction used
for 64-bit code. Result: much less tools work necessary yet better code.
Ralf
prev parent reply other threads:[~2002-05-20 20:30 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-15 21:34 MIPS 64? Matthew Dharm
2002-05-15 21:48 ` Daniel Jacobowitz
2002-05-15 21:55 ` Kip Walker
2002-05-15 22:08 ` Matthew Dharm
2002-05-15 22:08 ` Matthew Dharm
2002-05-15 22:15 ` Kip Walker
2002-05-15 22:26 ` Matthew Dharm
2002-05-15 22:29 ` Kip Walker
2002-05-19 19:29 ` Ralf Baechle
2002-05-19 19:25 ` Ralf Baechle
2002-05-15 21:59 ` Jun Sun
2002-05-15 22:16 ` Matthew Dharm
2002-05-19 19:32 ` Ralf Baechle
2002-05-16 3:28 ` Dan Malek
2002-05-16 7:15 ` Kevin D. Kissell
2002-05-16 17:13 ` Jun Sun
2002-05-19 19:44 ` Ralf Baechle
2002-05-19 19:41 ` Ralf Baechle
2002-05-19 19:30 ` Ralf Baechle
2002-05-20 10:06 ` Maciej W. Rozycki
2002-05-20 15:57 ` Greg Lindahl
2002-05-20 16:05 ` Maciej W. Rozycki
2002-05-21 16:47 ` Florian Lohoff
2002-05-21 17:00 ` Greg Lindahl
2002-05-20 19:05 ` Ralf Baechle
2002-05-19 19:24 ` Ralf Baechle
2002-05-19 19:23 ` Ralf Baechle
2002-05-20 6:05 ` Matthew Dharm
2002-05-20 20:30 ` Ralf Baechle [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=20020520133056.D14066@dea.linux-mips.net \
--to=ralf@oss.sgi.com \
--cc=linux-mips@oss.sgi.com \
--cc=mdharm@momenco.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox