[m-rev.] update GCC back-end interface to GCC 3.3 beta
Fergus Henderson
fjh at cs.mu.OZ.AU
Fri Sep 20 21:17:31 AEST 2002
On 11-Sep-2002, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> This is a change to update the GCC back-end interface to the current GCC
> CVS top-of-tree. I won't commit this to the main branch yet, for two
> reasons:
>
> (1) GCC 3.3 hasn't been released yet, and it is probably easier for
> most people if we require the use of a released version of GCC,
> rather than a CVS snapshot.
>
> (2) It doesn't bootstrap, due to a bug which I have not yet investigated.
(2) seems to be a bug in the GCC back-end. It breaks with -O2 -fpic.
This bug breaks the (hlc.gc) C back-end, as well as the --target asm back-end.
The symptom is undefined labels when linking the stage 2 library.
I have reported this bug to the GCC maintainers (PR 7887).
I hope it will get fixed before GCC 3.3 is released.
In the mean time, I have a work-around: put
EXTRA_MLOBJS = $(MERCURY_DIR)/workaround.o
in Mmake.params (and Mmake.stage.params, if present),
and add workaround.c (see attached).
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
The University of Melbourne | of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S. Garp.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: workaround.c
Type: text/x-csrc
Size: 435 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/reviews/attachments/20020920/1ca2bd66/attachment.c>
More information about the reviews
mailing list