This is the mail archive of the
mailing list for the GCC project.
Re: Deprecating basic asm in a function - What now?
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Andrew Haley <aph at redhat dot com>
- Cc: Andrew Pinski <pinskia at gmail dot com>, David Wohlferd <dw at limegreensocks dot com>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: Mon, 20 Jun 2016 09:52:26 -0500
- Subject: Re: Deprecating basic asm in a function - What now?
- Authentication-results: sourceware.org; auth=none
- References: <dc3ca16c-3521-757f-fcf0-50061f510f75 at LimeGreenSocks dot com> <CA+=Sn1=vKM2DYUrg40inMaKwejjC8YU3qs8iJPXn3+ok1trEQw at mail dot gmail dot com> <20160620135028 dot GA22744 at gate dot crashing dot org> <5767F5EE dot 60009 at redhat dot com> <20160620144255 dot GC22744 at gate dot crashing dot org> <5768026F dot 40704 at redhat dot com>
On Mon, Jun 20, 2016 at 03:49:19PM +0100, Andrew Haley wrote:
> On 20/06/16 15:42, Segher Boessenkool wrote:
> > On Mon, Jun 20, 2016 at 02:55:58PM +0100, Andrew Haley wrote:
> >> On 20/06/16 14:50, Segher Boessenkool wrote:
> >>> If basic asm is deprecated, that means some time later it will be
> >>> removed, at which time an asm without : can be used as extended asm
> >> Not exactly: it'd be an asm with no inputs, no outputs, and no
> >> clobbers i.e. no effects.
> > I'm not sure what you mean? It will be treated exactly the same as
> > basic asm (it is now, anyway). And it has an effect, it is volatile
> > after all, not having any outputs?
> Well, you didn't say that it was volatile: and unless it really is
> an asm volatile (not just an asm) an extended asm with no effects
> is a statement with no effects.
An extended asm without outputs is always volatile (exactly because
it would be useless otherwise).