Messages in this thread | | | Date | Mon, 14 Nov 2022 12:34:33 -0800 | From | Andi Kleen <> | Subject | Re: [PATCH 08/46] static_call, lto: Mark static keys as __visible |
| |
On Mon, Nov 14, 2022 at 04:51:07PM +0100, Peter Zijlstra wrote: > On Mon, Nov 14, 2022 at 12:43:06PM +0100, Jiri Slaby (SUSE) wrote: > > From: Andi Kleen <andi@firstfloor.org> > > > > Symbols referenced from assembler (either directly or e.f. from > > DEFINE_STATIC_KEY()) need to be global and visible in gcc LTO because > > they could end up in a different object file than the assembler. This > > can lead to linker errors without this patch. > > > > So mark static call functions as __visible, namely static keys here. > > Why doesn't llvm-lto need this?
It has an integrated assembler that can feed this information to the LTO symbol table, while gas cannot do that.
There was some discussion to extend the gcc top level asm syntax to express external symbols, but so far it doesn't exist.
> > Also, why am I getting a random selection of the patchset?
Me too.
-Andi
| |