public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 13:16 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-26 13:16 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: Joel Sherrill <joel.sherrill@OARcorp.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org, vmakarov@gcc.gnu.org,
        joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 16:10:59 -0500

 Joel Sherrill wrote:
 > 
 > Vladimir Makarov wrote:
 > >
 > > Joel Sherrill wrote:
 > > >
 > > > Vladimir Makarov wrote:
 > > > >
 > > > > Joel Sherrill wrote:
 > > > > >
 > > > > > Vladimir Makarov wrote:
 > > > > > >
 > > > > > > Joel Sherrill wrote:
 > > > > > >
 > > > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > > > >
 > > > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > > > knowing about it.
 > > > > > >
 > > > > > > Here is the path solving the problem.
 > > > > > >
 > > > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > > > sections in
 > > > > > >
 > > > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > > > >
 > > > > > Thanks.
 > > > > >
 > > > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > > > for this
 > > > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > > > at least
 > > > > > libgloss and RTEMS have hppa assembly.
 > > > > >
 > > > >
 > > > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > > > .subspace directive so it should be compiled without problems.
 > > >
 > > > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > > > port (when really active) was maintained on on an hpux box using gcc
 > > > and native as/ld.  So getting to the point where it is built using
 > >
 > >   Here the rewritten patch is.  __PRO__ is now always defined for
 > > hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 > > (__PRO__ was used only for libgcc compilation in it).
 > 
 > I hate to say this but hppa1.1-*-rtems* includes config/pa/rtems.h after
 > config/pa/pa-pro-end.h so ends up overriding the CPP_PREDEFINES
 > settings.
 > So -D__PRO__ has to be added to config/pa/rtems.h as well.
 > 
 > It isn't obvious because the include order is from config.gcc but this
 > is basically how all of the *-rtems* targets are constructed.  We
 > baseline
 > another similar target and slightly modify it for RTEMS. :)
 > 
   Sorry, I've missed this.  rtems.h is really after pa-pro-end.h in
 config.gcc for rtems.
 I think it is even better because __PRO__ will be defined only for
 hppa1.1-*pro*.
 hppa1.1-*-rtems* will have __rtems__ (which is already defined in
 CPP_PREDEFINES in pa/rtmems.h).
 
 So I'd add only proccessing __rtems__ into lib2funcs.asm to this patch. 
 Is it ok for you?
 
 I'd also use __pro__ instead __PRO__ (because __rtems__ use lower
 letters).  What do you think, Joel.
 
 
 > 
 > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > >
 > >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__PRO__.
 > >
 > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 > >         defined.
 > >
 > > Index: pa/lib2funcs.asm
 > > ===================================================================
 > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > > retrieving revision 1.6
 > > diff -c -p -r1.6 lib2funcs.asm
 > > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 > > --- lib2funcs.asm       2002/03/26 20:46:35
 > > ***************
 > > *** 28,33 ****
 > > --- 28,34 ----
 > >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 > >   ;  Boston, MA 02111-1307, USA.
 > >
 > > + #ifndef __PRO__
 > >         .SPACE $PRIVATE$
 > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > > ***************
 > > *** 35,45 ****
 > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > !
 > >         .IMPORT $$dyncall,MILLICODE
 > >         .SPACE $TEXT$
 > >         .SUBSPA $CODE$
 > > !
 > >   ; Simply call with the address of the desired import stub in %r22 and
 > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > >   ;
 > > --- 36,49 ----
 > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > ! #endif
 > >         .IMPORT $$dyncall,MILLICODE
 > > + #ifndef __PRO__
 > >         .SPACE $TEXT$
 > >         .SUBSPA $CODE$
 > > ! #else
 > > !       .text
 > > ! #endif
 > >   ; Simply call with the address of the desired import stub in %r22 and
 > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > >   ;
 > > Index: pa/pa-pro-end.h
 > > ===================================================================
 > > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > > retrieving revision 1.5
 > > diff -c -p -r1.5 pa-pro-end.h
 > > *** pa-pro-end.h        2000/11/02 23:29:12     1.5
 > > --- pa-pro-end.h        2002/03/26 20:46:35
 > > *************** Boston, MA 02111-1307, USA.  */
 > > *** 30,36 ****
 > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > -L/lib/libp/ -lc}"
 > >
 > >   #undef CPP_PREDEFINES
 > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > >
 > >   /* hpux8 and later have C++ compatible include files, so do not
 > >      pretend they are `extern "C"'.  */
 > > --- 30,36 ----
 > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > -L/lib/libp/ -lc}"
 > >
 > >   #undef CPP_PREDEFINES
 > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -D__PRO__ -Acpu=hppa
 > > -Amachine=hppa"
 > >
 > >   /* hpux8 and later have C++ compatible include files, so do not
 > >      pretend they are `extern "C"'.  */
 > 
 > --
 > Joel Sherrill, Ph.D.             Director of Research & Development
 > joel@OARcorp.com                 On-Line Applications Research
 > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 > Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-06-24  9:11 joel
  0 siblings, 0 replies; 24+ messages in thread
From: joel @ 2002-06-24  9:11 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, joel, vmakarov

Synopsis: GCC 3.0-CVS illegal instruction on hppa1.1-proelf

State-Changed-From-To: feedback->closed
State-Changed-By: joel
State-Changed-When: Mon Jun 24 09:04:45 2002
State-Changed-Why:
    This problem did not exist in the 3.1 release.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-04-01 14:54 vmakarov
  0 siblings, 0 replies; 24+ messages in thread
From: vmakarov @ 2002-04-01 14:54 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, joel, vmakarov

Synopsis: GCC 3.0-CVS illegal instruction on hppa1.1-proelf

State-Changed-From-To: open->feedback
State-Changed-By: vmakarov
State-Changed-When: Mon Apr  1 14:54:41 2002
State-Changed-Why:
    I've just submitted the last patch (for the problem of
    generation incorrect .comm for pro and rtems ports) into
    the main trunk and the gcc 3.1 branch.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-28 13:46 John David Anglin
  0 siblings, 0 replies; 24+ messages in thread
From: John David Anglin @ 2002-03-28 13:46 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: "John David Anglin" <dave@hiauly1.hia.nrc.ca>
To: vmakarov@redhat.com (Vladimir Makarov)
Cc: gcc-patches@gcc.gnu.org, gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Thu, 28 Mar 2002 16:41:58 -0500 (EST)

 > 2002-03-28  Vladimir Makarov  <vmakarov@redhat.com>
 > 
 >         * config/pa/pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMON,
 >         ASM_OUTPUT_ALIGNED_LOCAL): Redefine them.
 
 OK except change "one" to "ones" in the first comment.
 
 Your mailer adds unwanted line wraps (see below) which makes it
 difficult to review patches.  Please ensure that tabs are used for
 white space before the "\" line continuation and that the applied
 patch doesn't have the unwanted line wraps.
 
 > + #undef ASM_OUTPUT_ALIGNED_COMMON
 > + #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGNED)         
 > \
 
 Dave
 -- 
 J. David Anglin                                  dave.anglin@nrc.ca
 National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-28 12:56 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-28 12:56 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: John David Anglin <dave@hiauly1.hia.nrc.ca>, gcc-patches@gcc.gnu.org
