On Wed, May 29, 2024 at 1:54 AM Andrea Parri <parri.andrea@xxxxxxxxx> wrote: > > > +zabha: \ > > + __asm__ __volatile__ ( \ > > + prepend \ > > + " amocas" cas_sfx " %0, %z2, %1\n" \ > > + append \ > > + : "+&r" (r), "+A" (*(p)) \ > > + : "rJ" (n) \ > > + : "memory"); \ > > Couldn't a platform have Zabha but not have Zacas? I don't see how this > asm goto could work in such case, what am I missing? Zabha amocas.[b|h] instructions are only implemented if Zacas is present, as the specification states: "If Zacas [2] extension is also implemented, Zabha further provides the AMOCAS.[B|H] instructions." But the code you mention is only for 8 and 16bit operations, so I think we are good anyway? Thanks, Alex > > Andrea