lkml.org 
[lkml]   [2017]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [OpenRISC] [PATCH v3 08/25] openrisc: add cmpxchg and xchg implementations
From
Date
On 02/23/2017 01:20 AM, Stafford Horne wrote:
> On Wed, Feb 22, 2017 at 12:19:40PM +0100, Peter Zijlstra wrote:
>> On Wed, Feb 22, 2017 at 04:11:37AM +0900, Stafford Horne wrote:
>>> + __asm__ __volatile__(
>>> + "1: l.lwa %0, 0(%1) \n"
>>> + " l.sfeq %0, %2 \n"
>>> + " l.bnf 1f \n"
>>> + " l.nop \n"
>>> + " l.swa 0(%1), %3 \n"
>>> + " l.bnf 1b \n"
>>> + "1: l.nop \n"
>>> + : "=&r"(old)
>>> + : "r"(ptr), "r"(old), "r"(new)
>>> + : "cc", "memory");
>>
>> I just noticed this, but having both labels have the same name is
>> somewhat confusing.
>
> Right, better to use '2' for the second one.

Better still to put the second label after the delay-slot nop.
You don't need to execute that on the way out.


r~

\
 
 \ /
  Last update: 2017-02-22 18:31    [W:0.057 / U:1.260 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site