linux-mips
[Top] [All Lists]

Re: GCC-3.4 reorders asm() with -O2

To: Ralf Baechle <ralf@linux-mips.org>
Subject: Re: GCC-3.4 reorders asm() with -O2
From: Andi Kleen <ak@suse.de>
Date: Sun, 25 Jan 2004 20:28:07 +0100
Cc: jh@suse.cz, echristo@redhat.com, hubicka@ucw.cz, eager@mvista.com, gcc@gcc.gnu.org, linux-mips@linux-mips.org
In-reply-to: <20040125182643.GA25020@linux-mips.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <4011C72C.613E25@mvista.com> <20040124011955.GA12040@nevyn.them.org> <20040124012303.GJ32288@atrey.karlin.mff.cuni.cz> <20040124050849.GB14951@nevyn.them.org> <1075009125.3649.0.camel@dzur.sfbay.redhat.com> <20040125100514.GA8810@kam.mff.cuni.cz> <20040125164758.79373419.ak@suse.de> <20040125170351.GA10938@nevyn.them.org> <20040125182643.GA25020@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
On Sun, 25 Jan 2004 19:26:43 +0100
Ralf Baechle <ralf@linux-mips.org> wrote:

> On Sun, Jan 25, 2004 at 12:03:51PM -0500, Daniel Jacobowitz wrote:
> 
> > It is.  Ralf already knows about the problem, I think - we leave
> > markers outside of functions which define an entry point, save some
> > additional registers to the stack, and try to fall through to the
> > following function.  If the function gets emitted elsewhere, obviously,
> > we've lost :)
> > 
> > [This is save_static_function...]
> 
> I only recently fixed the problem with the save_static() inline function
> which of course was fragile, speculating on the compiler doing the
> right thing ...  I'll cook up a fix ...

You can always use __attribute__((noinline))

-Andi

<Prev in Thread] Current Thread [Next in Thread>