exception.S (166105) | exception.S (172066) |
---|---|
1/*- 2 * Copyright (c) 1997 Berkeley Software Design, Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. --- 40 unchanged lines hidden (view full) --- 49 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 50 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 51 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 52 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 53 * SUCH DAMAGE. 54 */ 55 56#include <machine/asm.h> | 1/*- 2 * Copyright (c) 1997 Berkeley Software Design, Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. --- 40 unchanged lines hidden (view full) --- 49 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 50 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 51 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 52 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 53 * SUCH DAMAGE. 54 */ 55 56#include <machine/asm.h> |
57__FBSDID("$FreeBSD: head/sys/sparc64/sparc64/exception.S 166105 2007-01-19 11:15:34Z marius $"); | 57__FBSDID("$FreeBSD: head/sys/sparc64/sparc64/exception.S 172066 2007-09-06 19:16:30Z marius $"); |
58 59#include "opt_compat.h" 60#include "opt_ddb.h" 61 62#include <machine/asi.h> 63#include <machine/asmacros.h> 64#include <machine/frame.h> 65#include <machine/fsr.h> --- 2259 unchanged lines hidden (view full) --- 2325 stx %i1, [%sp + SPOFF + CCFSZ + TF_O1] 2326 stx %i2, [%sp + SPOFF + CCFSZ + TF_O2] 2327 stx %i3, [%sp + SPOFF + CCFSZ + TF_O3] 2328 stx %i4, [%sp + SPOFF + CCFSZ + TF_O4] 2329 stx %i5, [%sp + SPOFF + CCFSZ + TF_O5] 2330 stx %i6, [%sp + SPOFF + CCFSZ + TF_O6] 2331 stx %i7, [%sp + SPOFF + CCFSZ + TF_O7] 2332 | 58 59#include "opt_compat.h" 60#include "opt_ddb.h" 61 62#include <machine/asi.h> 63#include <machine/asmacros.h> 64#include <machine/frame.h> 65#include <machine/fsr.h> --- 2259 unchanged lines hidden (view full) --- 2325 stx %i1, [%sp + SPOFF + CCFSZ + TF_O1] 2326 stx %i2, [%sp + SPOFF + CCFSZ + TF_O2] 2327 stx %i3, [%sp + SPOFF + CCFSZ + TF_O3] 2328 stx %i4, [%sp + SPOFF + CCFSZ + TF_O4] 2329 stx %i5, [%sp + SPOFF + CCFSZ + TF_O5] 2330 stx %i6, [%sp + SPOFF + CCFSZ + TF_O6] 2331 stx %i7, [%sp + SPOFF + CCFSZ + TF_O7] 2332 |
2333 call critical_enter 2334 nop 2335 | |
2336 SET(intr_handlers, %l1, %l0) 2337 sllx %l3, IH_SHIFT, %l1 2338 ldx [%l0 + %l1], %l1 2339 KASSERT(%l1, "tl0_intr: ih null") 2340 call %l1 2341 add %sp, CCFSZ + SPOFF, %o0 2342 | 2333 SET(intr_handlers, %l1, %l0) 2334 sllx %l3, IH_SHIFT, %l1 2335 ldx [%l0 + %l1], %l1 2336 KASSERT(%l1, "tl0_intr: ih null") 2337 call %l1 2338 add %sp, CCFSZ + SPOFF, %o0 2339 |
2343 call critical_exit 2344 nop 2345 | |
2346 /* %l3 contains PIL */ 2347 SET(intrcnt, %l1, %l2) 2348 prefetcha [%l2] ASI_N, 1 2349 SET(pil_countp, %l1, %l0) 2350 sllx %l3, 1, %l1 2351 lduh [%l0 + %l1], %l0 2352 sllx %l0, 3, %l0 2353 add %l0, %l2, %l0 --- 488 unchanged lines hidden (view full) --- 2842 stx %g3, [%sp + SPOFF + CCFSZ + TF_G3] 2843 stx %g4, [%sp + SPOFF + CCFSZ + TF_G4] 2844 stx %g5, [%sp + SPOFF + CCFSZ + TF_G5] 2845 2846 mov %l4, PCB_REG 2847 mov %l5, PCPU_REG 2848 wrpr %g0, PSTATE_KERNEL, %pstate 2849 | 2340 /* %l3 contains PIL */ 2341 SET(intrcnt, %l1, %l2) 2342 prefetcha [%l2] ASI_N, 1 2343 SET(pil_countp, %l1, %l0) 2344 sllx %l3, 1, %l1 2345 lduh [%l0 + %l1], %l0 2346 sllx %l0, 3, %l0 2347 add %l0, %l2, %l0 --- 488 unchanged lines hidden (view full) --- 2836 stx %g3, [%sp + SPOFF + CCFSZ + TF_G3] 2837 stx %g4, [%sp + SPOFF + CCFSZ + TF_G4] 2838 stx %g5, [%sp + SPOFF + CCFSZ + TF_G5] 2839 2840 mov %l4, PCB_REG 2841 mov %l5, PCPU_REG 2842 wrpr %g0, PSTATE_KERNEL, %pstate 2843 |
2850 call critical_enter 2851 nop 2852 | |
2853 SET(intr_handlers, %l5, %l4) 2854 sllx %l7, IH_SHIFT, %l5 2855 ldx [%l4 + %l5], %l5 2856 KASSERT(%l5, "tl1_intr: ih null") 2857 call %l5 2858 add %sp, CCFSZ + SPOFF, %o0 2859 | 2844 SET(intr_handlers, %l5, %l4) 2845 sllx %l7, IH_SHIFT, %l5 2846 ldx [%l4 + %l5], %l5 2847 KASSERT(%l5, "tl1_intr: ih null") 2848 call %l5 2849 add %sp, CCFSZ + SPOFF, %o0 2850 |
2860 call critical_exit 2861 nop 2862 | |
2863 /* %l7 contains PIL */ 2864 SET(intrcnt, %l5, %l4) 2865 prefetcha [%l4] ASI_N, 1 2866 SET(pil_countp, %l5, %l6) 2867 sllx %l7, 1, %l5 2868 lduh [%l5 + %l6], %l5 2869 sllx %l5, 3, %l5 2870 add %l5, %l4, %l4 --- 80 unchanged lines hidden --- | 2851 /* %l7 contains PIL */ 2852 SET(intrcnt, %l5, %l4) 2853 prefetcha [%l4] ASI_N, 1 2854 SET(pil_countp, %l5, %l6) 2855 sllx %l7, 1, %l5 2856 lduh [%l5 + %l6], %l5 2857 sllx %l5, 3, %l5 2858 add %l5, %l4, %l4 --- 80 unchanged lines hidden --- |