GHC Alpha port?

Ken Shan ken@digitas.harvard.edu
Tue, 10 Jul 2001 15:53:10 -0400


--a8Wt8u1KmwUX3Y2C
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On 2001-07-10T10:24:30+0100, Simon Marlow wrote:
> Great, you're in uncharted territory now :-)  (no-one has bootstrapped
> from unregisterised .hc files with 5.00 yet...)

Heh.

> Ok, for unregisterised building we need to disable the mangler.  You
> should be able to just compile the .hc files directly using gcc, but
> you'll need to make sure that -DNO_REGS and -DUSE_MINIINTERPRETER are
> added to gcc's command line.

For now, I added these flags to EXTRA_CC_OPTS in mk/build.mk.  It
seems to work.  Meanwhile --

> The relevant makefile code is in fptools/mk/bootstrap.mk - I'm sure
> you'll be able to modify it to do the right thing.  When you've got it
> working we'll think about how to set up the bootstrapping system so
> mangling is optional.

I wonder if it matters whether PLATFORM_CC_OPTS is set to -static in
mk/bootstrap.mk?  The comments there say that the flags "should match
the list in machdepCCOpts in ghc/compiler/DriverFlags.hs", and
DriverFlags.hs does set -static for alpha.

(By the way, are *_hsc.[hc] files considered part of the ".hc
distribution"?  I needed them for compiling, say, Directory.hc.)

Anyway, the current hurdle is that
        ghc/lib/std/PrelInt.hc doesn't compile
because int64ToIntegerzh_fast is not declared
because ghc/includes/PrimOps.h did not declare it
because SUPPORT_LONG_LONGS is not defined in ghc/includes/StgTypes.h
because SUPPORT_LONG_LONGS is defined in ghc/includes/StgTypes.h
        if and only if HAVE_LONG_LONG && SIZEOF_VOID_P < 8,
        and SIZEOF_VOID_P is 8.

I'm not sure what the right fix is here.  Why does StgTypes.h not
define SUPPORT_LONG_LONGS if SIZEOF_VOID_P >=3D 8, anyway?

--=20
Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig
"There isn't anyone out there who isn't Seymour's fat lady."

--a8Wt8u1KmwUX3Y2C
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE7S10lzjAc4f+uuBURArWnAKDarANJ28cMcI7EzqrTHJ+iN6JE2gCgucaF
cfjVWZBb2xfUIZkeILo1q8U=
=RPeg
-----END PGP SIGNATURE-----

--a8Wt8u1KmwUX3Y2C--