Cc: "gcc-gnats@gcc.gnu.org" <gcc-gnats@gcc.gnu.org>,
        "gcc-bugs@gcc.gnu.org" <gcc-bugs@gcc.gnu.org>
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Thu, 28 Mar 2002 15:51:52 -0500

 Vladimir Makarov wrote:
 > 
 > John David Anglin wrote:
 > >
 > > > John David Anglin wrote:
 > > > >
 > > > > > There is another problem of building toolchains hppa1.1-*-pro* and
 > > > > > hppa1.1-*-rtems*.  The reason of problem is in that .comm has syntax
 > > > > > different from standard elf one and has no field defining alignment.
 > > >
 > > >   There is elfos.h after pa/pa.h (please see config.gcc) for toolchains
 > > > *rtems* and *pro*.  This file defines default ASM_OUTPUT_ALIGNED_LOCAL
 > > > which can not be compiled by gas or hp assembler.  elfos.h is not used
 > > > for hppa*64*-*-hpux* so the toolchain had no problem.  But the toolchain
 > > > uses pa/elf.h as toolchains *rtems* and *pro* do.  Therefore I defined
 > > > the macro exactly as in pa.h (although I thought about usage of .lcomm).
 > >
 > > Don't we also need to redefine ASM_OUTPUT_ALIGNED_COMMON?  It also
 > > appears to use .comm with a different syntax in elfos.h.
 > >
 > 
 > John, thanks for the feedback.  I've missed this part trying to solve
 > problems of building hppa1.1-*-pro*.
 > I should fix that too.  I'll send the reworked patch tomorrow.
 > 
 > > > > This patch affects hppa*64*-*-hpux* as well as the toolchains mentioned
 > > > > above.  Thus, it should be tested to ensure that there are no regressions.
 > > > >
 > > >
 > > > So there should be no problem with hppa*64*-*-hpux*.
 > >
 > > There appear to be some formatting problems in the patch as sent.  It
 > > didn't apply cleanly when I tried it.
 > >
 > > I would like comment(s) added to indicate why the macro needs to be
 > > redefined.  For example,
 > >
 > >   /* This define is identical to the one in pa.h.  We need to override the
 > >      define in elfos.h on the rtems and pro ports.  */
 > >
 > > I don't like having to define the same thing in two places.
 > 
 > I'll try to solve this problem may be by moving it into pa-pro-end.h and
 > rtems.h
 
 Here the reworked patch is.
 
 Vlad
 
 2002-03-28  Vladimir Makarov  <vmakarov@redhat.com>
 
         * config/pa/pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMON,
         ASM_OUTPUT_ALIGNED_LOCAL): Redefine them.
 
 Index: gcc/config/pa/pa-pro-end.h
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 retrieving revision 1.5.24.1
 diff -c -p -r1.5.24.1 pa-pro-end.h
 *** pa-pro-end.h        2002/03/27 03:54:40     1.5.24.1
 --- pa-pro-end.h        2002/03/28 20:42:00
 *************** Boston, MA 02111-1307, USA.  */
 *** 40,42 ****
 --- 40,65 ----
      linker script to pull it in.  */
   #undef STARTFILE_SPEC
   #define STARTFILE_SPEC ""
 + 
 + /* The following two macros are identical to the one in pa.h.  We need
 +    to override the macros in elfos.h on the rtems and pro ports.  */
 + 
 + /* This says how to output an assembler line to define a global common
 symbol
 +    with size SIZE (in bytes) and alignment ALIGN (in bits).  */
 + 
 + #undef ASM_OUTPUT_ALIGNED_COMMON
 + #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGNED)         
 \
 + { bss_section ();                                                    
 \
 +   assemble_name ((FILE), (NAME));                                    
 \
 +   fputs ("\t.comm ", (FILE));                                        
 \
 +   fprintf ((FILE), "%d\n", MAX ((SIZE), ((ALIGNED) /
 BITS_PER_UNIT)));}
 + 
 + /* This says how to output an assembler line to define a local common
 symbol
 +    with size SIZE (in bytes) and alignment ALIGN (in bits).  */
 + 
 + #undef ASM_OUTPUT_ALIGNED_LOCAL
 + #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGNED)          
 \
 + { bss_section ();                                                    
 \
 +   fprintf ((FILE), "\t.align %d\n", ((ALIGNED) / BITS_PER_UNIT));    
 \
 +   assemble_name ((FILE), (NAME));                                    
 \
 +   fprintf ((FILE), "\n\t.block %d\n", (SIZE));}


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-27 10:56 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-27 10:56 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: Joel Sherrill <joel.sherrill@OARcorp.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org, vmakarov@gcc.gnu.org,
        joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Wed, 27 Mar 2002 13:52:05 -0500

 Joel Sherrill wrote:
 > 
 > Vladimir Makarov wrote:
 > >
 > > Joel Sherrill wrote:
 > > >
 > > > Vladimir Makarov wrote:
 > > > >
 > > > > Joel Sherrill wrote:
 > > > > >
 > > > > > Vladimir Makarov wrote:
 > > > > > >
 > > > > > > Joel Sherrill wrote:
 > > > > > > >
 > > > > > > > Vladimir Makarov wrote:
 > > > > > > > >
 > > > > > > > > Joel Sherrill wrote:
 > > > > > > > > >
 > > > > > > > > > Vladimir Makarov wrote:
 > > > > > > > > > >
 > > > > > > > > > > Joel Sherrill wrote:
 > > > > > > > > > >
 > > > > > > > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > > > > > > > >
 > > > > > > > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > > > > > > > knowing about it.
 > > > > > > > > > >
 > > > > > > > > > > Here is the path solving the problem.
 > > > > > > > > > >
 > > > > > > > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > > > > > > > sections in
 > > > > > > > > > >
 > > > > > > > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > > > > > > > >
 > > > > > > > > > Thanks.
 > > > > > > > > >
 > > > > > > > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > > > > > > > for this
 > > > > > > > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > > > > > > > at least
 > > > > > > > > > libgloss and RTEMS have hppa assembly.
 > > > > > > > > >
 > > > > > > > >
 > > > > > > > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > > > > > > > .subspace directive so it should be compiled without problems.
 > > > > > > >
 > > > > > > > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > > > > > > > port (when really active) was maintained on on an hpux box using gcc
 > > > > > > > and native as/ld.  So getting to the point where it is built using
 > > > > > >
 > > > > > >   Here the rewritten patch is.  __PRO__ is now always defined for
 > > > > > > hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 > > > > > > (__PRO__ was used only for libgcc compilation in it).
 > > > > >
 > > > > > I hate to say this but hppa1.1-*-rtems* includes config/pa/rtems.h after
 > > > > > config/pa/pa-pro-end.h so ends up overriding the CPP_PREDEFINES
 > > > > > settings.
 > > > > > So -D__PRO__ has to be added to config/pa/rtems.h as well.
 > > > > >
 > > > > > It isn't obvious because the include order is from config.gcc but this
 > > > > > is basically how all of the *-rtems* targets are constructed.  We
 > > > > > baseline
 > > > > > another similar target and slightly modify it for RTEMS. :)
 > > > > >
 > > > >   Sorry, I've missed this.  rtems.h is really after pa-pro-end.h in
 > > > > config.gcc for rtems.
 > > > > I think it is even better because __PRO__ will be defined only for
 > > > > hppa1.1-*pro*.
 > > > > hppa1.1-*-rtems* will have __rtems__ (which is already defined in
 > > > > CPP_PREDEFINES in pa/rtmems.h).
 > > >
 > > > > So I'd add only proccessing __rtems__ into lib2funcs.asm to this patch.
 > > > > Is it ok for you?
 > > > >
 > > > > I'd also use __pro__ instead __PRO__ (because __rtems__ use lower
 > > > > letters).  What do you think, Joel.
 > > >
 > > > Given the target, I don't really care :) but in general I would prefer
 > > > that the conditional indicate the assembler to be used independent of
 > > > the OS or lack thereof.
 > > >
 > >
 > > It is hard to achieve.  Of course the used object file format is major.
 > > So we could define __elfobj__ in pro-end.h and rtems.h.  But they are
 > > connected with elf only config.gcc.  Somebody could create
 > > hppa1.1-*-prosom using pro-end.h.  Of course it is stupid because there
 > > is only proelf.
 > >
 > > So I think the following patch is still reasonable.
 > 
 > OK -- fine with me.  I feel like I am flogging a dead horse since all
 > we are doing is mitigating bit rot. :)
 > 
 > Does the target build for you now with c/c++ enabled?
 > 
 > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > >
 > >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__pro__.
 > >
 > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __pro__
 > >         or __rtems_ is defined.
 > >
 > > Index: pa/lib2funcs.asm
 > > ===================================================================
 > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > > retrieving revision 1.6
 > > diff -u -p -r1.6 lib2funcs.asm
 > > --- lib2funcs.asm       2001/04/16 18:30:45     1.6
 > > +++ lib2funcs.asm       2002/03/26 22:13:04
 > > @@ -28,6 +28,7 @@
 > >  ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 > >  ;  Boston, MA 02111-1307, USA.
 > >
 > > +#if !defined(__pro__) && !defined(__rtems__)
 > >         .SPACE $PRIVATE$
 > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > > @@ -35,11 +36,14 @@
 > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > -
 > > +#endif
 > >         .IMPORT $$dyncall,MILLICODE
 > > +#if !defined(__pro__) && !defined(__rtems__)
 > >         .SPACE $TEXT$
 > >         .SUBSPA $CODE$
 > > -
 > > +#else
 > > +       .text
 > > +#endif
 > >  ; Simply call with the address of the desired import stub in %r22 and
 > >  ; arguments in the normal place (%r26-%r23 and stack slots).
 > >  ;
 > > Index: pa/pa-pro-end.h
 > > ===================================================================
 > > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > > retrieving revision 1.5
 > > diff -u -p -r1.5 pa-pro-end.h
 > > --- pa-pro-end.h        2000/11/02 23:29:12     1.5
 > > +++ pa-pro-end.h        2002/03/26 22:13:04
 > > @@ -30,7 +30,7 @@ Boston, MA 02111-1307, USA.  */
 > >  #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > -L/lib/libp/ -lc}"
 > >
 > >  #undef CPP_PREDEFINES
 > > -#define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > > +#define CPP_PREDEFINES "-Dhppa -DPWB -D__pro__ -Acpu=hppa
 > > -Amachine=hppa"
 > >
 
 
   There is another problem of building toolchains hppa1.1-*-pro* and
 hppa1.1-*-rtems*.  The reason of problem is in that .comm has syntax
 different from standard elf one and has no field defining alignment.
 
   The following patch solves the problem.
 
   I close the PR.
 
 Vlad
 
 
 2002-03-27  Vladimir Makarov  <vmakarov@redhat.com>
 
         * config/pa/elf.h (ASM_OUTPUT_ALIGNED_LOCAL): Redefine it.
 
 Index: gcc/config/pa/elf.h
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/elf.h,v
 retrieving revision 1.12
 diff -c -p -r1.12 elf.h
 *** elf.h       2002/01/04 15:43:30     1.12
 --- elf.h       2002/03/27 18:50:09
 *************** do {  \
 *** 98,103 ****
 --- 98,112 ----
          fputs (",ENTRY\n", FILE);                                     
 \
        } while (0)
   
 + #undef ASM_OUTPUT_ALIGNED_LOCAL
 + #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGNED)          
 \
 + {                                                                    
 \
 +   bss_section ();                                                    
 \
 +   fprintf ((FILE), "\t.align %d\n", ((ALIGNED) / BITS_PER_UNIT));    
 \
 +   assemble_name ((FILE), (NAME));                                    
 \
 +   fprintf ((FILE), "\n\t.block %d\n",
 (SIZE));                                \
 + }
 +   
   /* Biggest alignment supported by the object file format of this
      machine.  Use this macro to limit the alignment which can be
      specified using the `__attribute__ ((aligned (N)))' construct.  If


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 20:06 law
  0 siblings, 0 replies; 24+ messages in thread
From: law @ 2002-03-26 20:06 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: law@redhat.com
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: Joel Sherrill <joel.sherrill@OARcorp.com>, gcc-gnats@gcc.gnu.org,
        gcc-patches@gcc.gnu.org, vmakarov@gcc.gnu.org, joel@gcc.gnu.org,
        gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf 
Date: Tue, 26 Mar 2002 20:59:08 -0700

  In message <3CA0F363.6A938C38@redhat.com>, Vladimir Makarov writes:
  > It is hard to achieve.  Of course the used object file format is major. 
  > So we could define __elfobj__ in pro-end.h and rtems.h.  But they are
  > connected with elf only config.gcc.  Somebody could create
  > hppa1.1-*-prosom using pro-end.h.  Of course it is stupid because there
  > is only proelf.
  > 
  > So I think the following patch is still reasonable.
  > 
  > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
  > 
  >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__pro__.
  > 
  >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __pro__
  >         or __rtems_ is defined.
 I went ahead and installed this patch.
 
 Thanks,
 jeff
 


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 14:26 Joel Sherrill
  0 siblings, 0 replies; 24+ messages in thread
From: Joel Sherrill @ 2002-03-26 14:26 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Joel Sherrill <joel.sherrill@OARcorp.com>
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org,
 	vmakarov@gcc.gnu.org, joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 16:24:42 -0600

 Vladimir Makarov wrote:
 > 
 > Joel Sherrill wrote:
 > >
 > > Vladimir Makarov wrote:
 > > >
 > > > Joel Sherrill wrote:
 > > > >
 > > > > Vladimir Makarov wrote:
 > > > > >
 > > > > > Joel Sherrill wrote:
 > > > > > >
 > > > > > > Vladimir Makarov wrote:
 > > > > > > >
 > > > > > > > Joel Sherrill wrote:
 > > > > > > > >
 > > > > > > > > Vladimir Makarov wrote:
 > > > > > > > > >
 > > > > > > > > > Joel Sherrill wrote:
 > > > > > > > > >
 > > > > > > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > > > > > > >
 > > > > > > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > > > > > > knowing about it.
 > > > > > > > > >
 > > > > > > > > > Here is the path solving the problem.
 > > > > > > > > >
 > > > > > > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > > > > > > sections in
 > > > > > > > > >
 > > > > > > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > > > > > > >
 > > > > > > > > Thanks.
 > > > > > > > >
 > > > > > > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > > > > > > for this
 > > > > > > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > > > > > > at least
 > > > > > > > > libgloss and RTEMS have hppa assembly.
 > > > > > > > >
 > > > > > > >
 > > > > > > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > > > > > > .subspace directive so it should be compiled without problems.
 > > > > > >
 > > > > > > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > > > > > > port (when really active) was maintained on on an hpux box using gcc
 > > > > > > and native as/ld.  So getting to the point where it is built using
 > > > > >
 > > > > >   Here the rewritten patch is.  __PRO__ is now always defined for
 > > > > > hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 > > > > > (__PRO__ was used only for libgcc compilation in it).
 > > > >
 > > > > I hate to say this but hppa1.1-*-rtems* includes config/pa/rtems.h after
 > > > > config/pa/pa-pro-end.h so ends up overriding the CPP_PREDEFINES
 > > > > settings.
 > > > > So -D__PRO__ has to be added to config/pa/rtems.h as well.
 > > > >
 > > > > It isn't obvious because the include order is from config.gcc but this
 > > > > is basically how all of the *-rtems* targets are constructed.  We
 > > > > baseline
 > > > > another similar target and slightly modify it for RTEMS. :)
 > > > >
 > > >   Sorry, I've missed this.  rtems.h is really after pa-pro-end.h in
 > > > config.gcc for rtems.
 > > > I think it is even better because __PRO__ will be defined only for
 > > > hppa1.1-*pro*.
 > > > hppa1.1-*-rtems* will have __rtems__ (which is already defined in
 > > > CPP_PREDEFINES in pa/rtmems.h).
 > >
 > > > So I'd add only proccessing __rtems__ into lib2funcs.asm to this patch.
 > > > Is it ok for you?
 > > >
 > > > I'd also use __pro__ instead __PRO__ (because __rtems__ use lower
 > > > letters).  What do you think, Joel.
 > >
 > > Given the target, I don't really care :) but in general I would prefer
 > > that the conditional indicate the assembler to be used independent of
 > > the OS or lack thereof.
 > >
 > 
 > It is hard to achieve.  Of course the used object file format is major.
 > So we could define __elfobj__ in pro-end.h and rtems.h.  But they are
 > connected with elf only config.gcc.  Somebody could create
 > hppa1.1-*-prosom using pro-end.h.  Of course it is stupid because there
 > is only proelf.
 >
 > So I think the following patch is still reasonable.
 
 OK -- fine with me.  I feel like I am flogging a dead horse since all 
 we are doing is mitigating bit rot. :)
 
 Does the target build for you now with c/c++ enabled?
  
 > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > 
 >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__pro__.
 > 
 >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __pro__
 >         or __rtems_ is defined.
 > 
 > Index: pa/lib2funcs.asm
 > ===================================================================
 > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > retrieving revision 1.6
 > diff -u -p -r1.6 lib2funcs.asm
 > --- lib2funcs.asm       2001/04/16 18:30:45     1.6
 > +++ lib2funcs.asm       2002/03/26 22:13:04
 > @@ -28,6 +28,7 @@
 >  ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 >  ;  Boston, MA 02111-1307, USA.
 > 
 > +#if !defined(__pro__) && !defined(__rtems__)
 >         .SPACE $PRIVATE$
 >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > @@ -35,11 +36,14 @@
 >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > -
 > +#endif
 >         .IMPORT $$dyncall,MILLICODE
 > +#if !defined(__pro__) && !defined(__rtems__)
 >         .SPACE $TEXT$
 >         .SUBSPA $CODE$
 > -
 > +#else
 > +       .text
 > +#endif
 >  ; Simply call with the address of the desired import stub in %r22 and
 >  ; arguments in the normal place (%r26-%r23 and stack slots).
 >  ;
 > Index: pa/pa-pro-end.h
 > ===================================================================
 > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > retrieving revision 1.5
 > diff -u -p -r1.5 pa-pro-end.h
 > --- pa-pro-end.h        2000/11/02 23:29:12     1.5
 > +++ pa-pro-end.h        2002/03/26 22:13:04
 > @@ -30,7 +30,7 @@ Boston, MA 02111-1307, USA.  */
 >  #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > -L/lib/libp/ -lc}"
 > 
 >  #undef CPP_PREDEFINES
 > -#define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > +#define CPP_PREDEFINES "-Dhppa -DPWB -D__pro__ -Acpu=hppa
 > -Amachine=hppa"
 > 
 >  /* hpux8 and later have C++ compatible include files, so do not
 >     pretend they are `extern "C"'.  */
 > 
 > > I appreciate all the fine-tuning work you are doing. :)
 > >
 > > > >
 > > > > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > > > > >
 > > > > >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__PRO__.
 > > > > >
 > > > > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 > > > > >         defined.
 > > > > >
 > > > > > Index: pa/lib2funcs.asm
 > > > > > ===================================================================
 > > > > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > > > > > retrieving revision 1.6
 > > > > > diff -c -p -r1.6 lib2funcs.asm
 > > > > > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 > > > > > --- lib2funcs.asm       2002/03/26 20:46:35
 > > > > > ***************
 > > > > > *** 28,33 ****
 > > > > > --- 28,34 ----
 > > > > >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 > > > > >   ;  Boston, MA 02111-1307, USA.
 > > > > >
 > > > > > + #ifndef __PRO__
 > > > > >         .SPACE $PRIVATE$
 > > > > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 > > > > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > > > > > ***************
 > > > > > *** 35,45 ****
 > > > > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > > > > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > > > > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > > > > !
 > > > > >         .IMPORT $$dyncall,MILLICODE
 > > > > >         .SPACE $TEXT$
 > > > > >         .SUBSPA $CODE$
 > > > > > !
 > > > > >   ; Simply call with the address of the desired import stub in %r22 and
 > > > > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > > > > >   ;
 > > > > > --- 36,49 ----
 > > > > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > > > > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > > > > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > > > > ! #endif
 > > > > >         .IMPORT $$dyncall,MILLICODE
 > > > > > + #ifndef __PRO__
 > > > > >         .SPACE $TEXT$
 > > > > >         .SUBSPA $CODE$
 > > > > > ! #else
 > > > > > !       .text
 > > > > > ! #endif
 > > > > >   ; Simply call with the address of the desired import stub in %r22 and
 > > > > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > > > > >   ;
 > > > > > Index: pa/pa-pro-end.h
 > > > > > ===================================================================
 > > > > > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > > > > > retrieving revision 1.5
 > > > > > diff -c -p -r1.5 pa-pro-end.h
 > > > > > *** pa-pro-end.h        2000/11/02 23:29:12     1.5
 > > > > > --- pa-pro-end.h        2002/03/26 20:46:35
 > > > > > *************** Boston, MA 02111-1307, USA.  */
 > > > > > *** 30,36 ****
 > > > > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > > > > -L/lib/libp/ -lc}"
 > > > > >
 > > > > >   #undef CPP_PREDEFINES
 > > > > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > > > > >
 > > > > >   /* hpux8 and later have C++ compatible include files, so do not
 > > > > >      pretend they are `extern "C"'.  */
 > > > > > --- 30,36 ----
 > > > > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > > > > -L/lib/libp/ -lc}"
 > > > > >
 > > > > >   #undef CPP_PREDEFINES
 > > > > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -D__PRO__ -Acpu=hppa
 > > > > > -Amachine=hppa"
 > > > > >
 > > > > >   /* hpux8 and later have C++ compatible include files, so do not
 > > > > >      pretend they are `extern "C"'.  */
 > > > >
 > > > > --
 > > > > Joel Sherrill, Ph.D.             Director of Research & Development
 > > > > joel@OARcorp.com                 On-Line Applications Research
 > > > > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 > > > > Support Available                (256) 722-9985
 > >
 > > --
 > > Joel Sherrill, Ph.D.             Director of Research & Development
 > > joel@OARcorp.com                 On-Line Applications Research
 > > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 > > Support Available                (256) 722-9985
 
 -- 
 Joel Sherrill, Ph.D.             Director of Research & Development
 joel@OARcorp.com                 On-Line Applications Research
 Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 14:26 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-26 14:26 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: Joel Sherrill <joel.sherrill@OARcorp.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org, vmakarov@gcc.gnu.org,
        joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 17:17:07 -0500

 Joel Sherrill wrote:
 > 
 > Vladimir Makarov wrote:
 > >
 > > Joel Sherrill wrote:
 > > >
 > > > Vladimir Makarov wrote:
 > > > >
 > > > > Joel Sherrill wrote:
 > > > > >
 > > > > > Vladimir Makarov wrote:
 > > > > > >
 > > > > > > Joel Sherrill wrote:
 > > > > > > >
 > > > > > > > Vladimir Makarov wrote:
 > > > > > > > >
 > > > > > > > > Joel Sherrill wrote:
 > > > > > > > >
 > > > > > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > > > > > >
 > > > > > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > > > > > knowing about it.
 > > > > > > > >
 > > > > > > > > Here is the path solving the problem.
 > > > > > > > >
 > > > > > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > > > > > sections in
 > > > > > > > >
 > > > > > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > > > > > >
 > > > > > > > Thanks.
 > > > > > > >
 > > > > > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > > > > > for this
 > > > > > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > > > > > at least
 > > > > > > > libgloss and RTEMS have hppa assembly.
 > > > > > > >
 > > > > > >
 > > > > > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > > > > > .subspace directive so it should be compiled without problems.
 > > > > >
 > > > > > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > > > > > port (when really active) was maintained on on an hpux box using gcc
 > > > > > and native as/ld.  So getting to the point where it is built using
 > > > >
 > > > >   Here the rewritten patch is.  __PRO__ is now always defined for
 > > > > hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 > > > > (__PRO__ was used only for libgcc compilation in it).
 > > >
 > > > I hate to say this but hppa1.1-*-rtems* includes config/pa/rtems.h after
 > > > config/pa/pa-pro-end.h so ends up overriding the CPP_PREDEFINES
 > > > settings.
 > > > So -D__PRO__ has to be added to config/pa/rtems.h as well.
 > > >
 > > > It isn't obvious because the include order is from config.gcc but this
 > > > is basically how all of the *-rtems* targets are constructed.  We
 > > > baseline
 > > > another similar target and slightly modify it for RTEMS. :)
 > > >
 > >   Sorry, I've missed this.  rtems.h is really after pa-pro-end.h in
 > > config.gcc for rtems.
 > > I think it is even better because __PRO__ will be defined only for
 > > hppa1.1-*pro*.
 > > hppa1.1-*-rtems* will have __rtems__ (which is already defined in
 > > CPP_PREDEFINES in pa/rtmems.h).
 > 
 > > So I'd add only proccessing __rtems__ into lib2funcs.asm to this patch.
 > > Is it ok for you?
 > >
 > > I'd also use __pro__ instead __PRO__ (because __rtems__ use lower
 > > letters).  What do you think, Joel.
 > 
 > Given the target, I don't really care :) but in general I would prefer
 > that the conditional indicate the assembler to be used independent of
 > the OS or lack thereof.
 > 
 
 It is hard to achieve.  Of course the used object file format is major. 
 So we could define __elfobj__ in pro-end.h and rtems.h.  But they are
 connected with elf only config.gcc.  Somebody could create
 hppa1.1-*-prosom using pro-end.h.  Of course it is stupid because there
 is only proelf.
 
 So I think the following patch is still reasonable.
 
 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 
         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__pro__.
 
         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __pro__
         or __rtems_ is defined.
 
 Index: pa/lib2funcs.asm
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 retrieving revision 1.6
 diff -u -p -r1.6 lib2funcs.asm
 --- lib2funcs.asm       2001/04/16 18:30:45     1.6
 +++ lib2funcs.asm       2002/03/26 22:13:04
 @@ -28,6 +28,7 @@
  ;  the Free Software Foundation, 59 Temple Place - Suite 330,
  ;  Boston, MA 02111-1307, USA.
  
 +#if !defined(__pro__) && !defined(__rtems__)
         .SPACE $PRIVATE$
         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 @@ -35,11 +36,14 @@
         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 -
 +#endif
         .IMPORT $$dyncall,MILLICODE
 +#if !defined(__pro__) && !defined(__rtems__)
         .SPACE $TEXT$
         .SUBSPA $CODE$
 -
 +#else
 +       .text
 +#endif
  ; Simply call with the address of the desired import stub in %r22 and
  ; arguments in the normal place (%r26-%r23 and stack slots).
  ;
 Index: pa/pa-pro-end.h
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 retrieving revision 1.5
 diff -u -p -r1.5 pa-pro-end.h
 --- pa-pro-end.h        2000/11/02 23:29:12     1.5
 +++ pa-pro-end.h        2002/03/26 22:13:04
 @@ -30,7 +30,7 @@ Boston, MA 02111-1307, USA.  */
  #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 -L/lib/libp/ -lc}"
  
  #undef CPP_PREDEFINES
 -#define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 +#define CPP_PREDEFINES "-Dhppa -DPWB -D__pro__ -Acpu=hppa
 -Amachine=hppa"
  
  /* hpux8 and later have C++ compatible include files, so do not
     pretend they are `extern "C"'.  */
 
 
 
 > I appreciate all the fine-tuning work you are doing. :)
 > 
 > > >
 > > > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > > > >
 > > > >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__PRO__.
 > > > >
 > > > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 > > > >         defined.
 > > > >
 > > > > Index: pa/lib2funcs.asm
 > > > > ===================================================================
 > > > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > > > > retrieving revision 1.6
 > > > > diff -c -p -r1.6 lib2funcs.asm
 > > > > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 > > > > --- lib2funcs.asm       2002/03/26 20:46:35
 > > > > ***************
 > > > > *** 28,33 ****
 > > > > --- 28,34 ----
 > > > >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 > > > >   ;  Boston, MA 02111-1307, USA.
 > > > >
 > > > > + #ifndef __PRO__
 > > > >         .SPACE $PRIVATE$
 > > > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 > > > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > > > > ***************
 > > > > *** 35,45 ****
 > > > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > > > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > > > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > > > !
 > > > >         .IMPORT $$dyncall,MILLICODE
 > > > >         .SPACE $TEXT$
 > > > >         .SUBSPA $CODE$
 > > > > !
 > > > >   ; Simply call with the address of the desired import stub in %r22 and
 > > > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > > > >   ;
 > > > > --- 36,49 ----
 > > > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > > > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > > > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > > > ! #endif
 > > > >         .IMPORT $$dyncall,MILLICODE
 > > > > + #ifndef __PRO__
 > > > >         .SPACE $TEXT$
 > > > >         .SUBSPA $CODE$
 > > > > ! #else
 > > > > !       .text
 > > > > ! #endif
 > > > >   ; Simply call with the address of the desired import stub in %r22 and
 > > > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > > > >   ;
 > > > > Index: pa/pa-pro-end.h
 > > > > ===================================================================
 > > > > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > > > > retrieving revision 1.5
 > > > > diff -c -p -r1.5 pa-pro-end.h
 > > > > *** pa-pro-end.h        2000/11/02 23:29:12     1.5
 > > > > --- pa-pro-end.h        2002/03/26 20:46:35
 > > > > *************** Boston, MA 02111-1307, USA.  */
 > > > > *** 30,36 ****
 > > > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > > > -L/lib/libp/ -lc}"
 > > > >
 > > > >   #undef CPP_PREDEFINES
 > > > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > > > >
 > > > >   /* hpux8 and later have C++ compatible include files, so do not
 > > > >      pretend they are `extern "C"'.  */
 > > > > --- 30,36 ----
 > > > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > > > -L/lib/libp/ -lc}"
 > > > >
 > > > >   #undef CPP_PREDEFINES
 > > > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -D__PRO__ -Acpu=hppa
 > > > > -Amachine=hppa"
 > > > >
 > > > >   /* hpux8 and later have C++ compatible include files, so do not
 > > > >      pretend they are `extern "C"'.  */
 > > >
 > > > --
 > > > Joel Sherrill, Ph.D.             Director of Research & Development
 > > > joel@OARcorp.com                 On-Line Applications Research
 > > > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 > > > Support Available                (256) 722-9985
 > 
 > --
 > Joel Sherrill, Ph.D.             Director of Research & Development
 > joel@OARcorp.com                 On-Line Applications Research
 > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 > Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 13:36 Joel Sherrill
  0 siblings, 0 replies; 24+ messages in thread
