Deleted Added
full compact
exception.s (44327) exception.s (45720)
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 16 unchanged lines hidden (view full) ---

25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 16 unchanged lines hidden (view full) ---

25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * $Id: exception.s,v 1.56 1999/02/25 11:03:08 bde Exp $
33 * $Id: exception.s,v 1.57 1999/02/28 10:53:28 bde Exp $
34 */
35
36#include "npx.h"
37#include "opt_vm86.h"
38
39#include <machine/asmacros.h>
40#include <machine/ipl.h>
41#include <machine/lock.h>

--- 92 unchanged lines hidden (view full) ---

134 pushl $0; TRAP(T_MCHK)
135IDTVEC(rsvd)
136 pushl $0; TRAP(T_RESERVED)
137
138IDTVEC(fpu)
139#if NNPX > 0
140 /*
141 * Handle like an interrupt (except for accounting) so that we can
34 */
35
36#include "npx.h"
37#include "opt_vm86.h"
38
39#include <machine/asmacros.h>
40#include <machine/ipl.h>
41#include <machine/lock.h>

--- 92 unchanged lines hidden (view full) ---

134 pushl $0; TRAP(T_MCHK)
135IDTVEC(rsvd)
136 pushl $0; TRAP(T_RESERVED)
137
138IDTVEC(fpu)
139#if NNPX > 0
140 /*
141 * Handle like an interrupt (except for accounting) so that we can
142 * call npxintr to clear the error. It would be better to handle
142 * call npx_intr to clear the error. It would be better to handle
143 * npx interrupts as traps. This used to be difficult for nested
144 * interrupts, but now it is fairly easy - mask nested ones the
145 * same as SWI_AST's.
146 */
147 pushl $0 /* dummy error code */
148 pushl $0 /* dummy trap type */
149 pushal
150 pushl %ds

--- 24 unchanged lines hidden (view full) ---

175 movl _cpl,%eax
176 pushl %eax
177 pushl $0 /* dummy unit to finish intr frame */
178 incl _cnt+V_TRAP
179 orl $SWI_AST_MASK,%eax
180 movl %eax,_cpl
181#endif /* SMP */
182
143 * npx interrupts as traps. This used to be difficult for nested
144 * interrupts, but now it is fairly easy - mask nested ones the
145 * same as SWI_AST's.
146 */
147 pushl $0 /* dummy error code */
148 pushl $0 /* dummy trap type */
149 pushal
150 pushl %ds

--- 24 unchanged lines hidden (view full) ---

175 movl _cpl,%eax
176 pushl %eax
177 pushl $0 /* dummy unit to finish intr frame */
178 incl _cnt+V_TRAP
179 orl $SWI_AST_MASK,%eax
180 movl %eax,_cpl
181#endif /* SMP */
182
183 call _npxintr
183 call _npx_intr
184
185 incb _intr_nesting_level
186 MEXITCOUNT
187 jmp _doreti
188#else /* NNPX > 0 */
189 pushl $0; TRAP(T_ARITHTRAP)
190#endif /* NNPX > 0 */
191

--- 181 unchanged lines hidden ---
184
185 incb _intr_nesting_level
186 MEXITCOUNT
187 jmp _doreti
188#else /* NNPX > 0 */
189 pushl $0; TRAP(T_ARITHTRAP)
190#endif /* NNPX > 0 */
191

--- 181 unchanged lines hidden ---