This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: basic asm and memory clobbers - Proposed solution


On 12/15/2015 5:01 PM, Paul_Koning@Dell.com wrote:
On Dec 15, 2015, at 5:22 PM, David Wohlferd <dw@LimeGreenSocks.com> wrote:

On 12/14/2015 1:53 AM, Andrew Haley wrote:
This just seems like another argument for deprecating basic asm and pushing people to extended.
Yes.  I am not arguing against deprecation.  We should do that.
You know, there are several people who seem to generally support this direction.  Not enough to call it a consensus, but perhaps the beginning of one:

- Andrew Haley
- David Wohlferd
- Richard Henderson
- Segher Boessenkool
- Bernd Schmidt

Anyone else want to add their name here?
No, but I want to speak in opposition.

Fair enough.

"Deprecate" means two things: warn now, remove later.

Yup. That's what I'm proposing. Although "later" could be a decade down the road. That's how long 24414 has been sitting.

For reasons stated by others, I object to "remove later".

So "warn now, remove never" I would support, but not "deprecate".

So how about:

- Update the basic asm docs to describe basic asm's current (and historical) semantics (ie clobber nothing). - Emphasize how that might be different from users' expectations or the behavior of other compilers. - Warn that this could change in future versions of gcc. To avoid impacts from this change, use extended.
- Mention -Wonly-top-basic-asm as a way to locate affected statements.

Would that be something you could support?

What's your take on making -Wonly-top-basic-asm a default (either now or v7)? Is making it a non-default a waste of time because no one will ever see it? Or is making it a default too aggressive? What about adding it to -Wall?

dw


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]