Re: [GIT PULL] core kernel fixes

From: Linus Torvalds
Date: Sun Nov 05 2017 - 15:12:41 EST


On Sun, Nov 5, 2017 at 11:53 AM, Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
>
> The GCC manual says:
>
> "asm statements that have no output operands, including asm goto
> statements, are implicitly volatile."

Hmm. Fair enough.

And the manual does say that it can merge and duplicate those asms
(and suggests using "%=" to generate a unique number, but I guess
"%c0" with __COUNTER__ is equivalent).

I think the gcc manual has changed. I'm pretty certain it used to say
that "volatile" asms would not be "moved significantly". They've
silently changed semantics before too, oh well.

Linus