diff options
| author | Andrew Turner <andrew@FreeBSD.org> | 2015-03-05 18:03:42 +0000 |
|---|---|---|
| committer | Andrew Turner <andrew@FreeBSD.org> | 2015-03-05 18:03:42 +0000 |
| commit | be9bc81174e748c3e7a6506d0e217af6ab506730 (patch) | |
| tree | e8efda26a65f3e6d836f4e1f9aed24e835a1f01e /sys/cddl/dev/dtrace | |
| parent | 4a8169d97b36df6420959c773a502fd5cfb25bfc (diff) | |
Notes
Diffstat (limited to 'sys/cddl/dev/dtrace')
| -rw-r--r-- | sys/cddl/dev/dtrace/arm/dtrace_asm.S | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/cddl/dev/dtrace/arm/dtrace_asm.S b/sys/cddl/dev/dtrace/arm/dtrace_asm.S index 9cbf1172d556..ce27b1410c6e 100644 --- a/sys/cddl/dev/dtrace/arm/dtrace_asm.S +++ b/sys/cddl/dev/dtrace/arm/dtrace_asm.S @@ -208,12 +208,10 @@ EENTRY(dtrace_casptr) 1: ldrex r3, [r0] /* Load target */ cmp r3, r1 /* Check if *target == cmp */ bne 2f /* No, return */ - strex r3, r2, [r0] /* Store new to target */ - cmp r3, #0 /* Did the store succeed? */ + strex ip, r2, [r0] /* Store new to target */ + cmp ip, #0 /* Did the store succeed? */ bne 1b /* No, try again */ - mov r0, r2 /* Return the new value of the store */ -2: movne r0, r3 /* The first compare failed, return */ - /* the value loaded from memory */ +2: mov r0, r3 /* Return the value loaded from target */ RET EEND(dtrace_casptr) END(dtrace_cas32) |