From: Joel Sherrill @ 2002-03-26 13:36 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Joel Sherrill <joel.sherrill@OARcorp.com>
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org,
 	vmakarov@gcc.gnu.org, joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 15:34:47 -0600

 Vladimir Makarov wrote:
 > 
 > Joel Sherrill wrote:
 > >
 > > Vladimir Makarov wrote:
 > > >
 > > > Joel Sherrill wrote:
 > > > >
 > > > > Vladimir Makarov wrote:
 > > > > >
 > > > > > Joel Sherrill wrote:
 > > > > > >
 > > > > > > Vladimir Makarov wrote:
 > > > > > > >
 > > > > > > > Joel Sherrill wrote:
 > > > > > > >
 > > > > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > > > > >
 > > > > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > > > > knowing about it.
 > > > > > > >
 > > > > > > > Here is the path solving the problem.
 > > > > > > >
 > > > > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > > > > sections in
 > > > > > > >
 > > > > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > > > > >
 > > > > > > Thanks.
 > > > > > >
 > > > > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > > > > for this
 > > > > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > > > > at least
 > > > > > > libgloss and RTEMS have hppa assembly.
 > > > > > >
 > > > > >
 > > > > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > > > > .subspace directive so it should be compiled without problems.
 > > > >
 > > > > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > > > > port (when really active) was maintained on on an hpux box using gcc
 > > > > and native as/ld.  So getting to the point where it is built using
 > > >
 > > >   Here the rewritten patch is.  __PRO__ is now always defined for
 > > > hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 > > > (__PRO__ was used only for libgcc compilation in it).
 > >
 > > I hate to say this but hppa1.1-*-rtems* includes config/pa/rtems.h after
 > > config/pa/pa-pro-end.h so ends up overriding the CPP_PREDEFINES
 > > settings.
 > > So -D__PRO__ has to be added to config/pa/rtems.h as well.
 > >
 > > It isn't obvious because the include order is from config.gcc but this
 > > is basically how all of the *-rtems* targets are constructed.  We
 > > baseline
 > > another similar target and slightly modify it for RTEMS. :)
 > >
 >   Sorry, I've missed this.  rtems.h is really after pa-pro-end.h in
 > config.gcc for rtems.
 > I think it is even better because __PRO__ will be defined only for
 > hppa1.1-*pro*.
 > hppa1.1-*-rtems* will have __rtems__ (which is already defined in
 > CPP_PREDEFINES in pa/rtmems.h).
 
 > So I'd add only proccessing __rtems__ into lib2funcs.asm to this patch.
 > Is it ok for you?
 > 
 > I'd also use __pro__ instead __PRO__ (because __rtems__ use lower
 > letters).  What do you think, Joel.
 
 Given the target, I don't really care :) but in general I would prefer
 that the conditional indicate the assembler to be used independent of
 the OS or lack thereof.
 
 I appreciate all the fine-tuning work you are doing. :)
 
 > >
 > > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > > >
 > > >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__PRO__.
 > > >
 > > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 > > >         defined.
 > > >
 > > > Index: pa/lib2funcs.asm
 > > > ===================================================================
 > > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > > > retrieving revision 1.6
 > > > diff -c -p -r1.6 lib2funcs.asm
 > > > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 > > > --- lib2funcs.asm       2002/03/26 20:46:35
 > > > ***************
 > > > *** 28,33 ****
 > > > --- 28,34 ----
 > > >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 > > >   ;  Boston, MA 02111-1307, USA.
 > > >
 > > > + #ifndef __PRO__
 > > >         .SPACE $PRIVATE$
 > > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 > > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > > > ***************
 > > > *** 35,45 ****
 > > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > > !
 > > >         .IMPORT $$dyncall,MILLICODE
 > > >         .SPACE $TEXT$
 > > >         .SUBSPA $CODE$
 > > > !
 > > >   ; Simply call with the address of the desired import stub in %r22 and
 > > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > > >   ;
 > > > --- 36,49 ----
 > > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 > > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 > > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > > > ! #endif
 > > >         .IMPORT $$dyncall,MILLICODE
 > > > + #ifndef __PRO__
 > > >         .SPACE $TEXT$
 > > >         .SUBSPA $CODE$
 > > > ! #else
 > > > !       .text
 > > > ! #endif
 > > >   ; Simply call with the address of the desired import stub in %r22 and
 > > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 > > >   ;
 > > > Index: pa/pa-pro-end.h
 > > > ===================================================================
 > > > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > > > retrieving revision 1.5
 > > > diff -c -p -r1.5 pa-pro-end.h
 > > > *** pa-pro-end.h        2000/11/02 23:29:12     1.5
 > > > --- pa-pro-end.h        2002/03/26 20:46:35
 > > > *************** Boston, MA 02111-1307, USA.  */
 > > > *** 30,36 ****
 > > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > > -L/lib/libp/ -lc}"
 > > >
 > > >   #undef CPP_PREDEFINES
 > > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > > >
 > > >   /* hpux8 and later have C++ compatible include files, so do not
 > > >      pretend they are `extern "C"'.  */
 > > > --- 30,36 ----
 > > >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > > > -L/lib/libp/ -lc}"
 > > >
 > > >   #undef CPP_PREDEFINES
 > > > ! #define CPP_PREDEFINES "-Dhppa -DPWB -D__PRO__ -Acpu=hppa
 > > > -Amachine=hppa"
 > > >
 > > >   /* hpux8 and later have C++ compatible include files, so do not
 > > >      pretend they are `extern "C"'.  */
 > >
 > > --
 > > Joel Sherrill, Ph.D.             Director of Research & Development
 > > joel@OARcorp.com                 On-Line Applications Research
 > > Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 > > Support Available                (256) 722-9985
 
 -- 
 Joel Sherrill, Ph.D.             Director of Research & Development
 joel@OARcorp.com                 On-Line Applications Research
 Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 13:06 Joel Sherrill
  0 siblings, 0 replies; 24+ messages in thread
