public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: target/8520: -mips64 not forcing -mgp64 under mips*-*-linux* target
@ 2002-11-11  7:56 Daniel Jacobowitz
  0 siblings, 0 replies; 2+ messages in thread
From: Daniel Jacobowitz @ 2002-11-11  7:56 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

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

From: Daniel Jacobowitz <drow@mvista.com>
To: jbr@keyresearch.com
Cc: gcc-gnats@gcc.gnu.org, jbroughton@keyresearch.com,
	glindahl@keyresearch.com
Subject: Re: target/8520: -mips64 not forcing -mgp64 under mips*-*-linux* target
Date: Mon, 11 Nov 2002 10:54:07 -0500

 On Sun, Nov 10, 2002 at 10:54:02PM -0000, jbr@keyresearch.com wrote:
 > 
 > >Number:         8520
 > >Category:       target
 > >Synopsis:       -mips64 not forcing -mgp64 under mips*-*-linux* target
 > >Confidential:   no
 > >Severity:       serious
 > >Priority:       medium
 > >Responsible:    unassigned
 > >State:          open
 > >Class:          sw-bug
 > >Submitter-Id:   net
 > >Arrival-Date:   Sun Nov 10 14:56:00 PST 2002
 > >Closed-Date:
 > >Last-Modified:
 > >Originator:     Jeff Rubin
 > >Release:        3.2
 > >Organization:
 > >Environment:
 > Cross compiler running on i686-pc-linux running Red Hat 7.2
 > linux
 > >Description:
 > In config.gcc, for mips*-*-linux*, tm_file has near the end
 > linux.h and then mips/linux.h.  The first thing mips/linux.h
 > does is to include mips/mips.h.  So the header files come
 > in in the order ... linux.h mips/mips.h <rest of>linux.h
 > In mips/mips.h there is a macro definition for CC1_SPEC
 > which has the correct stuff to make -mips64 force -mgp64,
 > among other things.  However, it is conditionaled on
 > #ifndef CC1_SPEC.  linux.h also has a macro definition
 > for CC1_SPEC (setting it to %{profile:-p}) which is
 > conditionaled the same way.  Since linux.h comes before
 > mips.h, CC1_SPEC gets defined by linux.h and not by
 > mips.h.
 > >How-To-Repeat:
 > 
 > >Fix:
 > Partial fix: add #undef CC1_SPEC to mips/linux.h before the
 > #include "mips/mips.h" to undo the definition in linux.h.
 > I'm not sure how you would get the profile forces -p effect
 > back or even if you want to in this case.
 
 I don't think that -mips64 _should_ force -mgp64 on mips*-linux*. 
 mips*-linux* is for the 32-bit MIPS/Linux port; there will be a
 mips*64-linux* pattern when GCC supports a 64-bit Linux configuration,
 which it doesn't yet.  There was a discussion last week on the binutils
 list about this exact behavior.
 
 It's useful to generate code using instructions from higher ISAs that
 still works when your OS only saves and restores 32-bit registers.
 
 -- 
 Daniel Jacobowitz
 MontaVista Software                         Debian GNU/Linux Developer


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

* target/8520: -mips64 not forcing -mgp64 under mips*-*-linux* target
@ 2002-11-10 14:56 jbr
  0 siblings, 0 replies; 2+ messages in thread
From: jbr @ 2002-11-10 14:56 UTC (permalink / raw)
  To: gcc-gnats; +Cc: jbroughton, glindahl


>Number:         8520
>Category:       target
>Synopsis:       -mips64 not forcing -mgp64 under mips*-*-linux* target
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Nov 10 14:56:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Jeff Rubin
>Release:        3.2
>Organization:
>Environment:
Cross compiler running on i686-pc-linux running Red Hat 7.2
linux
>Description:
In config.gcc, for mips*-*-linux*, tm_file has near the end
linux.h and then mips/linux.h.  The first thing mips/linux.h
does is to include mips/mips.h.  So the header files come
in in the order ... linux.h mips/mips.h <rest of>linux.h
In mips/mips.h there is a macro definition for CC1_SPEC
which has the correct stuff to make -mips64 force -mgp64,
among other things.  However, it is conditionaled on
#ifndef CC1_SPEC.  linux.h also has a macro definition
for CC1_SPEC (setting it to %{profile:-p}) which is
conditionaled the same way.  Since linux.h comes before
mips.h, CC1_SPEC gets defined by linux.h and not by
mips.h.
>How-To-Repeat:

>Fix:
Partial fix: add #undef CC1_SPEC to mips/linux.h before the
#include "mips/mips.h" to undo the definition in linux.h.
I'm not sure how you would get the profile forces -p effect
back or even if you want to in this case.
>Release-Note:
>Audit-Trail:
>Unformatted:


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

end of thread, other threads:[~2002-11-11 15:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-11-11  7:56 target/8520: -mips64 not forcing -mgp64 under mips*-*-linux* target Daniel Jacobowitz
  -- strict thread matches above, loose matches on Subject: below --
2002-11-10 14:56 jbr

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).