On Fri, Sep 23, 2022 at 05:15:43PM -0500, Segher Boessenkool wrote: > On Sat, Sep 24, 2022 at 02:26:52AM +1000, Nicholas Piggin wrote: > > I still don't see what clauses guarantees asm("%0" ::"r"(foo)) to give > > 13. It doesn't say access via inline assembly is special, > > But it is. It is for all register variables, local and global. I agree > this isn't documented clearly. For local register variables this is the > *only* thing guaranteed; for global register vars there is more (it > changes the ABI, there are safe/restore effects, that kind of thing).
I filed <https://gcc.gnu.org/PR107027> to improve the docs. Thanks for bringing this to our attention! Segher