Subject: Re: more mipsel/mipseb/mips lossage
To: Jonathan Stone <jonathan@DSG.Stanford.EDU>
From: Eduardo E. Horvath <eeh@one-o.com>
List: tech-toolchain
Date: 03/03/1999 12:09:55
On Wed, 3 Mar 1999, Jonathan Stone wrote:

> Same goes for tests for 64-bit ports. We really need to add a new
> variable in bsd.own.mk that encodes the ``word size''.  Then, if we
> want to add a mips{el,eb}64 or a ppc64 -- or even an n32 mips with
> explicit mips3 insn support for 64-bit `long long's-- we can do it in
> just one place, rather than finding and updating every test for
> (${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64").

I started by defining _LP64 and then mrg started migrating to __arch64__
in the preprocessor.  But, actually it gets a bit nastier when dealing
with machines that have multiple ABIs and you try to crosscompile a 64-bit
binaries on a machine running in 32-bit mode or 32-bit binaries when
running in 64-bit mode.  You need to be sure you're using the proper
compilers/compiler flags to generate the appropriate output format.  You
need to feed this information into the assembler to generate the proper
code sequences.  You need to fire off the correct linker to handle that
object format.

Also, there are some shell scripts, GNU config stubs, and source files
that use "alpha" to mean 64-bit.

So, I like the idea.  We could get rid of the `sparc64' MACHINE_ARCH and
just use the "bittness" macro to figure out what to build.

=========================================================================
Eduardo Horvath				eeh@one-o.com
	"I need to find a pithy new quote." -- me