GHC Alpha port?
Tue, 10 Jul 2001 15:53:10 -0400
Content-Type: text/plain; charset=us-ascii
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...)
> 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?
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."
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
-----END PGP SIGNATURE-----