summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/setjmp.h
Commit message (Collapse)AuthorAgeFilesLines
* Copy amd64 setjmp.h to x86 and replace amd64/i386/pc98 setjmp.h with stubs.tijl2012-02-281-47/+3
|
* Remove 3rd clause, renumber, ok per emailimp2007-01-121-4/+1
|
* Make this more compatable with libc_r. Make the internal types for storingpeter2003-06-021-3/+3
| | | | registers an array of longs rather than int.
* Commit MD parts of a loosely functional AMD64 port. This is based onpeter2003-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | a heavily stripped down FreeBSD/i386 (brutally stripped down actually) to attempt to get a stable base to start from. There is a lot missing still. Worth noting: - The kernel runs at 1GB in order to cheat with the pmap code. pmap uses a variation of the PAE code in order to avoid having to worry about 4 levels of page tables yet. - It boots in 64 bit "long mode" with a tiny trampoline embedded in the i386 loader. This simplifies locore.s greatly. - There are still quite a few fragments of i386-specific code that have not been translated yet, and some that I cheated and wrote dumb C versions of (bcopy etc). - It has both int 0x80 for syscalls (but using registers for argument passing, as is native on the amd64 ABI), and the 'syscall' instruction for syscalls. int 0x80 preserves all registers, 'syscall' does not. - I have tried to minimize looking at the NetBSD code, except in a couple of places (eg: to find which register they use to replace the trashed %rcx register in the syscall instruction). As a result, there is not a lot of similarity. I did look at NetBSD a few times while debugging to get some ideas about what I might have done wrong in my first attempt.
* Fix namespace issues by using visibility conditionals frommike2002-10-051-1/+3
| | | | <sys/cdefs.h>.
* style(9) <machine/setjmp.h> headers so they look mostly the same.mike2002-10-041-5/+10
|
* Work around a bug by adding struct tags. gcc-2.95 apparently gets thebde2000-10-061-2/+2
| | | | | | | | | check in the [basic.link] section of the C++ standard wrong. gcc-2.7.2.3 apparently doesn't do the check, so the bug doesn't affect RELENG_3. PR: 16170, 21427 Submitted by: Max Khon <fjoe@lark.websci.ru> (i386 version) Discussed with: jdp
* sigset_t change (part 3 of 5)marcel1999-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------- By introducing a new sigframe so that the signal handler operates on the new siginfo_t and on ucontext_t instead of sigcontext, we now need two version of sendsig and sigreturn. A flag in struct proc determines whether the process expects an old sigframe or a new sigframe. The signal trampoline handles which sigreturn to call. It does this by testing for a magic cookie in the frame. The alpha uses osigreturn to implement longjmp. This means that osigreturn is not only used for compatibility with existing binaries. To handle the new sigset_t, setjmp saves it in sc_reserved (see NOTE). the struct sigframe has been moved from frame.h to sigframe.h to handle the complex header dependencies that was caused by the new sigframe. NOTE: For the i386, the size of jmp_buf has been increased to hold the new sigset_t. On the alpha this has been prevented by using sc_reserved in sigcontext.
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Suggested by: bdejb1998-01-201-1/+12
| | | | | | | | | | Move sigjmp_buf and jmp_buf structure definitions to machine/setjmp.h so that i386 can continue to use int as the basic register type and alpha can use long. Bruce was concerned about possible differing alignment. I've left the definition of _JBLEN in machine/setjmp.h even though Bruce's example used the number directly. I don't know if any other code relies on _JBLEN, so I left it to avoid potential breakage.
* Add a machine dependent header for the i386 jmp_buf size instead of pilingjb1998-01-101-0/+35
machine dependent definitions into src/include/setjmp.h.
OpenPOWER on IntegriCloud