One more patch for PR89676
Vladimir Makarov
vmakarov@redhat.com
Tue Mar 26 14:49:00 GMT 2019
On 3/26/19 8:35 AM, Maxim Kuvyrkov wrote:
>
> I don't follow. Do you mean that in the below testcase it's not guaranteed that casp will get its first two arguments in x0 and x1? (If so, why?)
Sorry for not to be clear. With my first patch only, it was not
guaranteed for some complicated code cases. With the additional patch
it is guaranteed as it was before.
> ===
> void *a;
> long b, c;
> void d(void) {
> typeof(0) e=0;
> register long x0 asm ("x0") = b;
> register long x1 asm ("x1") = c;
> asm(" casp\t%[old1], %[old2], %[new1], %[new2], %[v]\n"
> : [old1] "+&r"(b), [old2] "+&r"(c), [v] "+Q"(a)
> : [new1] "r"(d), [new2] "r"(e));
> }
>
>
>
More information about the Gcc-patches
mailing list