From: Joel Sherrill @ 2002-03-26 13:06 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Joel Sherrill <joel.sherrill@OARcorp.com>
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org,
 	vmakarov@gcc.gnu.org, joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 14:59:26 -0600

 Vladimir Makarov wrote:
 > 
 > Joel Sherrill wrote:
 > >
 > > Vladimir Makarov wrote:
 > > >
 > > > Joel Sherrill wrote:
 > > > >
 > > > > Vladimir Makarov wrote:
 > > > > >
 > > > > > Joel Sherrill wrote:
 > > > > >
 > > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > > >
 > > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > > knowing about it.
 > > > > >
 > > > > > Here is the path solving the problem.
 > > > > >
 > > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > > sections in
 > > > > >
 > > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > > >
 > > > > Thanks.
 > > > >
 > > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > > for this
 > > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > > at least
 > > > > libgloss and RTEMS have hppa assembly.
 > > > >
 > > >
 > > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > > .subspace directive so it should be compiled without problems.
 > >
 > > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > > port (when really active) was maintained on on an hpux box using gcc
 > > and native as/ld.  So getting to the point where it is built using
 > 
 >   Here the rewritten patch is.  __PRO__ is now always defined for
 > hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 > (__PRO__ was used only for libgcc compilation in it).
 
 I hate to say this but hppa1.1-*-rtems* includes config/pa/rtems.h after
 config/pa/pa-pro-end.h so ends up overriding the CPP_PREDEFINES
 settings.
 So -D__PRO__ has to be added to config/pa/rtems.h as well.
 
 It isn't obvious because the include order is from config.gcc but this
 is basically how all of the *-rtems* targets are constructed.  We
 baseline
 another similar target and slightly modify it for RTEMS. :)
 
 --joel
 
 > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > 
 >         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__PRO__.
 > 
 >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 >         defined.
 > 
 > Index: pa/lib2funcs.asm
 > ===================================================================
 > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > retrieving revision 1.6
 > diff -c -p -r1.6 lib2funcs.asm
 > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 > --- lib2funcs.asm       2002/03/26 20:46:35
 > ***************
 > *** 28,33 ****
 > --- 28,34 ----
 >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 >   ;  Boston, MA 02111-1307, USA.
 > 
 > + #ifndef __PRO__
 >         .SPACE $PRIVATE$
 >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > ***************
 > *** 35,45 ****
 >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > !
 >         .IMPORT $$dyncall,MILLICODE
 >         .SPACE $TEXT$
 >         .SUBSPA $CODE$
 > !
 >   ; Simply call with the address of the desired import stub in %r22 and
 >   ; arguments in the normal place (%r26-%r23 and stack slots).
 >   ;
 > --- 36,49 ----
 >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > ! #endif
 >         .IMPORT $$dyncall,MILLICODE
 > + #ifndef __PRO__
 >         .SPACE $TEXT$
 >         .SUBSPA $CODE$
 > ! #else
 > !       .text
 > ! #endif
 >   ; Simply call with the address of the desired import stub in %r22 and
 >   ; arguments in the normal place (%r26-%r23 and stack slots).
 >   ;
 > Index: pa/pa-pro-end.h
 > ===================================================================
 > RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 > retrieving revision 1.5
 > diff -c -p -r1.5 pa-pro-end.h
 > *** pa-pro-end.h        2000/11/02 23:29:12     1.5
 > --- pa-pro-end.h        2002/03/26 20:46:35
 > *************** Boston, MA 02111-1307, USA.  */
 > *** 30,36 ****
 >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > -L/lib/libp/ -lc}"
 > 
 >   #undef CPP_PREDEFINES
 > ! #define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
 > 
 >   /* hpux8 and later have C++ compatible include files, so do not
 >      pretend they are `extern "C"'.  */
 > --- 30,36 ----
 >   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 > -L/lib/libp/ -lc}"
 > 
 >   #undef CPP_PREDEFINES
 > ! #define CPP_PREDEFINES "-Dhppa -DPWB -D__PRO__ -Acpu=hppa
 > -Amachine=hppa"
 > 
 >   /* hpux8 and later have C++ compatible include files, so do not
 >      pretend they are `extern "C"'.  */
 
 -- 
 Joel Sherrill, Ph.D.             Director of Research & Development
 joel@OARcorp.com                 On-Line Applications Research
 Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 12:56 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-26 12:56 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: Joel Sherrill <joel.sherrill@OARcorp.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org, vmakarov@gcc.gnu.org,
        joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 15:53:55 -0500

 Joel Sherrill wrote:
 > 
 > Vladimir Makarov wrote:
 > >
 > > Joel Sherrill wrote:
 > > >
 > > > Vladimir Makarov wrote:
 > > > >
 > > > > Joel Sherrill wrote:
 > > > >
 > > > > >Is there any ifdef to check and decide which directives to use?
 > > > > >
 > > > > > And if there is any reference mapping between them, I would appreciate
 > > > > > knowing about it.
 > > > >
 > > > > Here is the path solving the problem.
 > > > >
 > > > > You could find a description of the pseudoops and mapping them into elf
 > > > > sections in
 > > > >
 > > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > > >
 > > > Thanks.
 > > >
 > > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > > for this
 > > > configuration so non-gcc assembly can do the right thing?  I know that
 > > > at least
 > > > libgloss and RTEMS have hppa assembly.
 > > >
 > >
 > > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > > .subspace directive so it should be compiled without problems.
 > 
 > OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 > port (when really active) was maintained on on an hpux box using gcc
 > and native as/ld.  So getting to the point where it is built using
 
   Here the rewritten patch is.  __PRO__ is now always defined for
 hppa1.1-*-pro* and hppa1.1-*-rtems*.  Please ignore the previous patch
 (__PRO__ was used only for libgcc compilation in it).
 
 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 
         * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__PRO__.
 
         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
         defined.
 
 Index: pa/lib2funcs.asm
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 retrieving revision 1.6
 diff -c -p -r1.6 lib2funcs.asm
 *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 --- lib2funcs.asm       2002/03/26 20:46:35
 ***************
 *** 28,33 ****
 --- 28,34 ----
   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
   ;  Boston, MA 02111-1307, USA.
   
 + #ifndef __PRO__
         .SPACE $PRIVATE$
         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 ***************
 *** 35,45 ****
         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 ! 
         .IMPORT $$dyncall,MILLICODE
         .SPACE $TEXT$
         .SUBSPA $CODE$
 ! 
   ; Simply call with the address of the desired import stub in %r22 and
   ; arguments in the normal place (%r26-%r23 and stack slots).
   ;
 --- 36,49 ----
         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 ! #endif
         .IMPORT $$dyncall,MILLICODE
 + #ifndef __PRO__
         .SPACE $TEXT$
         .SUBSPA $CODE$
 ! #else
 !       .text
 ! #endif
   ; Simply call with the address of the desired import stub in %r22 and
   ; arguments in the normal place (%r26-%r23 and stack slots).
   ;
 Index: pa/pa-pro-end.h
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
 retrieving revision 1.5
 diff -c -p -r1.5 pa-pro-end.h
 *** pa-pro-end.h        2000/11/02 23:29:12     1.5
 --- pa-pro-end.h        2002/03/26 20:46:35
 *************** Boston, MA 02111-1307, USA.  */
 *** 30,36 ****
   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 -L/lib/libp/ -lc}"
   
   #undef CPP_PREDEFINES
 ! #define CPP_PREDEFINES "-Dhppa -DPWB -Acpu=hppa -Amachine=hppa"
   
   /* hpux8 and later have C++ compatible include files, so do not
      pretend they are `extern "C"'.  */
 --- 30,36 ----
   #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg:
 -L/lib/libp/ -lc}"
   
   #undef CPP_PREDEFINES
 ! #define CPP_PREDEFINES "-Dhppa -DPWB -D__PRO__ -Acpu=hppa
 -Amachine=hppa"
   
   /* hpux8 and later have C++ compatible include files, so do not
      pretend they are `extern "C"'.  */


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26 10:16 Joel Sherrill
  0 siblings, 0 replies; 24+ messages in thread
