Module Name: src
Committed By: matt
Date: Thu Sep 3 00:02:53 UTC 2009
Modified Files:
src/sys/arch/mips/include [matt-nb5-mips64]: asm.h
Log Message:
Don't use .set noorder/.set reorder.
instead use .set push; .set noreorder; .set pop
This will preserve noorder
To generate a diff of this commit:
cvs rdiff -u -r1.40.38.6 -r1.40.38.7 src/sys/arch/mips/include/asm.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/mips/include/asm.h
diff -u src/sys/arch/mips/include/asm.h:1.40.38.6 src/sys/arch/mips/include/asm.h:1.40.38.7
--- src/sys/arch/mips/include/asm.h:1.40.38.6 Fri Aug 21 17:33:17 2009
+++ src/sys/arch/mips/include/asm.h Thu Sep 3 00:02:53 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: asm.h,v 1.40.38.6 2009/08/21 17:33:17 matt Exp $ */
+/* $NetBSD: asm.h,v 1.40.38.7 2009/09/03 00:02:53 matt Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -542,29 +542,32 @@
#endif
#define SETUP_GP \
+ .set push; \
.set noreorder; \
.cpload t9; \
- .set reorder
+ .set pop
#define SETUP_GPX(r) \
+ .set push; \
.set noreorder; \
move r,ra; /* save old ra */ \
bal 7f; \
nop; \
7: .cpload ra; \
move ra,r; \
- .set reorder
+ .set pop
#define SETUP_GPX_L(r,lbl) \
+ .set push; \
.set noreorder; \
move r,ra; /* save old ra */ \
bal lbl; \
nop; \
lbl: .cpload ra; \
move ra,r; \
- .set reorder
+ .set pop
#define SAVE_GP(x) .cprestore x
#define SETUP_GP64(a,b) /* n32/n64 specific */
-#define SETUP_GP64_R(a,b) /* n32/n64 specific */
+#define SETUP_GP64_R(a,b) /* n32/n64 specific */
#define SETUP_GPX64(a,b) /* n32/n64 specific */
#define SETUP_GPX64_L(a,b,c) /* n32/n64 specific */
#define RESTORE_GP64 /* n32/n64 specific */
@@ -587,19 +590,21 @@
#define SAVE_GP(x) /* o32 specific */
#define SETUP_GP64(a,b) .cpsetup $25, a, b
#define SETUP_GPX64(a,b) \
+ .set push; \
move b,ra; \
.set noreorder; \
bal 7f; \
nop; \
- 7: .set reorder; \
+ 7: .set pop; \
.cpsetup ra, a, 7b; \
move ra,b
#define SETUP_GPX64_L(a,b,c) \
+ .set push; \
move b,ra; \
.set noreorder; \
bal c; \
nop; \
- c: .set reorder; \
+ c: .set pop; \
.cpsetup ra, a, c; \
move ra,b
#define RESTORE_GP64 .cpreturn