Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/arm/arm32 Sprinkle some comments about ENABLE_ALIGN...
details: https://anonhg.NetBSD.org/src/rev/dc022c65bdd1
branches: trunk
changeset: 946244:dc022c65bdd1
user: skrll <skrll%NetBSD.org@localhost>
date: Sat Nov 21 19:46:13 2020 +0000
description:
Sprinkle some comments about ENABLE_ALIGNMENT_FAULTS leaving curcpu in r4
and curlwp in r5
diffstat:
sys/arch/arm/arm32/exception.S | 12 ++++++------
sys/arch/arm/arm32/irq_dispatch.S | 7 ++++---
2 files changed, 10 insertions(+), 9 deletions(-)
diffs (82 lines):
diff -r db07fb7e879c -r dc022c65bdd1 sys/arch/arm/arm32/exception.S
--- a/sys/arch/arm/arm32/exception.S Sat Nov 21 19:44:52 2020 +0000
+++ b/sys/arch/arm/arm32/exception.S Sat Nov 21 19:46:13 2020 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: exception.S,v 1.25 2019/08/11 06:49:31 skrll Exp $ */
+/* $NetBSD: exception.S,v 1.26 2020/11/21 19:46:13 skrll Exp $ */
/*
* Copyright (c) 1994-1997 Mark Brinicombe.
@@ -51,7 +51,7 @@
#include <arm/locore.h>
- RCSID("$NetBSD: exception.S,v 1.25 2019/08/11 06:49:31 skrll Exp $")
+ RCSID("$NetBSD: exception.S,v 1.26 2020/11/21 19:46:13 skrll Exp $")
.text
.align 0
@@ -80,7 +80,7 @@
*/
ARM_ASENTRY_NP(swi_entry)
PUSHFRAME
- ENABLE_ALIGNMENT_FAULTS
+ ENABLE_ALIGNMENT_FAULTS /* puts cur{cpu,lwp} in r4/r5 */
mov r0, sp /* Pass the frame to any function */
bl _C_LABEL(swi_handler) /* It's a SWI ! */
@@ -111,7 +111,7 @@
clrex
#endif
PUSHFRAMEINSVC
- ENABLE_ALIGNMENT_FAULTS
+ ENABLE_ALIGNMENT_FAULTS /* puts cur{cpu,lwp} in r4/r5 */
ldr r1, .Lprefetch_abort_handler_address
adr lr, .Lexception_exit
@@ -158,7 +158,7 @@
#endif
PUSHFRAMEINSVC /* Push trap frame and switch */
/* to SVC32 mode */
- ENABLE_ALIGNMENT_FAULTS
+ ENABLE_ALIGNMENT_FAULTS /* puts cur{cpu,lwp} in r4/r5 */
ldr r1, .Ldata_abort_handler_address
adr lr, .Lexception_exit
@@ -261,7 +261,7 @@
PUSHXXXREGSANDSWITCH
PUSHDTRACEGAP
PUSHTRAPFRAME(r2)
- ENABLE_ALIGNMENT_FAULTS
+ ENABLE_ALIGNMENT_FAULTS /* puts cur{cpu,lwp} in r4/r5 */
mov r0, sp
adr lr, .Lexception_exit
diff -r db07fb7e879c -r dc022c65bdd1 sys/arch/arm/arm32/irq_dispatch.S
--- a/sys/arch/arm/arm32/irq_dispatch.S Sat Nov 21 19:44:52 2020 +0000
+++ b/sys/arch/arm/arm32/irq_dispatch.S Sat Nov 21 19:46:13 2020 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: irq_dispatch.S,v 1.16 2015/06/02 14:06:16 matt Exp $ */
+/* $NetBSD: irq_dispatch.S,v 1.17 2020/11/21 19:46:13 skrll Exp $ */
/*
* Copyright (c) 2002 Fujitsu Component Limited
@@ -95,7 +95,7 @@
sub lr, lr, #0x00000004 /* Adjust the lr */
PUSHFRAMEINSVC /* Push an interrupt frame */
- ENABLE_ALIGNMENT_FAULTS /* finishes with curcpu() in r4 */
+ ENABLE_ALIGNMENT_FAULTS /* puts cur{cpu,lwp} in r4/r5 */
#ifdef _ARM_ARCH_7
clrex /* force all strex to fail */
@@ -108,7 +108,8 @@
* callee-saved regs here. We use the following registers, which
* we expect to persist:
*
- * r4 address of current cpu_info
+ * r4 address of current cpu_info (curcpu)
+ * r5 address of current lwp (curlwp)
* r6 old value of `ci_intr_depth'
*/
ldr r6, [r4, #CI_INTR_DEPTH]
Home |
Main Index |
Thread Index |
Old Index