Module Name:    src
Committed By:   matt
Date:           Fri Mar 27 06:42:37 UTC 2015

Modified Files:
        src/common/lib/libc/arch/riscv/atomic: atomic_add_32.S atomic_add_64.S
            atomic_and_32.S atomic_and_64.S atomic_cas_32.S atomic_cas_64.S
            atomic_nand_32.S atomic_nand_64.S atomic_or_32.S atomic_or_64.S
            atomic_sub_32.S atomic_sub_64.S atomic_swap_32.S atomic_swap_64.S
            atomic_xor_32.S atomic_xor_64.S

Log Message:
Switch to new ABI (a0/a1 replace v0/v1)


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 \
    src/common/lib/libc/arch/riscv/atomic/atomic_add_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_add_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_and_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_and_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_cas_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_cas_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_nand_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_nand_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_or_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_or_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_sub_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_sub_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_swap_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_swap_64.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_xor_32.S \
    src/common/lib/libc/arch/riscv/atomic/atomic_xor_64.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/common/lib/libc/arch/riscv/atomic/atomic_add_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_add_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_add_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_add_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_add_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_add_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_add_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
 ENTRY_NP(_atomic_inc_32)
 	li		a1, 1
 ENTRY_NP(_atomic_add_32)
-	amoadd.w.aq	v0, a1, 0(a0)
+	amoadd.w.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_add_32)
 END(_atomic_inc_32)
@@ -64,8 +64,8 @@ STRONG_ALIAS(_atomic_inc_ptr,_atomic_inc
 ENTRY_NP(_atomic_inc_32_nv)
 	li		a1, 1
 ENTRY_NP(_atomic_add_32_nv)
-	amoadd.w.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	INT_ADD		v0, v0, a1	/* turn into new value */
+	amoadd.w.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	INT_ADD		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_add_32_nv)
 END(_atomic_inc_32_nv)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_add_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_add_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_add_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_add_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_add_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_add_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_add_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
 ENTRY_NP(_atomic_inc_64)
 	li		a1, 1
 ENTRY_NP(_atomic_add_64)
-	amoadd.d.aq	v0, a1, 0(a0)
+	amoadd.d.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_add_64)
 END(_atomic_inc_64)
@@ -56,8 +56,8 @@ STRONG_ALIAS(_atomic_inc_ptr,_atomic_inc
 ENTRY_NP(_atomic_inc_64_nv)
 	li		a1, 1
 ENTRY_NP(_atomic_add_64_nv)
-	amoadd.d.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	LONG_ADD	v0, v0, a1	/* turn into new value */
+	amoadd.d.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	LONG_ADD	a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_add_64_nv)
 END(_atomic_inc_64_nv)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_and_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_and_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_and_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_and_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_and_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_and_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_and_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_and_32)
-	amoand.w.aq	v0, a1, 0(a0)
+	amoand.w.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_and_32)
 
@@ -47,8 +47,8 @@ CRT_ALIAS(__sync_fetch_and_and_4,_atomic
 CRT_ALIAS(__atomic_fetch_and_4,_atomic_and_32)
 
 ENTRY_NP(_atomic_and_32_nv)
-	amoand.w.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	and		v0, v0, a1	/* turn into new value */
+	amoand.w.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	and		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_and_32_nv)
 ATOMIC_OP_ALIAS(atomic_and_32_nv,_atomic_and_32_nv)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_and_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_and_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_and_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_and_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_and_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_and_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_and_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_and_64)
-	amoand.d.aq	v0, a1, 0(a0)
+	amoand.d.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_and_64)
 
@@ -43,8 +43,8 @@ CRT_ALIAS(__sync_fetch_and_and_8,_atomic
 CRT_ALIAS(__atomic_fetch_and_8,_atomic_and_64)
 
 ENTRY_NP(_atomic_and_64_nv)
-	amoand.d.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	and		v0, v0, a1	/* turn into new value */
+	amoand.d.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	and		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_and_64_nv)
 ATOMIC_OP_ALIAS(atomic_and_64_nv,_atomic_and_64_nv)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_cas_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_cas_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_cas_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_cas_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_cas_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_cas_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_cas_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -31,10 +31,11 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_cas_32)
