https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94649

--- Comment #11 from Florian Weimer <fw at gcc dot gnu.org> ---
(In reply to andysem from comment #10)
> (In reply to Florian Weimer from comment #9)
> > 
> > Is this still an issue today? I thought libatomic would use CMPXCHG16B if
> > the current CPU supports it.
> 
> I think the complaint was that the cmpxchg16b instruction is not generated
> directly and instead there is a library call. I don't think this has
> changed.

I was specifically referring to the ABI issue that may prevent inlining. I can
see the ABI problem only for old code with a statically linked libatomic that
does not perform the CMPXCHG16B check and uses the locking version
unconditionally. But such code is already broken by dynamic libatomic switching
to the CMPXCHG16B instruction current CPUs in other cases, so it can't be that
important.

Reply via email to