From: Joel Sherrill @ 2002-03-26 10:16 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Joel Sherrill <joel.sherrill@OARcorp.com>
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org,
 	vmakarov@gcc.gnu.org, joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org,
 	gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 12:09:17 -0600

 Vladimir Makarov wrote:
 > 
 > Joel Sherrill wrote:
 > >
 > > Vladimir Makarov wrote:
 > > >
 > > > Joel Sherrill wrote:
 > > >
 > > > >Is there any ifdef to check and decide which directives to use?
 > > > >
 > > > > And if there is any reference mapping between them, I would appreciate
 > > > > knowing about it.
 > > >
 > > > Here is the path solving the problem.
 > > >
 > > > You could find a description of the pseudoops and mapping them into elf
 > > > sections in
 > > >
 > > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > >
 > > Thanks.
 > >
 > > Could the __PRO__ (or something similar) be part of the cpp predefines
 > > for this
 > > configuration so non-gcc assembly can do the right thing?  I know that
 > > at least
 > > libgloss and RTEMS have hppa assembly.
 > >
 > 
 > Yes, we could do it.  But it is not urgent now.  Libgloss has no
 > .subspace directive so it should be compiled without problems.
 
 OK.  There are some in RTEMS but I am happy to disable them.  The hppa
 port (when really active) was maintained on on an hpux box using gcc
 and native as/ld.  So getting to the point where it is built using
 all GNU tools is a plus even if all I can do is ensure it compiles. :)
 
 > > Of course, this all begs the bigger question... how many embedded hppa
 > > users
 > > are there really? :)
 > >
 > 
 > I am definitely not an embedded hppa user )
 
 Me either -- just trying to avoid bit-rot in the RTEMS hppa port. :)
 
 > Vlad
 
 --joel


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26  9:56 law
  0 siblings, 0 replies; 24+ messages in thread