-1:	lr.w	v0, 0(a0)
-	bne	a1, v0, 2f
-	sc.w	v1, a2, 0(a0)
-	bnez	v1, 1b
+	mv	t0, a0
+1:	lr.w	a0, 0(t0)
+	bne	a1, a0, 2f
+	sc.w	t1, a2, 0(t0)
+	bnez	t1, 1b
 2:
 	ret
 END(_atomic_cas_32)
@@ -55,12 +56,13 @@ STRONG_ALIAS(_atomic_cas_ptr_ni,_atomic_
 CRT_ALIAS(__sync_val_compare_and_swap_4,_atomic_cas_32)
 
 ENTRY_NP(_atomic_bool_cas_32)
-	li	v0, 0
-1:	lr.w	v1, 0(a0)
-	bne	a1, v1, 2f
-	sc.w	v1, a2, 0(a0)
-	bnez	v1, 1b
-	li	v0, 1
+	mv	t0, a0
+	li	a0, 0
+1:	lr.w	t1, 0(t0)
+	bne	a1, t1, 2f
+	sc.w	t1, a2, 0(t0)
+	bnez	t1, 1b
+	li	a0, 1
 2:
 	ret
 END(_atomic_bool_cas_32)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_cas_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_cas_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_cas_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_cas_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_cas_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_cas_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_cas_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -32,10 +32,11 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_cas_64)
-1:	lr.d	v0, 0(a0)
-	bne	a1, v0, 2f
-	sc.d	v1, a2, 0(a0)
-	bnez	v1, 1b
+	mv	t0, a0
+1:	lr.d	a0, 0(t0)
+	bne	a1, a0, 2f
+	sc.d	t1, a2, 0(t0)
+	bnez	t1, 1b
 2:
 	ret
 END(_atomic_cas_64)
@@ -53,12 +54,13 @@ STRONG_ALIAS(_atomic_cas_ptr_ni,_atomic_
 CRT_ALIAS(__sync_val_compare_and_swap_8,_atomic_cas_64)
 
 ENTRY_NP(_atomic_bool_cas_64)
-	li	v0, 0
-1:	lr.d	v1, 0(a0)
-	bne	a1, v1, 2f
-	sc.d	v1, a2, 0(a0)
-	bnez	v1, 1b
-	li	v0, 1
+	mv	t0, a0
+	li	a0, 0
+1:	lr.d	t1, 0(t0)
+	bne	a1, t1, 2f
+	sc.d	t1, a2, 0(t0)
+	bnez	t1, 1b
+	li	a0, 1
 2:
 	ret
 END(_atomic_bool_cas_64)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_nand_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_nand_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_nand_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_nand_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_nand_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_nand_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_nand_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -31,11 +31,12 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_nand_32)
-1:	lr.w	v0, 0(a0)
-	not	t0, v0
-	and	t0, t0, a1
-	sc.w	v1, t0, 0(a0)
-	bnez	v1, 1b
+	mv	t0, a0
+1:	lr.w	a0, 0(t0)
+	not	t2, a0
+	and	t2, t2, a1
+	sc.w	t1, t2, 0(t0)
+	bnez	t1, 1b
 	ret
 END(_atomic_nand_32)
 
@@ -50,11 +51,12 @@ CRT_ALIAS(__sync_fetch_and_nand_4,_atomi
 CRT_ALIAS(__atomic_fetch_nand_4,_atomic_nand_32)
 
 ENTRY_NP(_atomic_nand_32_nv)
-1:	lr.w	v0, 0(a0)
-	not	v0, v0
-	and	v0, v0, a1
-	sc.w	v1, v0, 0(a0)
-	bnez	v1, 1b
+	mv	t0, a0
+1:	lr.w	a0, 0(t0)
+	not	a0, a0
+	and	a0, a0, a1
+	sc.w	t1, a0, 0(t0)
+	bnez	t1, 1b
 	ret
 END(_atomic_nand_32_nv)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_nand_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_nand_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_nand_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_nand_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_nand_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_nand_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_nand_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -31,11 +31,12 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_nand_64)
