added Load/Store addres counter
[libfirm] / ir / net / firmnet_t.h
1 #ifndef _FIRMNET_T_H_
2 #define _FIRMNET_T_H_
3
4 #include "firmnet.h"
5
6 #define BASIC_ERR_CHECK(expr,op,cond,fmt,last) \
7 { \
8         int res; \
9         if((res = (expr)) op cond) { \
10         fprintf(stderr, "%s(%d): %d = %s(%d): ", \
11         __FILE__, __LINE__, res, #expr, cond); \
12         lpp_print_err fmt; \
13         fprintf(stderr, "\n"); \
14         last; \
15         } \
16 }
17
18 #define BASIC_ERRNO_CHECK(expr,op,cond,last) \
19 { \
20         int _basic_errno_check_res = (expr); \
21         if(_basic_errno_check_res op cond) { \
22         fprintf(stderr, "%s(%d): %d = %s(%d): %s\n", \
23         __FILE__, __LINE__, _basic_errno_check_res, #expr, cond, strerror(errno)); \
24         last; \
25         } \
26 }
27
28 #define ERR_CHECK_RETURN(expr, op, cond, fmt, retval) \
29         BASIC_ERR_CHECK(expr, op, cond, fmt, return retval)
30
31 #define ERRNO_CHECK_RETURN(expr, op, cond, retval) \
32         BASIC_ERRNO_CHECK(expr, op, cond, return retval)
33
34 #define ERR_CHECK_RETURN_VOID(expr, op, cond, fmt) \
35         BASIC_ERR_CHECK(expr, op, cond, fmt, return)
36
37 #define ERRNO_CHECK_RETURN_VOID(expr, op, cond) \
38         BASIC_ERRNO_CHECK(expr, op, cond, return)
39
40 #define ERR_CHECK(expr, op, cond, fmt) \
41         BASIC_ERR_CHECK(expr, op, cond, fmt, (void) 0)
42
43 #define ERRNO_CHECK(expr, op, cond) \
44         BASIC_ERRNO_CHECK(expr, op, cond, (void) 0)
45
46 #endif /* _FIRMNET_T_H_ */