Messages in this thread | | | Date | Thu, 22 Apr 2021 13:48:39 +0200 | From | Peter Zijlstra <> | Subject | Re: static_branch/jump_label vs branch merging |
| |
On Fri, Apr 09, 2021 at 11:39:49PM +0200, Peter Zijlstra wrote: > On Fri, Apr 09, 2021 at 05:07:15PM -0400, David Malcolm wrote: > > > You've built a very specific thing out of asm-goto to fulfil the tough > > requirements you outlined above - as well as the nops, there's a thing > > in another section to contend with. > > > > How to merge these asm-goto constructs? > > By calling the function less, you emit less of them. Which then brings > us back to the whole pure/const thing. > > > Doing so feels very special-case to the kernel and not something that > > other GCC users would find useful. > > Doesn't it boil down to 'fixing' the pure/const vs asm-goto interaction? > I could imagine that having that interaction fixed could allow other > creative uses.
Here is another variant:
https://lore.kernel.org/lkml/830177B0-45E0-4768-80AB-A99B85D3A52F@baidu.com/
Can we please have a __pure__ attribute that is prescriptive and not a hint the compiler is free to ignore for $raisins ?
| |