From: law @ 2002-03-26  9:56 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: law@redhat.com
To: Joel Sherrill <joel.sherrill@OARcorp.com>
Cc: Vladimir Makarov <vmakarov@redhat.com>, gcc-gnats@gcc.gnu.org,
        gcc-prs@gcc.gnu.org, vmakarov@gcc.gnu.org, joel@gcc.gnu.org,
        gcc-bugs@gcc.gnu.org, gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf 
Date: Tue, 26 Mar 2002 10:49:18 -0700

  In message <3CA0ADA7.34D73D79@OARcorp.com>, Joel Sherrill writes:
  > Could the __PRO__ (or something similar) be part of the cpp predefines
  > for this configuration so non-gcc assembly can do the right thing?  I
  > know that at least libgloss and RTEMS have hppa assembly.
 It would be fairly trivial.  It could be added to CPP_PREDEFINES in 
 pa-pro-end.h
 
 
  > Of course, this all begs the bigger question... how many embedded hppa
  > users are there really? :)
 Very very few.  The embedded PA consortium basically broke up in the late
 90s and we haven't had customers for these tools since.  As a result they
 are basically unsupported/bitrotting.  Looking to the future, I don't expect
 to see embedded PA customers.  It just doesn't make sense given the
 availability to MIPS, PPC & Arm embedded processors.
 
  > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
  > > 
  > >         * pa/t-pro (TARGET_LIBGCC2_CFLAGS): New macro.
  > > 
  > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
  > >         defined.
  > > 
  > > Index: pa/lib2funcs.asm
  > > ===================================================================
  > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
  > > retrieving revision 1.6
  > > diff -c -p -r1.6 lib2funcs.asm
  > > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
  > > --- lib2funcs.asm       2002/03/26 16:57:10
  > > ***************
  > > *** 28,33 ****
  > > --- 28,34 ----
  > >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
  > >   ;  Boston, MA 02111-1307, USA.
  > > 
  > > + #ifndef __PRO__
  > >         .SPACE $PRIVATE$
  > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
  > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
  > > ***************
  > > *** 35,45 ****
  > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
  > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
  > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
  > > !
  > >         .IMPORT $$dyncall,MILLICODE
  > >         .SPACE $TEXT$
  > >         .SUBSPA $CODE$
  > > !
  > >   ; Simply call with the address of the desired import stub in %r22 and
  > >   ; arguments in the normal place (%r26-%r23 and stack slots).
  > >   ;
  > > --- 36,49 ----
  > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
  > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
  > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
  > > ! #endif
  > >         .IMPORT $$dyncall,MILLICODE
  > > + #ifndef __PRO__
  > >         .SPACE $TEXT$
  > >         .SUBSPA $CODE$
  > > ! #else
  > > !       .text
  > > ! #endif
  > >   ; Simply call with the address of the desired import stub in %r22 and
  > >   ; arguments in the normal place (%r26-%r23 and stack slots).
  > >   ;
  > > Index: pa/t-pro
  > > ===================================================================
  > > RCS file: /cvs/gcc/gcc/gcc/config/pa/t-pro,v
  > > retrieving revision 1.8
  > > diff -c -p -r1.8 t-pro
  > > *** t-pro       2002/02/16 22:30:35     1.8
  > > --- t-pro       2002/03/26 16:57:10
  > > *************** T_ADAFLAGS=-mdisable-indexing
  > > *** 2,7 ****
  > > --- 2,11 ----
  > > 
  > >   LIB2FUNCS_EXTRA=lib2funcs.asm
  > > 
  > > + # The following macro definition is used to switch off usage of .SPACE
  > > + # and .SUBSPACE pseudo-ops in lib2funcs.asm for elf targets.
  > > + TARGET_LIBGCC2_CFLAGS=-D__PRO__
  > > +
  > >   # We want fine grained libraries, so use the new code to build the
  > >   # floating point emulation libraries.
  > >   FPBIT = fp-bit.c
  > > 
  > > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc
  > &pr=3589
 Vlad can you move the -D__PRO__ into the CPP_PREDEFINES in pa-pro-end.h?
 
 jeff
 


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26  9:56 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-26  9:56 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: law@redhat.com
Cc: Joel Sherrill <joel.sherrill@OARcorp.com>, gcc-gnats@gcc.gnu.org,
        gcc-prs@gcc.gnu.org, vmakarov@gcc.gnu.org, joel@gcc.gnu.org,
        gcc-bugs@gcc.gnu.org, gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 12:55:26 -0500

 law@redhat.com wrote:
 > 
 >  In message <3CA0ADA7.34D73D79@OARcorp.com>, Joel Sherrill writes:
 >  > Could the __PRO__ (or something similar) be part of the cpp predefines
 >  > for this configuration so non-gcc assembly can do the right thing?  I
 >  > know that at least libgloss and RTEMS have hppa assembly.
 > It would be fairly trivial.  It could be added to CPP_PREDEFINES in
 > pa-pro-end.h
 > 
 >  > Of course, this all begs the bigger question... how many embedded hppa
 >  > users are there really? :)
 > Very very few.  The embedded PA consortium basically broke up in the late
 > 90s and we haven't had customers for these tools since.  As a result they
 > are basically unsupported/bitrotting.  Looking to the future, I don't expect
 > to see embedded PA customers.  It just doesn't make sense given the
 > availability to MIPS, PPC & Arm embedded processors.
 > 
 >  > > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 >  > >
 >  > >         * pa/t-pro (TARGET_LIBGCC2_CFLAGS): New macro.
 >  > >
 >  > >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 >  > >         defined.
 >  > >
 >  > > Index: pa/lib2funcs.asm
 >  > > ===================================================================
 >  > > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 >  > > retrieving revision 1.6
 >  > > diff -c -p -r1.6 lib2funcs.asm
 >  > > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 >  > > --- lib2funcs.asm       2002/03/26 16:57:10
 >  > > ***************
 >  > > *** 28,33 ****
 >  > > --- 28,34 ----
 >  > >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 >  > >   ;  Boston, MA 02111-1307, USA.
 >  > >
 >  > > + #ifndef __PRO__
 >  > >         .SPACE $PRIVATE$
 >  > >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 >  > >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 >  > > ***************
 >  > > *** 35,45 ****
 >  > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >  > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >  > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 >  > > !
 >  > >         .IMPORT $$dyncall,MILLICODE
 >  > >         .SPACE $TEXT$
 >  > >         .SUBSPA $CODE$
 >  > > !
 >  > >   ; Simply call with the address of the desired import stub in %r22 and
 >  > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 >  > >   ;
 >  > > --- 36,49 ----
 >  > >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >  > >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >  > >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 >  > > ! #endif
 >  > >         .IMPORT $$dyncall,MILLICODE
 >  > > + #ifndef __PRO__
 >  > >         .SPACE $TEXT$
 >  > >         .SUBSPA $CODE$
 >  > > ! #else
 >  > > !       .text
 >  > > ! #endif
 >  > >   ; Simply call with the address of the desired import stub in %r22 and
 >  > >   ; arguments in the normal place (%r26-%r23 and stack slots).
 >  > >   ;
 >  > > Index: pa/t-pro
 >  > > ===================================================================
 >  > > RCS file: /cvs/gcc/gcc/gcc/config/pa/t-pro,v
 >  > > retrieving revision 1.8
 >  > > diff -c -p -r1.8 t-pro
 >  > > *** t-pro       2002/02/16 22:30:35     1.8
 >  > > --- t-pro       2002/03/26 16:57:10
 >  > > *************** T_ADAFLAGS=-mdisable-indexing
 >  > > *** 2,7 ****
 >  > > --- 2,11 ----
 >  > >
 >  > >   LIB2FUNCS_EXTRA=lib2funcs.asm
 >  > >
 >  > > + # The following macro definition is used to switch off usage of .SPACE
 >  > > + # and .SUBSPACE pseudo-ops in lib2funcs.asm for elf targets.
 >  > > + TARGET_LIBGCC2_CFLAGS=-D__PRO__
 >  > > +
 >  > >   # We want fine grained libraries, so use the new code to build the
 >  > >   # floating point emulation libraries.
 >  > >   FPBIT = fp-bit.c
 >  > >
 >  > > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc
 >  > &pr=3589
 > Vlad can you move the -D__PRO__ into the CPP_PREDEFINES in pa-pro-end.h?
 
 Ok, I'll rewrite the patch and resend it again.
 
 Vlad


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26  9:36 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-26  9:36 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: Joel Sherrill <joel.sherrill@OARcorp.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, vmakarov@gcc.gnu.org,
        joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 12:30:10 -0500

 Joel Sherrill wrote:
 > 
 > Vladimir Makarov wrote:
 > >
 > > Joel Sherrill wrote:
 > >
 > > >Is there any ifdef to check and decide which directives to use?
 > > >
 > > > And if there is any reference mapping between them, I would appreciate
 > > > knowing about it.
 > >
 > > Here is the path solving the problem.
 > >
 > > You could find a description of the pseudoops and mapping them into elf
 > > sections in
 > >
 > > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 > 
 > Thanks.
 > 
 > Could the __PRO__ (or something similar) be part of the cpp predefines
 > for this
 > configuration so non-gcc assembly can do the right thing?  I know that
 > at least
 > libgloss and RTEMS have hppa assembly.
 > 
 
 Yes, we could do it.  But it is not urgent now.  Libgloss has no
 .subspace directive so it should be compiled without problems.
 
 > Of course, this all begs the bigger question... how many embedded hppa
 > users
 > are there really? :)
 > 
 
 I am definitely not an embedded hppa user )
 
 Vlad


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26  9:26 Joel Sherrill
  0 siblings, 0 replies; 24+ messages in thread