-1:	lr.d	v0, 0(a0)
-	not	t0, v0
-	and	t0, t0, a1
-	sc.d	v1, t0, 0(a0)
-	bnez	v1, 1b
+	mv	t0, a0
+1:	lr.d	a0, 0(t0)
+	not	t2, a0
+	and	t2, t2, a1
+	sc.d	t1, t2, 0(t0)
+	bnez	t1, 1b
 	ret
 END(_atomic_nand_64)
 
@@ -46,11 +47,12 @@ CRT_ALIAS(__sync_fetch_and_nand_8,_atomi
 CRT_ALIAS(__atomic_fetch_nand_8,_atomic_nand_64)
 
 ENTRY_NP(_atomic_nand_64_nv)
-1:	lr.d	v0, 0(a0)
-	not	v0, v0
-	and	v0, v0, a1
-	sc.d	v1, v0, 0(a0)
-	bnez	v1, 1b
+	mv	t0, a0
+1:	lr.d	a0, 0(t0)
+	not	a0, a0
+	and	a0, a0, a1
+	sc.d	t1, a0, 0(t0)
+	bnez	t1, 1b
 	ret
 END(_atomic_nand_64_nv)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_or_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_or_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_or_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_or_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_or_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_or_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_or_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_or_32)
-	amoor.w.aq	v0, a1, 0(a0)
+	amoor.w.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_or_32)
 
@@ -47,8 +47,8 @@ CRT_ALIAS(__sync_fetch_and_or_4,_atomic_
 CRT_ALIAS(__atomic_fetch_or_4,_atomic_or_32)
 
 ENTRY_NP(_atomic_or_32_nv)
-	amoor.w.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	or		v0, v0, a1	/* turn into new value */
+	amoor.w.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	or		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_or_32_nv)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_or_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_or_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_or_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_or_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_or_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_or_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_or_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_or_64)
-	amoor.d.aq	v0, a1, 0(a0)
+	amoor.d.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_or_64)
 
@@ -43,8 +43,8 @@ CRT_ALIAS(__sync_fetch_and_or_8,_atomic_
 CRT_ALIAS(__atomic_fetch_or_8,_atomic_or_64)
 
 ENTRY_NP(_atomic_or_64_nv)
-	amoor.d.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	or		v0, v0, a1	/* turn into new value */
+	amoor.d.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	or		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_or_64_nv)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_sub_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_sub_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_sub_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_sub_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_sub_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_sub_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_sub_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -34,8 +34,8 @@
 ENTRY_NP(_atomic_dec_32)
 	li		a1, 1
 ENTRY_NP(_atomic_sub_32)
-	INT_SUB		v1, zero, a1
-	amoadd.w.aq	v0, v1, 0(a0)
+	INT_SUB		t0, zero, a1
+	amoadd.w.aq	a0, t0, 0(a0)
 	ret
 END(_atomic_sub_32)
 END(_atomic_dec_32)
