Messages in this thread | | | Subject | Re: [OpenRISC] [PATCH v3 09/25] openrisc: add optimized atomic operations | From | Richard Henderson <> | Date | Thu, 23 Feb 2017 04:31:34 +1100 |
| |
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~
| |