From: Joel Sherrill @ 2002-03-26  9:26 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Joel Sherrill <joel.sherrill@OARcorp.com>
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org,
 	vmakarov@gcc.gnu.org, joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org,
 	gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 11:19:35 -0600

 Vladimir Makarov wrote:
 > 
 > Joel Sherrill wrote:
 > 
 > >Is there any ifdef to check and decide which directives to use?
 > >
 > > And if there is any reference mapping between them, I would appreciate
 > > knowing about it.
 > 
 > Here is the path solving the problem.
 > 
 > You could find a description of the pseudoops and mapping them into elf
 > sections in
 > 
 > http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 
 Thanks.
 
 Could the __PRO__ (or something similar) be part of the cpp predefines
 for this
 configuration so non-gcc assembly can do the right thing?  I know that
 at least
 libgloss and RTEMS have hppa assembly.
 
 Of course, this all begs the bigger question... how many embedded hppa
 users
 are there really? :)
  
 > 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 > 
 >         * pa/t-pro (TARGET_LIBGCC2_CFLAGS): New macro.
 > 
 >         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
 >         defined.
 > 
 > Index: pa/lib2funcs.asm
 > ===================================================================
 > RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 > retrieving revision 1.6
 > diff -c -p -r1.6 lib2funcs.asm
 > *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 > --- lib2funcs.asm       2002/03/26 16:57:10
 > ***************
 > *** 28,33 ****
 > --- 28,34 ----
 >   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
 >   ;  Boston, MA 02111-1307, USA.
 > 
 > + #ifndef __PRO__
 >         .SPACE $PRIVATE$
 >         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
 >         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 > ***************
 > *** 35,45 ****
 >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > !
 >         .IMPORT $$dyncall,MILLICODE
 >         .SPACE $TEXT$
 >         .SUBSPA $CODE$
 > !
 >   ; Simply call with the address of the desired import stub in %r22 and
 >   ; arguments in the normal place (%r26-%r23 and stack slots).
 >   ;
 > --- 36,49 ----
 >         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
 >         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
 >         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 > ! #endif
 >         .IMPORT $$dyncall,MILLICODE
 > + #ifndef __PRO__
 >         .SPACE $TEXT$
 >         .SUBSPA $CODE$
 > ! #else
 > !       .text
 > ! #endif
 >   ; Simply call with the address of the desired import stub in %r22 and
 >   ; arguments in the normal place (%r26-%r23 and stack slots).
 >   ;
 > Index: pa/t-pro
 > ===================================================================
 > RCS file: /cvs/gcc/gcc/gcc/config/pa/t-pro,v
 > retrieving revision 1.8
 > diff -c -p -r1.8 t-pro
 > *** t-pro       2002/02/16 22:30:35     1.8
 > --- t-pro       2002/03/26 16:57:10
 > *************** T_ADAFLAGS=-mdisable-indexing
 > *** 2,7 ****
 > --- 2,11 ----
 > 
 >   LIB2FUNCS_EXTRA=lib2funcs.asm
 > 
 > + # The following macro definition is used to switch off usage of .SPACE
 > + # and .SUBSPACE pseudo-ops in lib2funcs.asm for elf targets.
 > + TARGET_LIBGCC2_CFLAGS=-D__PRO__
 > +
 >   # We want fine grained libraries, so use the new code to build the
 >   # floating point emulation libraries.
 >   FPBIT = fp-bit.c
 > 
 > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589
 
 -- 
 Joel Sherrill, Ph.D.             Director of Research & Development
 joel@OARcorp.com                 On-Line Applications Research
 Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26  9:16 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-26  9:16 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, vmakarov@gcc.gnu.org,
        joel@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Cc: gcc-patches@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 12:07:51 -0500

 Joel Sherrill wrote:
 
 >Is there any ifdef to check and decide which directives to use?
 > 
 > And if there is any reference mapping between them, I would appreciate
 > knowing about it.  
 
 Here is the path solving the problem.
 
 You could find a description of the pseudoops and mapping them into elf
 sections in
 
 http://segfault.net/~scut/cpu/hppa/HP_Assembler_Reference_Manual_HP9000_9th_Ed.pdf
 
 
  
 2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 
         * pa/t-pro (TARGET_LIBGCC2_CFLAGS): New macro.
 
         * pa/lib2funcs.asm: Don't use .SPACE and .SUBSPACE if __PRO__ is
         defined.
 
 Index: pa/lib2funcs.asm
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/lib2funcs.asm,v
 retrieving revision 1.6
 diff -c -p -r1.6 lib2funcs.asm
 *** lib2funcs.asm       2001/04/16 18:30:45     1.6
 --- lib2funcs.asm       2002/03/26 16:57:10
 ***************
 *** 28,33 ****
 --- 28,34 ----
   ;  the Free Software Foundation, 59 Temple Place - Suite 330,
   ;  Boston, MA 02111-1307, USA.
   
 + #ifndef __PRO__
         .SPACE $PRIVATE$
         .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
         .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
 ***************
 *** 35,45 ****
         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 ! 
         .IMPORT $$dyncall,MILLICODE
         .SPACE $TEXT$
         .SUBSPA $CODE$
 ! 
   ; Simply call with the address of the desired import stub in %r22 and
   ; arguments in the normal place (%r26-%r23 and stack slots).
   ;
 --- 36,49 ----
         .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
         .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
         .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8
 ! #endif
         .IMPORT $$dyncall,MILLICODE
 + #ifndef __PRO__
         .SPACE $TEXT$
         .SUBSPA $CODE$
 ! #else
 !       .text
 ! #endif
   ; Simply call with the address of the desired import stub in %r22 and
   ; arguments in the normal place (%r26-%r23 and stack slots).
   ;
 Index: pa/t-pro
 ===================================================================
 RCS file: /cvs/gcc/gcc/gcc/config/pa/t-pro,v
 retrieving revision 1.8
 diff -c -p -r1.8 t-pro
 *** t-pro       2002/02/16 22:30:35     1.8
 --- t-pro       2002/03/26 16:57:10
 *************** T_ADAFLAGS=-mdisable-indexing
 *** 2,7 ****
 --- 2,11 ----
   
   LIB2FUNCS_EXTRA=lib2funcs.asm 
   
 + # The following macro definition is used to switch off usage of .SPACE
 + # and .SUBSPACE pseudo-ops in lib2funcs.asm for elf targets.
 + TARGET_LIBGCC2_CFLAGS=-D__PRO__
 + 
   # We want fine grained libraries, so use the new code to build the
   # floating point emulation libraries.
   FPBIT = fp-bit.c
 
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-26  6:26 Joel Sherrill
  0 siblings, 0 replies; 24+ messages in thread