@@ -65,9 +65,9 @@ STRONG_ALIAS(_atomic_dec_ptr,_atomic_dec
 ENTRY_NP(_atomic_dec_32_nv)
 	li		a1, 1
 ENTRY_NP(_atomic_sub_32_nv)
-	INT_SUB		v1, zero, a1
-	amoadd.w.aq	v0, v1, 0(a0)	/* update memory and get old value */
-	INT_ADD		v0, v0, v1	/* turn into new value */
+	INT_SUB		t1, zero, a1
+	amoadd.w.aq	t0, t1, 0(a0)	/* update memory and get old value */
+	INT_ADD		a0, t0, t1	/* turn into new value */
 	ret
 END(_atomic_sub_32_nv)
 END(_atomic_dec_32_nv)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_sub_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_sub_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_sub_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_sub_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_sub_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_sub_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_sub_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -34,8 +34,8 @@
 ENTRY_NP(_atomic_dec_64)
 	li		a1, 1
 ENTRY_NP(_atomic_sub_64)
-	neg		v1, a1
-	amoadd.d.aq	v0, a1, 0(a0)
+	neg		t1, a1
+	amoadd.d.aq	a0, t1, 0(a0)
 	ret
 END(_atomic_sub_64)
 END(_atomic_dec_64)
@@ -57,9 +57,9 @@ STRONG_ALIAS(_atomic_dec_ptr,_atomic_dec
 ENTRY_NP(_atomic_dec_64_nv)
 	li		a1, 1
 ENTRY_NP(_atomic_sub_64_nv)
-	neg		v1, a1
-	amoadd.d.aq	v0, v1, 0(a0)	/* update memory and get old value */
-	add		v0, v0, v1	/* turn into new value */
+	neg		t1, a1
+	amoadd.d.aq	t0, t1, 0(a0)	/* update memory and get old value */
+	add		a0, t0, t1	/* turn into new value */
 	ret
 END(_atomic_sub_64_nv)
 END(_atomic_dec_64_nv)
Index: src/common/lib/libc/arch/riscv/atomic/atomic_swap_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_swap_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_swap_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_swap_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_swap_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: atomic_swap_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $ */
+/* $NetBSD: atomic_swap_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $ */
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_swap_32)
-	amoswap.w.aq	v0, a1, 0(a0)
+	amoswap.w.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_swap_32)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_swap_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_swap_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_swap_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_swap_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_swap_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: atomic_swap_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $ */
+/* $NetBSD: atomic_swap_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $ */
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -33,7 +33,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_swap_64)
-	amoswap.d.aq	v0, a1, 0(a0)
+	amoswap.d.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_swap_64)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_xor_32.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_xor_32.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_xor_32.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_xor_32.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_xor_32.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_xor_32.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_xor_32.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_xor_32)
-	amoxor.w.aq	v0, a1, 0(a0)
+	amoxor.w.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_xor_32)
 
@@ -47,8 +47,8 @@ CRT_ALIAS(__sync_fetch_and_xor_4,_atomic
 CRT_ALIAS(__atomic_fetch_xor_4,_atomic_xor_32)
 
 ENTRY_NP(_atomic_xor_32_nv)
-	amoxor.w.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	xor		v0, v0, a1	/* turn into new value */
+	amoxor.w.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	xor		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_xor_32_nv)
 
Index: src/common/lib/libc/arch/riscv/atomic/atomic_xor_64.S
diff -u src/common/lib/libc/arch/riscv/atomic/atomic_xor_64.S:1.1 src/common/lib/libc/arch/riscv/atomic/atomic_xor_64.S:1.2
--- src/common/lib/libc/arch/riscv/atomic/atomic_xor_64.S:1.1	Fri Sep 19 17:36:24 2014
+++ src/common/lib/libc/arch/riscv/atomic/atomic_xor_64.S	Fri Mar 27 06:42:37 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_xor_64.S,v 1.1 2014/09/19 17:36:24 matt Exp $	*/
+/*	$NetBSD: atomic_xor_64.S,v 1.2 2015/03/27 06:42:37 matt Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_xor_64)
-	amoxor.d.aq	v0, a1, 0(a0)
+	amoxor.d.aq	a0, a1, 0(a0)
 	ret
 END(_atomic_xor_64)
 
@@ -43,8 +43,8 @@ CRT_ALIAS(__sync_fetch_and_xor_8,_atomic
 CRT_ALIAS(__atomic_fetch_xor_8,_atomic_xor_64)
 
 ENTRY_NP(_atomic_xor_64_nv)
-	amoxor.d.aq	v0, a1, 0(a0)	/* update memory and get old value */
-	xor		v0, v0, a1	/* turn into new value */
+	amoxor.d.aq	t0, a1, 0(a0)	/* update memory and get old value */
+	xor		a0, t0, a1	/* turn into new value */
 	ret
 END(_atomic_xor_64_nv)
 

Reply via email to