On 02/23/2017 01:22 AM, Stafford Horne wrote:
static inline int __atomic_add_unless(atomic_t *v, int a, int u)
{
        int old, tmp;

        __asm__ __volatile__(
                "1:     l.lwa %0, 0(%2)         \n"
                "       l.sfeq %0, %4           \n"
                "       l.bf 2f                 \n"
                "        l.nop                  \n"
                "  l.add %1, %0, %3        \n"

You can move this add into the delay slot and drop the preceding nop.


r~

Reply via email to