Remove dbg.h and move it to kd.h, it was getting confusing to have so many debug files. Also fixes hal to compile

svn path=/trunk/; revision=14806
This commit is contained in:
Alex Ionescu 2005-04-25 19:42:48 +00:00
parent a3bf890534
commit d06c1ef5e9
3 changed files with 76 additions and 3 deletions

View file

@ -19,8 +19,6 @@
#define __INTERNAL_DEBUG #define __INTERNAL_DEBUG
#include <internal/ntoskrnl.h> #include <internal/ntoskrnl.h>
#include <internal/dbg.h>
#if defined(_MSC_VER) && (_MSC_VER < 1300) #if defined(_MSC_VER) && (_MSC_VER < 1300)
/* TODO: Verify which version the MS compiler learned the __FUNCTION__ macro */ /* TODO: Verify which version the MS compiler learned the __FUNCTION__ macro */

View file

@ -11,12 +11,88 @@
#include <ntdll/ldr.h> #include <ntdll/ldr.h>
struct _KD_DISPATCH_TABLE; struct _KD_DISPATCH_TABLE;
#define KdPrintEx(_x_) DbgPrintEx _x_
#ifdef DBG #ifdef DBG
#include "kdgdb.h" #include "kdgdb.h"
#include "kdbochs.h" #include "kdbochs.h"
#endif #endif
/* SYMBOL ROUTINES **********************************************************/
#if defined(KDBG) || defined(DBG)
VOID
KdbSymLoadUserModuleSymbols(IN PLDR_MODULE LdrModule);
VOID
KdbSymFreeProcessSymbols(IN PEPROCESS Process);
VOID
KdbSymLoadDriverSymbols(IN PUNICODE_STRING Filename,
IN PMODULE_OBJECT Module);
VOID
KdbSymUnloadDriverSymbols(IN PMODULE_OBJECT ModuleObject);
VOID
KdbSymProcessBootSymbols(IN PCHAR FileName);
VOID
KdbSymInit(IN PMODULE_TEXT_SECTION NtoskrnlTextSection,
IN PMODULE_TEXT_SECTION LdrHalTextSection);
BOOLEAN
KdbSymPrintAddress(IN PVOID Address);
VOID
KdbDeleteProcessHook(IN PEPROCESS Process);
NTSTATUS
KdbSymGetAddressInformation(IN PROSSYM_INFO RosSymInfo,
IN ULONG_PTR RelativeAddress,
OUT PULONG LineNumber OPTIONAL,
OUT PCH FileName OPTIONAL,
OUT PCH FunctionName OPTIONAL);
typedef struct _KDB_MODULE_INFO
{
WCHAR Name[256];
ULONG_PTR Base;
ULONG Size;
PROSSYM_INFO RosSymInfo;
} KDB_MODULE_INFO, *PKDB_MODULE_INFO;
/* MACROS FOR NON-KDBG BUILDS ************************************************/
# define KDB_LOADUSERMODULE_HOOK(LDRMOD) KdbSymLoadUserModuleSymbols(LDRMOD)
# define KDB_LOADDRIVER_HOOK(FILENAME, MODULE) KdbSymLoadDriverSymbols(FILENAME, MODULE)
# define KDB_UNLOADDRIVER_HOOK(MODULE) KdbSymUnloadDriverSymbols(MODULE)
# define KDB_LOADERINIT_HOOK(NTOS, HAL) KdbSymInit(NTOS, HAL)
# define KDB_SYMBOLFILE_HOOK(FILENAME) KdbSymProcessBootSymbols(FILENAME)
#else
# define KDB_LOADUSERMODULE_HOOK(LDRMOD) do { } while (0)
# define KDB_LOADDRIVER_HOOK(FILENAME, MODULE) do { } while (0)
# define KDB_UNLOADDRIVER_HOOK(MODULE) do { } while (0)
# define KDB_LOADERINIT_HOOK(NTOS, HAL) do { } while (0)
# define KDB_SYMBOLFILE_HOOK(FILENAME) do { } while (0)
# define KDB_CREATE_THREAD_HOOK(CONTEXT) do { } while (0)
#endif
#ifdef KDBG
# define KeRosPrintAddress(ADDRESS) KdbSymPrintAddress(ADDRESS)
# define KdbInit() KdbpCliInit()
# define KdbModuleLoaded(FILENAME) KdbpCliModuleLoaded(FILENAME)
# define KDB_DELETEPROCESS_HOOK(PROCESS) KdbDeleteProcessHook(PROCESS)
#else
# define KeRosPrintAddress(ADDRESS) KiRosPrintAddress(ADDRESS)
# define KdbEnterDebuggerException(ER, PM, C, TF, F) kdHandleException
# define KdbInit() do { } while (0)
# define KdbEnter() do { } while (0)
# define KdbModuleLoaded(X) do { } while (0)
# define KDB_DELETEPROCESS_HOOK(PROCESS) do { } while (0)
#endif
/* KD ROUTINES ***************************************************************/ /* KD ROUTINES ***************************************************************/
typedef enum _KD_CONTINUE_TYPE typedef enum _KD_CONTINUE_TYPE

View file

@ -53,7 +53,6 @@
#include <internal/ifs.h> #include <internal/ifs.h>
#include <internal/port.h> #include <internal/port.h>
#include <internal/nls.h> #include <internal/nls.h>
#include <internal/dbg.h>
#ifdef KDBG #ifdef KDBG
#include <internal/kdb.h> #include <internal/kdb.h>
#endif #endif