| To: | David Daney <ddaney@avtrex.com> |
|---|---|
| Subject: | Re: [patch] Prevent dead code/data removal with gcc 3.4 |
| From: | Thiemo Seufer <ica2_ts@csv.ica.uni-stuttgart.de> |
| Date: | Fri, 13 Feb 2004 23:50:00 +0100 |
| Cc: | Ralf Baechle <ralf@linux-mips.org>, "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>, linux-mips@linux-mips.org |
| In-reply-to: | <402D513F.8080205@avtrex.com> |
| Original-recipient: | rfc822;linux-mips@linux-mips.org |
| References: | <Pine.LNX.4.55.0402131453360.15042@jurand.ds.pg.gda.pl> <20040213145316.GA23810@linux-mips.org> <20040213222253.GA20118@rembrandt.csv.ica.uni-stuttgart.de> <402D513F.8080205@avtrex.com> |
| Sender: | linux-mips-bounce@linux-mips.org |
| User-agent: | Mutt/1.5.5.1i |
David Daney wrote: > Thiemo Seufer wrote: > > >Ralf Baechle wrote: > > > > > >>On Fri, Feb 13, 2004 at 03:20:27PM +0100, Maciej W. Rozycki wrote: > >> > >> > >> > >>>2. It changes inline-assembly function prologues to be embedded within > >>>the > >>>functions, which makes them a bit safer as they can now explicitly refer > >>>to the "regs" struct and assures the code won't be removed or reordered. > >>> > >>> > >>It is possible that gcc changes one of the registers before save_static > >>and I can't imagine there's a reliable way to fix this in the inline > >>version. > > > >As long as __asm__ __volatile__ works as documented, this can't happen. > > > My understanding is that with gcc-3.4 that __asm__ __volatile__ does not > protect against dead code removal. If the code is not dead __volatile__ > works as documented, but dead code removal still happens. The inline version isn't dead code, and gcc isn't allowed to reschedule code around a __asm__ __volatile__, so the patch should be ok. Thiemo |
| Previous by Date: | Re: [patch] Prevent dead code/data removal with gcc 3.4, David Daney |
|---|---|
| Next by Date: | Re: [patch] Prevent dead code/data removal with gcc 3.4, Ralf Baechle |
| Previous by Thread: | Re: [patch] Prevent dead code/data removal with gcc 3.4, David Daney |
| Next by Thread: | Re: [patch] Prevent dead code/data removal with gcc 3.4, Ralf Baechle |
| Indexes: | [Date] [Thread] [Top] [All Lists] |