Deleted Added
full compact
locore.s (83366) locore.s (90132)
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

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

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * from: @(#)locore.s 7.3 (Berkeley) 5/13/91
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

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

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * from: @(#)locore.s 7.3 (Berkeley) 5/13/91
37 * $FreeBSD: head/sys/i386/i386/locore.s 83366 2001-09-12 08:38:13Z julian $
37 * $FreeBSD: head/sys/i386/i386/locore.s 90132 2002-02-03 09:13:58Z bde $
38 *
39 * originally from: locore.s, by William F. Jolitz
40 *
41 * Substantially rewritten by David Greenman, Rod Grimes,
42 * Bruce Evans, Wolfgang Solfrank, Poul-Henning Kamp
43 * and many others.
44 */
45
46#include "opt_bootp.h"
38 *
39 * originally from: locore.s, by William F. Jolitz
40 *
41 * Substantially rewritten by David Greenman, Rod Grimes,
42 * Bruce Evans, Wolfgang Solfrank, Poul-Henning Kamp
43 * and many others.
44 */
45
46#include "opt_bootp.h"
47#include "opt_compat.h"
47#include "opt_nfsroot.h"
48
49#include <sys/syscall.h>
50#include <sys/reboot.h>
51
52#include <machine/asmacros.h>
53#include <machine/cputypes.h>
54#include <machine/psl.h>

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

411 jne 9f
412 movl UC_GS(%eax),%gs /* restore %gs */
4139:
414 movl $SYS_sigreturn,%eax
415 pushl %eax /* junk to fake return addr. */
416 int $0x80 /* enter kernel with args */
4170: jmp 0b
418
48#include "opt_nfsroot.h"
49
50#include <sys/syscall.h>
51#include <sys/reboot.h>
52
53#include <machine/asmacros.h>
54#include <machine/cputypes.h>
55#include <machine/psl.h>

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

412 jne 9f
413 movl UC_GS(%eax),%gs /* restore %gs */
4149:
415 movl $SYS_sigreturn,%eax
416 pushl %eax /* junk to fake return addr. */
417 int $0x80 /* enter kernel with args */
4180: jmp 0b
419
420#ifdef COMPAT_43
419 ALIGN_TEXT
420osigcode:
421 call *SIGF_HANDLER(%esp) /* call signal handler */
422 lea SIGF_SC(%esp),%eax /* get sigcontext */
423 pushl %eax
424 testl $PSL_VM,SC_PS(%eax)
425 jne 9f
426 movl SC_GS(%eax),%gs /* restore %gs */
4279:
421 ALIGN_TEXT
422osigcode:
423 call *SIGF_HANDLER(%esp) /* call signal handler */
424 lea SIGF_SC(%esp),%eax /* get sigcontext */
425 pushl %eax
426 testl $PSL_VM,SC_PS(%eax)
427 jne 9f
428 movl SC_GS(%eax),%gs /* restore %gs */
4299:
428 movl $0x01d516,SC_TRAPNO(%eax) /* magic: 0ldSiG */
429 movl $SYS_sigreturn,%eax
430 movl $SYS_osigreturn,%eax
430 pushl %eax /* junk to fake return addr. */
431 int $0x80 /* enter kernel with args */
4320: jmp 0b
431 pushl %eax /* junk to fake return addr. */
432 int $0x80 /* enter kernel with args */
4330: jmp 0b
434#endif /* COMPAT_43 */
433
434 ALIGN_TEXT
435esigcode:
436
437 .data
438 .globl szsigcode, szosigcode
439szsigcode:
440 .long esigcode-sigcode
435
436 ALIGN_TEXT
437esigcode:
438
439 .data
440 .globl szsigcode, szosigcode
441szsigcode:
442 .long esigcode-sigcode
443#ifdef COMPAT_43
441szosigcode:
442 .long esigcode-osigcode
444szosigcode:
445 .long esigcode-osigcode
446#endif
443 .text
444
445/**********************************************************************
446 *
447 * Recover the bootinfo passed to us from the boot program
448 *
449 */
450recover_bootinfo:

--- 553 unchanged lines hidden ---
447 .text
448
449/**********************************************************************
450 *
451 * Recover the bootinfo passed to us from the boot program
452 *
453 */
454recover_bootinfo:

--- 553 unchanged lines hidden ---