Re: PROPOSAL: Extend inline asm syntax with size spec

From: Masahiro Yamada
Date: Mon Dec 10 2018 - 03:17:30 EST

Hi Segher,

On Sun, Dec 2, 2018 at 3:48 PM Segher Boessenkool
<segher@xxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Nov 30, 2018 at 10:06:02AM +0100, Boris Petkov wrote:
> > On November 29, 2018 1:25:02 PM GMT+01:00, Segher Boessenkool <segher@xxxxxxxxxxxxxxxxxxx> wrote:
> > >This will only be fixed from GCC 9 on, if the compiler adopts it. The
> > >kernel wants to support ancient GCC, so it will need to have a
> > >workaround
> > >for older GCC versions anyway.
> >
> > What about backporting it, like Richard says?
> Let me first get it into GCC trunk :-)
> It should backport fine, sure; and I'll work on that.

Now, I can see it in the GCC trunk. Hooray!!!

commit 6de46ad5326fc5e6b730a2feb8c62d09c1561f92
Author: segher <segher@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Thu Dec 6 17:56:58 2018 +0000

asm inline

The Linux kernel people want a feature that makes GCC pretend some
inline assembler code is tiny (while it would think it is huge), so
that such code will be inlined essentially always instead of
essentially never.

This patch lets you say "asm inline" instead of just "asm", with the
result that that inline assembler is always counted as minimum cost
for inlining. It implements this for C and C++, making "inline"
another asm-qualifier (supplementing "volatile" and "goto").

Best Regards
Masahiro Yamada