This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: egcs-980321 alphaev5-dec-osf4.0b bootstrap failure ...


I believe I found the problem.

When Richard rewrote the GEN_INT macro, he dropped the HOST_WIDE_INT cast.
Unfortunately, this causes us to get different results depending on whether
there is a prototype for gen_rtx_CONST_INT in scope.  The cc built stage1
has no prototype, the gcc built stage2 has a prototype, and so they generate
different code.  This is not good.

I am trying a rebuild with the following patch, but the alpha machine I am
doing it on is so slow that I won't know the result until tomorrow.

Wed Apr  1 14:07:52 1998  Jim Wilson  <wilson@cygnus.com>

	* rtl.h (GEN_INT): Readd HOST_WIDE_INT cast lost Jan 8.

*** rtl.h~	Fri Mar  6 06:48:57 1998
--- rtl.h	Wed Apr  1 14:03:48 1998
*************** extern rtx static_chain_incoming_rtx;
*** 951,957 ****
  extern rtx gen_rtx_CONST_INT PROTO((enum machine_mode, HOST_WIDE_INT));
  extern rtx gen_rtx_REG PROTO((enum machine_mode, int));
  
! #define GEN_INT(N)  gen_rtx_CONST_INT (VOIDmode, (N))
  
  
  /* If HARD_FRAME_POINTER_REGNUM is defined, then a special dummy reg
--- 951,959 ----
  extern rtx gen_rtx_CONST_INT PROTO((enum machine_mode, HOST_WIDE_INT));
  extern rtx gen_rtx_REG PROTO((enum machine_mode, int));
  
! /* We need the cast here to ensure that we get the same result both with
!    and without prototypes.  */
! #define GEN_INT(N)  gen_rtx_CONST_INT (VOIDmode, (HOST_WIDE_INT) (N))
  
  
  /* If HARD_FRAME_POINTER_REGNUM is defined, then a special dummy reg


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]