summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/db_machdep.h
Commit message (Collapse)AuthorAgeFilesLines
* Begin all license/copyright comments with /*-imp2005-01-051-1/+1
|
* MFi386: adapt rev 1.19 (debugger fixes)peter2004-09-221-2/+10
|
* Mega update for the KDB framework: turn DDB into a KDB backend.marcel2004-07-101-12/+5
| | | | | | | | | | | | | | | | Most of the changes are a direct result of adding thread awareness. Typically, DDB_REGS is gone. All registers are taken from the trapframe and backtraces use the PCB based contexts. DDB_REGS was defined to be a trapframe on all platforms anyway. Thread awareness introduces the following new commands: thread X switch to thread X (where X is the TID), show threads list all threads. The backtrace code has been made more flexible so that one can create backtraces for any thread by giving the thread ID as an argument to trace. With this change, ia64 has support for breakpoints.
* Initial port to amd64 after repocopy from i386. Note that thepeter2003-05-301-6/+6
| | | | | | | | | disassembler has not been updated yet, and will do some very strange things. It does tracebacks (without function arguments due to regparm calling conventions) if -fno-omit-frame-pointer is used (to come later). This achieves basic functionality. Approved by: re (amd64/* blanket)
* Commit MD parts of a loosely functional AMD64 port. This is based onpeter2003-05-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | 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.
* Fill out some gaps in ia64 DDB support. This involves generalising DDB'sdfr2001-09-151-0/+2
| | | | | breakpoint handling slightly to cope with the fact that ia64 instructions are not located on byte boundaries.
* Fix style bug: order includesmarcel1999-10-041-1/+1
| | | | Submitted by: bde
* sigset_t change (part 3 of 5)marcel1999-09-291-0/+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
|
* Backed out rev.1.5. if %cs is bad, %eip may be bad, but this is no longerbde1997-03-281-3/+2
| | | | fatal.
* Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are notpeter1997-02-221-1/+1
| | | | ready for it yet.
* Fixed printing of small offsets. E.g., -4(%ebp) is now printedbde1997-01-161-0/+15
| | | | | | as -0x4(%ebp) instead of as _APTD+0xffc(%ebp), and if GUPROF is defined, 8(%ebp) is now printed as 0x8(%ebp) instead of as GMON_PROF_HIRES+0x4(%ebp).
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Removed unused thread support (partly to get rid of its incompletebde1995-12-031-46/+2
| | | | | | function declarations). Removed unused #includes (lots of vm ones).
* Remove trailing whitespace.rgrimes1995-05-301-7/+7
|
* Remove reference to impossible trap type T_KDBTRAP. We don't supportbde1995-01-141-8/+9
| | | | | | watchpoints. Uniformize idempotency ifdef.
* Fix the test for the code segment being the usual one. Unusual codebde1994-10-191-2/+3
| | | | | segments can still cause panics. Their pc is converted to 0 and 0 is only checked for in one place before use.
* Avoid ddb getting a panic if the code-segment isn't the usual one...phk1994-10-021-2/+2
|
* Remove <machine/eflags.h> and all dependencies on it. eflags.h is justbde1994-09-081-8/+6
| | | | | | | the Mach/i386 version of the BSD/vax(?) <machine/psl.h>. The Mach version has slightly better names for many macros but is now out of date and little used. It was originally used even less (for spelling PSL_T as EFL_TF in <machine/db_machdep.h>).
* Made all header files idempotent and moved incorrect common data fromwollman1993-11-071-2/+2
| | | | | headers into a related source file. Added cons.h as first step towards moving i386/i386/cons.h to machine/cons.h where it belongs.
* Removed all patch kit headers, sccsid and rcsid strings, put $Id$ in, somergrimes1993-10-161-35/+1
| | | | minor cleanup. Added $Id$ to files that did not have any version info, etc
* Initial import, 0.1 + pk 0.2.4-B1rgrimes1993-06-121-0/+154
OpenPOWER on IntegriCloud