Initial revision
[libfirm] / ir / debug / debug.h
1 /* Declarations for debug
2    Copyright (C) 1995, 1996 Christian von Roques
3    All rights reserved.  */
4
5 #ifndef _DEBUG_H_
6 #define _DEBUG_H_
7
8 void d_init (int nflags);
9 int d_ (int flag, unsigned level);
10 int d_level (int flag);
11 int d_set_level (int flag, unsigned level);
12 void d_parse (const char *s);
13
14 #ifdef DEBUG
15
16 #include "deflag.h"
17
18 extern unsigned char *d_vec;
19
20 # define d_init(n) (d_init) ((n))
21 # define d_(flag, level) (d_vec[(flag)] >= (level))
22 # define d_level(flag) (d_vec[(flag)])
23 # define d_set_level(flag, level) (d_vec[(flag)] = (level))
24 # define d_parse(s) (d_parse) ((s))
25
26 #else   /* !DEBUG */
27
28 # define d_init(n) ((void)0)
29 # define d_(flag, level) 0
30 # define d_level(flag) 0
31 # define d_set_level(flag, level) (level)
32 # define d_parse(s) ((void)0)
33
34 #endif  /* !DEBUG */
35
36 #endif