becopyheur2: Cache the admissible registers eagerly.
[libfirm] / ir / ir / irdump_t.h
1 /*
2  * This file is part of libFirm.
3  * Copyright (C) 2012 University of Karlsruhe.
4  */
5
6 /**
7  * @file
8  * @brief   Private header for irdump
9  */
10 #ifndef FIRM_IR_IRDUMPT_T_H
11 #define FIRM_IR_IRDUMPT_T_H
12
13 #include "irdump.h"
14 #include "irgraph_t.h"
15
16 void print_nodeid(FILE *F, const ir_node *node);
17 void print_irgid(FILE *F, const ir_graph *irg);
18 void print_typeid(FILE *F, const ir_type *type);
19 void print_entityid(FILE *F, const ir_entity *entity);
20 void print_loopid(FILE *F, const ir_loop *loop);
21
22 const char *get_irg_dump_name(const ir_graph *irg);
23
24 const char *get_ent_dump_name(const ir_entity *ent);
25
26 /**
27  * returns the name of a mode or "<ERROR>" if mode is NOT a mode object.
28  */
29 char const *get_mode_name_ex(ir_mode const *mode);
30 /** dump the name of a node n to the File F. */
31 void dump_node_opcode(FILE *out, const ir_node *n);
32
33 void dump_node_label(FILE *out, const ir_node *n);
34
35 /** Writes vcg representation with title "PRINT_TYPEID(tp)" to file F. */
36 void dump_type_node(FILE *out, ir_type *tp);
37
38 void dump_vcg_header(FILE *out, const char *name, const char *layout, const char *orientation);
39 void dump_vcg_footer(FILE *out);
40 void dump_vcg_header_colors(FILE *out);
41 void dump_vcg_infonames(FILE *out);
42 void dump_node(FILE *out, const ir_node *node);
43
44 /** Write the irnode and all its attributes to the file passed.
45  * (plain text format) */
46 void dump_irnode_to_file(FILE *out, const ir_node *node);
47
48 #endif