This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bootstrap still broken on ia64
On Wednesday 25 September 2002 16:23, Richard Henderson wrote:
> On Wed, Sep 25, 2002 at 07:00:14PM -0400, Jim Wilson wrote:
> > I tried writing a patch for this. With this patch, my make bootstrap
> > (minus ada) completed successfully.
> >
> > 2002-09-25 Jim Wilson <wilson@tortoise.toronto.redhat.com>
> >
> > * emit-rtl.c (const_double_htab_eq): Rewrite to use real_identical.
>
> Doh. I just bootstraped and commited a slightly different patch.
> In any case, your patch is incorrect for the integer CONST_DOUBLE case.
>
>
> r~
>
> * emit-rtl.c (const_double_htab_eq): Distinguish integer and
> fp CONST_DOUBLE; use real_identical.
>
> Index: emit-rtl.c
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/emit-rtl.c,v
> retrieving revision 1.297
> diff -u -r1.297 emit-rtl.c
> --- emit-rtl.c 22 Sep 2002 14:09:31 -0000 1.297
> +++ emit-rtl.c 25 Sep 2002 21:24:29 -0000
> @@ -243,11 +243,12 @@
>
> if (GET_MODE (a) != GET_MODE (b))
> return 0;
> - for (i = 0; i < sizeof(CONST_DOUBLE_FORMAT)-1; i++)
> - if (XWINT (a, i) != XWINT (b, i))
> - return 0;
> -
> - return 1;
> + if (GET_MODE (a) == VOIDmode)
> + return (CONST_DOUBLE_LOW (a) == CONST_DOUBLE_LOW (b)
> + && CONST_DOUBLE_HIGH (a) == CONST_DOUBLE_HIGH (b));
> + else
> + return real_identical (CONST_DOUBLE_REAL_VALUE (a),
> + CONST_DOUBLE_REAL_VALUE (b));
> }
>
> /* Returns a hash code for X (which is a really a mem_attrs *). */
My antique Big Sur has completed a full build and is running testsuite with
this patch. 10 hrs elapsed time so far.
--
Tim Prince