Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/vax/vax Support for a machine-specific badaddr hand...
details: https://anonhg.NetBSD.org/src/rev/ebce3aa2a4a4
branches: trunk
changeset: 495330:ebce3aa2a4a4
user: ragge <ragge%NetBSD.org@localhost>
date: Wed Jul 26 11:48:50 2000 +0000
description:
Support for a machine-specific badaddr handler.
diffstat:
sys/arch/vax/vax/genassym.cf | 3 ++-
sys/arch/vax/vax/intvec.s | 14 ++++++++++++--
2 files changed, 14 insertions(+), 3 deletions(-)
diffs (45 lines):
diff -r 97649075df3f -r ebce3aa2a4a4 sys/arch/vax/vax/genassym.cf
--- a/sys/arch/vax/vax/genassym.cf Wed Jul 26 11:47:15 2000 +0000
+++ b/sys/arch/vax/vax/genassym.cf Wed Jul 26 11:48:50 2000 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: genassym.cf,v 1.23 2000/07/02 04:40:45 cgd Exp $
+# $NetBSD: genassym.cf,v 1.24 2000/07/26 11:48:51 ragge Exp $
#
# Copyright (c) 1997 Ludd, University of Lule}, Sweden.
# All rights reserved.
@@ -68,6 +68,7 @@
define MCHK offsetof(struct cpu_dep, cpu_mchk)
define MEMERR offsetof(struct cpu_dep, cpu_memerr)
+define BADADDR offsetof(struct cpu_dep, cpu_badaddr)
define KERNBASE KERNBASE
diff -r 97649075df3f -r ebce3aa2a4a4 sys/arch/vax/vax/intvec.s
--- a/sys/arch/vax/vax/intvec.s Wed Jul 26 11:47:15 2000 +0000
+++ b/sys/arch/vax/vax/intvec.s Wed Jul 26 11:48:50 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: intvec.s,v 1.53 2000/07/22 05:03:23 matt Exp $ */
+/* $NetBSD: intvec.s,v 1.54 2000/07/26 11:48:50 ragge Exp $ */
/*
* Copyright (c) 1994, 1997 Ludd, University of Lule}, Sweden.
@@ -178,7 +178,17 @@
rei
L4: addl2 (sp)+,sp # remove info pushed on stack
- cmpl _C_LABEL(vax_cputype),$1 # Is it a 11/780?
+ pushr $0x3f # save regs for clobbering
+ movl _C_LABEL(dep_call),r0 # get cpu-specific mchk handler
+ tstl BADADDR(r0) # any handler available?
+ bneq 4f # yep, call it
+ popr $0x3f # nope, restore regs
+ brb 0f # continue
+4: calls $0,*BADADDR(r0) # call machine-specific handler
+ popr $0x3f # restore regs
+ brb 2f
+
+0: cmpl _C_LABEL(vax_cputype),$1 # Is it a 11/780?
bneq 1f # No...
mtpr $0, $PR_SBIFS # Clear SBI fault register
Home |
Main Index |
Thread Index |
Old Index