🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.help
Article #53188

Re: Internal error compiling GCC-2.0 on HP 400 (hpux)

#53188
From: Clemens Misch
Date: Mon, 02 Mar 1992 10:32
57 lines
3416 bytes
In article <1992Feb26.220802.13923@ctp.com>, sayer@ctp.com (Stephen Ayers) writes:
> I'm attempting to build GCC-2.0 on an HP 425 running HP-UX 8.
> I have run configure as follows:
> 	  configure m68k-hp-hpux
> The make runs fine until it tried to build _floatdisf with gcc. Gcc reports:
> 
> 	_floatdisf
> 	cc1: warning: `-g' option not supported on this version of GCC
> 	cc1: warning: `-g1' option not supported on this version of GCC
> 	./gcc: Internal compiler error: program as got fatal signal 11
> 

This is due to an error in 'as' from HP. It coredumps on floatingpoint 
instructions like 'fadd.s &0f2.345e+9,%fp0'. A temporary solution is this
diff for 'config/hp320.h'. This only works if host and target cpu for gcc2
both have IEEE floatingpoint format.

---------------------------------- cut here --------------------------------------
*** hp320.h.orig	Mon Mar  2 11:19:02 1992
--- hp320.h	Sat Feb 29 13:33:50 1992
***************
*** 393,406 ****
        union { float f; int i; } u1;					\
        u.i[0] = CONST_DOUBLE_LOW (X); u.i[1] = CONST_DOUBLE_HIGH (X);	\
        u1.f = u.d;							\
!       if (CODE == 'f')							\
          fprintf (FILE, "&0f%.9g", u1.f);				\
        else								\
          fprintf (FILE, "&0x%x", u1.i); }				\
    else if (GET_CODE (X) == CONST_DOUBLE && GET_MODE (X) == DFmode)	\
      { union { double d; int i[2]; } u;					\
        u.i[0] = CONST_DOUBLE_LOW (X); u.i[1] = CONST_DOUBLE_HIGH (X);	\
!         fprintf (FILE, "&0f%.20g", u.d); }				\
    else { putc ('&', FILE); output_addr_const (FILE, X); }}
  
  #define PRINT_OPERAND_ADDRESS(FILE, ADDR)  \
--- 393,408 ----
        union { float f; int i; } u1;					\
        u.i[0] = CONST_DOUBLE_LOW (X); u.i[1] = CONST_DOUBLE_HIGH (X);	\
        u1.f = u.d;							\
! /*    if (CODE == 'f')							\
          fprintf (FILE, "&0f%.9g", u1.f);				\
        else								\
+ */                                                                      \
          fprintf (FILE, "&0x%x", u1.i); }				\
    else if (GET_CODE (X) == CONST_DOUBLE && GET_MODE (X) == DFmode)	\
      { union { double d; int i[2]; } u;					\
        u.i[0] = CONST_DOUBLE_LOW (X); u.i[1] = CONST_DOUBLE_HIGH (X);	\
! /*      fprintf (FILE, "&0f%.20g", u.d); } */				\
! 	fprintf (FILE, "&0x%x%08x", u.i[0],u.i[1]); }                   \
    else { putc ('&', FILE); output_addr_const (FILE, X); }}
  
  #define PRINT_OPERAND_ADDRESS(FILE, ADDR)  \
---------------------------------cut here ----------------------------------------

Clemens Misch
Technical Details
Message-ID: <1992Mar02.103200.6116@infoserver.th-darmstadt.de>
Path: arc1-ca.pugleaf.net!sparky!uunet!wupost!darwin.sura.net!Sirius.dfn.de!zrz.tu-berlin.de!cs.tu-berlin.de!news.netmbx.de!unido!ira.uka.de!THD-News!misch
References: <1992Feb26.220802.13923@ctp.com>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 11318c,920906ec7a561ee2
X-Google-Attributes: gid11318c,public
X-Google-ArrivalTime: 1992-03-03 06:17:29 PST
Path: arc1-ca.pugleaf.net!sparky!uunet!wupost!darwin.sura.net!Sirius.dfn.de!zrz.tu-berlin.de!cs.tu-berlin.de!news.netmbx.de!unido!ira.uka.de!THD-News!misch
From: misch@rbhp90.rbg.informatik.th-darmstadt.de (Clemens Misch)
Newsgroups: gnu.gcc.help
Subject: Re: Internal error compiling GCC-2.0 on HP 400 (hpux)
Message-ID: <1992Mar02.103200.6116@infoserver.th-darmstadt.de>
Date: 2 Mar 92 10:32:00 GMT
References: <1992Feb26.220802.13923@ctp.com>
Sender: news@infoserver.th-darmstadt.de (The Usenet-News System)
Organization: RBG @ FB20 @ Th Darmstadt
Lines: 57
Originator: misch@rbhp90.rbg.informatik.th-darmstadt.de
Nntp-Posting-Host: rbhp90.rbg.informatik.th-darmstadt.de