haiku/headers/private/kernel/debug.h
beveloper 60d9ed9e3b fixed the ASSERT macro, it did not even compile if DEBUG was defined
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-28 14:07:28 +00:00

35 lines
862 B
C
Executable File

/*
** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
** Distributed under the terms of the NewOS License.
*/
#ifndef _KERNEL_DEBUG_H
#define _KERNEL_DEBUG_H
#include <kernel.h>
#include <stage2.h>
#include <cdefs.h>
extern int dbg_register_file[2][14]; /* XXXmpetit -- must be made generic */
int dbg_init(kernel_args *ka);
int dbg_init2(kernel_args *ka);
char dbg_putch(char c);
void dbg_puts(const char *s);
bool dbg_set_serial_debug(bool new_val);
bool dbg_get_serial_debug(void);
/* special return codes for kernel debugger command function*/
#define B_KDEBUG_CONT 2
#define B_KDEBUG_QUIT 3
extern void dbg_save_registers(int *); /* arch provided */
#if DEBUG
# define ASSERT(x) \
if (x) {} else { panic("ASSERT FAILED (%s:%d): %s\n", __FILE__, __LINE__, #x); }
#else
# define ASSERT(x)
#endif
#endif /* _KERNEL_DEBUG_H */