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]
Other format: [Raw text]

[Bug target/13497] g++ 3.3.2: Internal compiler error in IA64 HP-UX System


------- Additional Comments From pinskia at gcc dot gnu dot org  2003-12-27 20:14 -------
Yes this is a target problem:
#0  fancy_abort (file=0x47d774 "../../gcc/emit-rtl.c", line=794, function=0x4a6524 
"gen_reg_rtx") at ../../gcc/diagnostic.c:1376
#1  0x00193394 in gen_reg_rtx (mode=DImode) at ../../gcc/emit-rtl.c:794
#2  0x001df7b4 in ia64_expand_load_address (dest=0x2ed1618, src=0x2ad1910, 
scratch=0x0) at ../../gcc/config/ia64/ia64.c:1055  <--- here


  /* The destination could be a MEM during initial rtl generation,
     which isn't a valid destination for the PIC load address patterns.  */
  if (! register_operand (dest, DImode))
    if (! scratch || ! register_operand (scratch, DImode))
      temp = gen_reg_rtx (DImode);  <--- here.
    else
      temp = scratch;
  else
    temp = dest;


This can not happen on the mainline because it does not use gen_reg_rtx at all:
  /* ILP32 mode still loads 64-bits of data from the GOT.  This avoids
     having to pointer-extend the value afterward.  Other forms of address
     computation below are also more natural to compute as 64-bit quantities.
     If we've been given an SImode destination register, change it.  */
  if (GET_MODE (dest) != Pmode)
    dest = gen_rtx_REG (Pmode, REGNO (dest));

So this is fixed on the mainline.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |3.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13497


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