test for proper irg
[libfirm] / ir / common / firm_common.c
1 /*
2  * Project:     libFIRM
3  * File name:   ir/common/firm_common.c
4  * Purpose:
5  * Author:      Martin Trapp, Christian Schaefer
6  * Modified by: Goetz Lindenmaier
7  * Created:
8  * CVS-ID:      $Id$
9  * Copyright:   (c) 1998-2003 Universität Karlsruhe
10  * Licence:     This file protected by GPL -  GNU GENERAL PUBLIC LICENSE.
11  */
12
13
14 #ifdef HAVE_CONFIG_H
15 # include <config.h>
16 #endif
17
18 #include "firm_common_t.h"
19 #include "irgraph.h"
20
21 /* returns the kind of the thing */
22 firm_kind
23 get_kind (const void *firm_thing) {
24   assert (firm_thing);
25   return *(firm_kind *)firm_thing;
26 }
27
28
29 const char* print_firm_kind(void *firm_thing) {
30   assert (firm_thing);
31   switch (*(firm_kind *)firm_thing) {
32     case k_entity  : { return "k_entity"  ;} break;
33     case k_type    : { return "k_type"    ;} break;
34     case k_ir_graph: { return "k_ir_graph";} break;
35     case k_ir_node : { return "k_ir_node" ;} break;
36     case k_ir_mode : { return "k_ir_mode" ;} break;
37     case k_ir_op   : { return "k_ir_op"   ;} break;
38     case k_tarval  : { return "k_tarval"  ;} break;
39     case k_ir_loop : { return "k_ir_loop" ;} break;
40   default: break;
41   }
42   return "";
43 }