Re: [RFC PATCH 3/4] x86/asm: Make alternative macro interfaces more clear and consistent

From: Josh Poimboeuf
Date: Thu Sep 14 2017 - 13:33:55 EST


On Thu, Sep 14, 2017 at 12:26:27PM -0500, Josh Poimboeuf wrote:
> On Thu, Sep 14, 2017 at 10:16:08AM -0700, Linus Torvalds wrote:
> > On Thu, Sep 14, 2017 at 7:48 AM, Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
> > >
> > > As it turns out, the real problem with this option is that it imposes a
> > > penalty for CONFIG_FRAME_POINTER=n: even with frame pointers disabled,
> > > it forces the frame pointer to be saved for each function which uses the
> > > inline asm "call" statements. Our current solution doesn't do that.
> >
> > But couldn't we make the whole stack pointer clobber be dependent on
> > CONFIG_FRAME_POINTER?
> >
> > The only reason we do it is to make sure the frame pointer is set up
> > before the inline asm is emitted, but with frame pointers disabled we
> > don't need to.
>
> We could, but then that would mean either:
>
> a) uglifying the 15 or so relevant inline asm locations with ifdefs; or

Actually I guess we could put the "sp" in a macro... I'll try it.

--
Josh