From: Joel Sherrill @ 2002-03-26  6:26 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Joel Sherrill <joel.sherrill@OARcorp.com>
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, joel@gcc.gnu.org,
 	vmakarov@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Tue, 26 Mar 2002 08:26:26 -0600

 Vladimir Makarov wrote:
 > 
 >   Hello, Joel.  I've just analyzed the problem report.  It seems to me a
 > binutils bug.  Gas manual clearly says that .subspace pseudo-op should
 > work for SOM and ELF:
 > 
 >    When `as' generates SOM or ELF output for the HPPA, `as' can also
 > generate whatever other named sections you specify using the `.space'
 > and `.subspace' directives.  See `HP9000 Series 800 Assembly Language
 > Reference Manual' (HP 92432-90001) for details on the `.space' and
 > `.subspace' assembler directives.
 > 
 >   Looking at the assembler sources I see that the subspace is processed
 > only for SOM.
 > 
 > I am going to close the problem.
 > 
 > Could you resubmit the bug into binutils gnat.
 
 I have been off a few days and know that Jeff has provided feedback but
 wanted to know if the resolution was to make GAS accept SOM directives
 in ELF mode or to fix gcc where it didn't generate SOM directives in
 ELF mode?
 
 Is there any ifdef to check and decide which directives to use?
 
 And if there is any reference mapping between them, I would appreciate
 knowing about it.  
 
 > Best regards, Vladimir Makarov
 > 
 > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589
 
 -- 
 Joel Sherrill, Ph.D.             Director of Research & Development
 joel@OARcorp.com                 On-Line Applications Research
 Ask me about RTEMS: a free RTOS  Huntsville AL 35805
 Support Available                (256) 722-9985


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-25 10:26 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-25 10:26 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: law@redhat.com
Cc: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, joel@gcc.gnu.org,
        vmakarov@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Mon, 25 Mar 2002 13:19:59 -0500

 law@redhat.com wrote:
 > 
 > In message <3C9F4E30.B24358BD@redhat.com>, Vladimir Makarov writes:
 >  >   Hello, Joel.  I've just analyzed the problem report.  It seems to me a
 >  > binutils bug.  Gas manual clearly says that .subspace pseudo-op should
 >  > work for SOM and ELF:
 > That manual is out of date.  We dropped the .space/.subspace stupidity
 > for ELF a while back.  We should not be generating .space/.subspace for
 > any of the ELF targets on the PA.
 
 Jeff, thanks for the information.  I'll fix the problem in gcc.
 
 Vlad


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-25 10:16 law
  0 siblings, 0 replies; 24+ messages in thread
From: law @ 2002-03-25 10:16 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: law@redhat.com
To: Vladimir Makarov <vmakarov@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, joel@gcc.gnu.org,
        vmakarov@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf 
Date: Mon, 25 Mar 2002 09:30:17 -0700

 In message <3C9F4E30.B24358BD@redhat.com>, Vladimir Makarov writes:
  >   Hello, Joel.  I've just analyzed the problem report.  It seems to me a
  > binutils bug.  Gas manual clearly says that .subspace pseudo-op should
  > work for SOM and ELF:
 That manual is out of date.  We dropped the .space/.subspace stupidity
 for ELF a while back.  We should not be generating .space/.subspace for
 any of the ELF targets on the PA.
 jeff
 


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-25  8:26 Vladimir Makarov
  0 siblings, 0 replies; 24+ messages in thread
From: Vladimir Makarov @ 2002-03-25  8:26 UTC (permalink / raw)
  To: vmakarov; +Cc: gcc-prs

The following reply was made to PR bootstrap/3589; it has been noted by GNATS.

From: Vladimir Makarov <vmakarov@redhat.com>
To: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, joel@gcc.gnu.org
Cc: vmakarov@gcc.gnu.org, gcc-bugs@gcc.gnu.org
Subject: Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
Date: Mon, 25 Mar 2002 11:20:00 -0500

   Hello, Joel.  I've just analyzed the problem report.  It seems to me a
 binutils bug.  Gas manual clearly says that .subspace pseudo-op should
 work for SOM and ELF:
 
 
    When `as' generates SOM or ELF output for the HPPA, `as' can also
 generate whatever other named sections you specify using the `.space'
 and `.subspace' directives.  See `HP9000 Series 800 Assembly Language
 Reference Manual' (HP 92432-90001) for details on the `.space' and
 `.subspace' assembler directives.
 
 
   Looking at the assembler sources I see that the subspace is processed
 only for SOM.
 
 
 I am going to close the problem.
 
 Could you resubmit the bug into binutils gnat.
 
 Best regards, Vladimir Makarov
 
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2002-03-22  9:41 vmakarov
  0 siblings, 0 replies; 24+ messages in thread
From: vmakarov @ 2002-03-22  9:41 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, joel, nobody, vmakarov

Synopsis: GCC 3.0-CVS illegal instruction on hppa1.1-proelf

Responsible-Changed-From-To: unassigned->vmakarov
Responsible-Changed-By: vmakarov
Responsible-Changed-When: Fri Mar 22 09:41:00 2002
Responsible-Changed-Why:
    I am going to work on it.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3589


^ permalink raw reply	[flat|nested] 24+ messages in thread

* bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf
@ 2001-07-06  6:46 joel
  0 siblings, 0 replies; 24+ messages in thread
From: joel @ 2001-07-06  6:46 UTC (permalink / raw)
  To: gcc-gnats

>Number:         3589
>Category:       bootstrap
>Synopsis:       GCC 3.0-CVS illegal instruction on hppa1.1-proelf
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jul 06 06:46:04 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     joel@gcc.gnu.org
>Release:        gcc 3.0-CVS
>Organization:
>Environment:
GNU/Linux x86 (RedHat 6.2) with binutils 2.11.2 for target
>Description:
Fails with following messages

/usr3/ftp_archive/gnu/gcc/ss/b3/b-hppa1.1-proelf/gcc/xgcc -B/usr3/ftp_archive/gnu/gcc/ss/b3/b-hppa1.1-proelf/gcc/ -nostdinc -B/usr3/ftp_archive/gnu/gcc/ss/b3/b-hppa1.1-proelf/hppa1.1-proelf/newlib/ -isystem /usr3/ftp_archive/gnu/gcc/ss/b3/b-hppa1.1-proelf/hppa1.1-proelf/newlib/targ-include -isystem /usr3/ftp_archive/gnu/gcc/ss/b3/gcc/newlib/libc/include -B/opt/gnucross/hppa1.1-proelf/bin/ -B/opt/gnucross/hppa1.1-proelf/lib/ -isystem /opt/gnucross/hppa1.1-proelf/include -O2  -DCROSS_COMPILE -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include   -g1  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/config -I../../gcc/gcc/../include -xassembler-with-cpp -c lib2funcs.asm -o libgcc/./lib2funcs.o
lib2funcs.asm: Assembler messages:
lib2funcs.asm:32: Error: Unknown pseudo-op:  `.subspa'
lib2funcs.asm:33: Error: Unknown pseudo-op:  `.subspa'
lib2funcs.asm:35: Error: Unknown pseudo-op:  `.subspa'
lib2funcs.asm:36: Error: Unknown pseudo-op:  `.subspa'
lib2funcs.asm:37: Error: Unknown pseudo-op:  `.subspa'
lib2funcs.asm:41: Error: Unknown pseudo-op:  `.subspa'
make[2]: *** [libgcc/./lib2funcs.o] Error 1
make[2]: Leaving directory `/usr3/ftp_archive/gnu/gcc/ss/b3/b-hppa1.1-proelf/gcc'
make[1]: *** [libgcc.a] Error 2
>How-To-Repeat:
Configure and build as follows:

../gcc/configure --target=${1} \
     --with-gnu-as --with-gnu-ld --with-newlib --verbose \
    --prefix=/opt/gnucross '--enable-languages=c,c++' && make 


Contact me for assistance with binutils.	
>Fix:
Unknown.
>Release-Note:
>Audit-Trail:
>Unformatted:


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2002-06-24 16:04 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-03-26 13:16 bootstrap/3589: GCC 3.0-CVS illegal instruction on hppa1.1-proelf Vladimir Makarov
  -- strict thread matches above, loose matches on Subject: below --
2002-06-24  9:11 joel
2002-04-01 14:54 vmakarov
2002-03-28 13:46 John David Anglin
2002-03-28 12:56 Vladimir Makarov
2002-03-27 10:56 Vladimir Makarov
2002-03-26 20:06 law
2002-03-26 14:26 Joel Sherrill
2002-03-26 14:26 Vladimir Makarov
2002-03-26 13:36 Joel Sherrill
2002-03-26 13:06 Joel Sherrill
2002-03-26 12:56 Vladimir Makarov
2002-03-26 10:16 Joel Sherrill
2002-03-26  9:56 Vladimir Makarov
2002-03-26  9:56 law
2002-03-26  9:36 Vladimir Makarov
2002-03-26  9:26 Joel Sherrill
2002-03-26  9:16 Vladimir Makarov
2002-03-26  6:26 Joel Sherrill
2002-03-25 10:26 Vladimir Makarov
2002-03-25 10:16 law
2002-03-25  8:26 Vladimir Makarov
2002-03-22  9:41 vmakarov
2001-07-06  6:46 joel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).