/* Copyright (c) 1993 Xerox Corporation. All rights reserved. */ /* $Id$ $Date$ * * PCR Remote Debugger public types. */ #ifndef ←←PCR←RDbgTypes←h # define ←←PCR←RDbgTypes←h 1 #include <config/PCR←StdDefs.h> #include <th/PCR←ThCtl.h> #include <il/PCR←IL.h> #include <il/PCR←ILSym.h> #include <sys/types.h> ??? typedef char * PCR←RDbg←CopiedString; /* * Pointer to string copied from debuggee to debugger. * Sent/received as a block8 including trailing null. */ #define PCR←RDbg←RAddr(type) void * /* * Address of a "type" object on debuggee. */ /* * Thread descriptors */ typedef struct PCR←DbgNub←ThRAddrsRep { unsigned dnti←cnt; PCR←DbgNub←RAddr(PCR←Th←T) dnti←dntd[ /* cnt */ 1 ]; } PCR←DbgNub←ThIDs; typedef struct PCR←DbgNub←ThDataRep { PCR←DbgNub←RAddr(PCR←Th←T) void * dntd←thRAddr; PCR←ThCtl←ThInfo dntd←thInfo; void * dntd←dbMsg; void * dntd←dbData; } PCR←DbgNub←ThData; /* * Program Counter Data */ typedef struct PCR←DbgNub←PCDataRep { PCR←DbgNub←CopiedString dnpcd←procName; PCR←RDbg←RAddr(struct PCR←ILSym←EntryRep) dnpcd←procSymRAddr; char * dnpcd←fileName; PCR←RDbg←RAddr(struct PCR←IL←LoadedFileRep) dnpcd←fileInfoRAddr; } PCR←DbgNub←PCData; /* * File and Segment description */ typedef struct PCR←DbgNub←SegDataRep { PCR←DbgNub←RAddr(struct PCR←IL←LoadedSegmentRep) dnsd←lsa; struct PCR←IL←LoadedSegmentRep dnsd←ls; } PCR←DbgNub←SegData; typedef struct PCR←DbgNub←FileDataRep { PCR←DbgNub←RAddr(struct PCR←IL←LoadedFileRep) dnfd←lfa; struct PCR←IL←LoadedFileRep dnfd←lf; PCR←DbgNub←CopiedString dnfd←name; unsigned dnfd←nSegs; PCR←DbgNub←SegData dnfd←segs[ /* nsegs */ 1 ]; } PCR←DbgNub←FileData; /* * Symbol table entry */ typedef struct PCR←DbgNub←SymDataRep { PCR←DbgNub←RAddr(PCR←ILSym←Entry) dnsd←sea; struct PCR←ILSym←EntryRep dnsd←se; PCR←DbgNub←CopiedString dnsd←name; } PCR←DbgNub←SymData; /* * Instruction Set + Operating System names */ typedef struct PCR←DbgNub←DebuggeeDescriptionRep { PCR←DbgNub←CopiedChars * dndd←instrSet; PCR←DbgNub←CopiedChars * dndd←opSys; } PCR←DbnNub←DebuggeeDescription; #endif /* ←←PCR←DbgNubTypes←h */