basic asm and memory clobbers - Proposed solution

David Wohlferd dw@LimeGreenSocks.com
Tue Dec 1 22:25:00 GMT 2015


On 12/1/2015 8:08 AM, Richard Earnshaw wrote:
 > Formatting nit: the '== NULL_TREE)' should line up with the start of
 > 'lookup_attribute'.

 > Same here.

Ok.  Other than that, how do we proceed here?

When pursuing a course to "deprecate and later completely remove basic 
asm within functions," I assume I need a global maintainer or two to 
sign off on this?

While Richard Henderson's post to that effect may have gotten lost in 
all the discussion (and my ultra-slow-motion roll out plan may have 
confused things further), that's what's meant by #5 on my "List of 
questions for a person in authority":

1) Is the idea of changing basic asm to clobber things dead?
2) Is creating a warning for the use of "basic asm inside a function" 
the solution for this issue?
3) Should the warning be enabled by default in v6?
4) Should the warning be enabled by -Wall or -Wextra?
5) Should the v6 docs explicitly describe using "basic asm inside a 
function" as deprecated?

Saying it's dead in the docs is the first step to making it dead in the 
code.  This patch just implements an optional warning (unless #3,4 crank 
it up to a default warning), but the intent is that eventually (v7? v8?) 
this turns into a fatal error.

One off-hand comment by someone (even a gm) doesn't seem quite enough to 
approve this.  And some guidance about how quickly we want to get there 
would also be useful.  I've been trying to do the work, but I could use 
some direction from someone who understands the gcc vision.

dw



More information about the Gcc mailing list