diff options
Diffstat (limited to 'src/pkg/runtime/arm/cas6.s')
-rw-r--r-- | src/pkg/runtime/arm/cas6.s | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/src/pkg/runtime/arm/cas6.s b/src/pkg/runtime/arm/cas6.s deleted file mode 100644 index 43788b28a..000000000 --- a/src/pkg/runtime/arm/cas6.s +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// bool cas(int32 *val, int32 old, int32 new) -// Atomically: -// if(*val == old){ -// *val = new; -// return 1; -// }else -// return 0; - -TEXT runtime·cas(SB),7,$0 - MOVW 0(FP), R1 // *val - MOVW 4(FP), R2 // old - MOVW 8(FP), R3 // new -l: - LDREX (R1), R0 - CMP R0, R2 - BNE fail - STREX R3, (R1), R0 - CMP $0, R0 - BNE l - MOVW $1, R0 - RET -fail: - MOVW $0, R0 - RET - |