Files
xen/tools/debugger/pdb/Intel.ml
T
kaf24@firebug.cl.cam.ac.uk 7254a301ec bitkeeper revision 1.1665.1.5 (42a1a779yqLZDCutMj_vFNQlo3q3zw)
Rationalise debugger stuff in the tree.

Within Xen itself, remove PDB references and fold into domu_debug.
When domu_debug hits a breakpoint, it pauses all vcpus of the domain
and raises VIRQ_DEBUGGER (not VIRQ_PDB). The debugger in domain0 can
either poll pause status or bind to VIRQ_DEBUGGER. Before debugging
a breakpointed domain the debugger should issue PAUSEDOMAIN itself, or
it is not guaranteed to see paused state of the domain!

Outside Xen there's a new dir tools/debugger, containing gdb, pdb and
a new library libxendebug (used by pdb). I also think the ptrace
functions in libxc also ought to be moved out: either to libxendebug
or to a new library libxenptrace.

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-06-04 13:07:05 +00:00

72 lines
1018 B
OCaml

(** Intel.ml
*
* various sundry Intel x86 definitions
*
* @author copyright (c) 2005 alex ho
* @see <www.cl.cam.ac.uk/netos/pdb> pervasive debugger
* @version 1
*)
type register =
| EBX
| ECX
| EDX
| ESI
| EDI
| EBP
| EAX
| Error_code
| Entry_vector
| EIP
| CS
| EFLAGS
| ESP
| SS
| ES
| DS
| FS
| GS
type registers =
{ ebx : int32;
ecx : int32;
edx : int32;
esi : int32;
edi : int32;
ebp : int32;
eax : int32;
error_code : int32;
entry_vector : int32;
eip : int32;
cs : int32;
eflags : int32;
esp : int32;
ss : int32;
es : int32;
ds : int32;
fs : int32;
gs : int32
}
let null_registers =
{ ebx = 0l;
ecx = 0l;
edx = 0l;
esi = 0l;
edi = 0l;
ebp = 0l;
eax = 0l;
error_code = 0l;
entry_vector = 0l;
eip = 0l;
cs = 0l;
eflags = 0l;
esp = 0l;
ss = 0l;
es = 0l;
ds = 0l;
fs = 0l;
gs = 0l
}