X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firdump_t.h;h=23eed8bc5b1a6c9dfd039472c3028c11b34a90a1;hb=95ea45b6d9050f3638c68dda8c4fcc92a79c81ed;hp=fde60e5ae78e6d33b173701dfeb33fdc7549a308;hpb=079d3a37a0903b598047f187bd88f5f229cb0bd6;p=libfirm diff --git a/ir/ir/irdump_t.h b/ir/ir/irdump_t.h index fde60e5ae..23eed8bc5 100644 --- a/ir/ir/irdump_t.h +++ b/ir/ir/irdump_t.h @@ -12,14 +12,15 @@ #define DEFAULT_ENUM_ITEM_ATTRIBUTE " " /* Attributes of edges between Firm nodes */ -#define INTRA_DATA_EDGE_ATTR "class:1 priority:50" -#define INTER_DATA_EDGE_ATTR "class:16 priority:10" -#define BLOCK_EDGE_ATTR "class:2 priority:50 linestyle:dotted" -#define CF_EDGE_ATTR "class:13 priority:60 color:red" -#define EXC_CF_EDGE_ATTR "class:18 priority:60 color:blue" -#define INTRA_MEM_EDGE_ATTR "class:14 priority:50 color:blue" -#define INTER_MEM_EDGE_ATTR "class:17 priority:10 color:blue" -#define DOMINATOR_EDGE_ATTR "class:15 color:red" +#define INTRA_DATA_EDGE_ATTR "class:1 priority:50" +#define INTER_DATA_EDGE_ATTR "class:16 priority:10" +#define BLOCK_EDGE_ATTR "class:2 priority:50 linestyle:dotted" +#define CF_EDGE_ATTR "class:13 priority:60 color:red" +#define EXC_CF_EDGE_ATTR "class:18 priority:60 color:blue" +#define INTRA_MEM_EDGE_ATTR "class:14 priority:50 color:blue" +#define INTER_MEM_EDGE_ATTR "class:17 priority:10 color:blue" +#define DOMINATOR_EDGE_ATTR "class:15 color:red" +#define POSTDOMINATOR_EDGE_ATTR "class:19 color:red linestyle:dotted" #define BACK_EDGE_ATTR "linestyle:dashed " @@ -45,43 +46,42 @@ #define ENT_CORR_EDGE_ATTR "label: \"value %d corresponds to \" " #define TYPE_MEMBER_EDGE_ATTR "class: 12 label: \"member\" color:blue" #define ENUM_ITEM_NODE_ATTR "color: green" -#define CALLGRAPH_EDGE_ATTR "calls" +/* #define CALLGRAPH_EDGE_ATTR "calls" */ - -#if DEBUG_libfirm && NODEID_AS_LABEL -#define PRINT_NODEID(X) fprintf(F, "n%ld", get_irn_node_nr(X)) -#define PRINT_TYPEID(X) fprintf(F, "\"t%ld\"", get_type_nr(X)) -#define PRINT_ENTID(X) fprintf(F, "e%ld", get_entity_nr(X)) -#define PRINT_IRGID(X) fprintf(F, "g%ld", get_irg_graph_nr(X)) -#define PRINT_CONSTID(X,Y) fprintf(F, "\"n%ldn%ld\"", get_irn_node_nr(X),get_irn_node_nr(Y)) +#define PRINT_NODEID(X) fprintf(F, "n%ld", get_irn_node_nr(X)) +#define PRINT_TYPEID(X) fprintf(F, "\"t%ld\"", get_type_nr(X)) +#define PRINT_ENTID(X) fprintf(F, "e%ld", get_entity_nr(X)) +#define PRINT_IRGID(X) fprintf(F, "g%ld", get_irg_graph_nr(X)) +#define PRINT_CONSTID(X,Y) fprintf(F, "\"n%ldn%ld\"", get_irn_node_nr(X),get_irn_node_nr(Y)) #define PRINT_CONSTBLKID(X,Y) fprintf(F, "n%ldb%ld", get_irn_node_nr(X),get_irn_node_nr(Y)) -#define PRINT_LOOPID(X) fprintf(F, "l%d", get_loop_loop_nr(X)) -#define PRINT_ITEMID(X,Y) fprintf(F, "i%ldT%d", get_type_nr(X), (Y)) - -#else -#define PRINT_NODEID(X) fprintf(F, "n%p", (void *)(X)) -#define PRINT_TYPEID(X) fprintf(F, "\"t%p\"", (void *)(X)) -#define PRINT_ENTID(X) fprintf(F, "e%p", (void *)(X)) -#define PRINT_IRGID(X) fprintf(F, "g%p",(void *)(X)) -#define PRINT_CONSTID(X,Y) fprintf(F, "\"n%pn%p\"", (void*)(X), (void*)(Y)) -#define PRINT_CONSTBLKID(X,Y) fprintf(F, "n%pb%p", (void*)(X), (void*)(Y)) -#define PRINT_LOOPID(X) fprintf(F, "l%p", (void *)(X)) -#define PRINT_ITEMID(X,Y) fprintf(F, "i%pT%d", (void *) (X), (Y)) -#endif - +#define PRINT_LOOPID(X) fprintf(F, "l%d", get_loop_loop_nr(X)) +#define PRINT_ITEMID(X,Y) fprintf(F, "i%ldT%d", get_type_nr(X), (Y)) +#define PRINT_EXTBBID(X) fprintf(F, "x%ld", get_irn_node_nr(X)) extern int dump_dominator_information_flag; -extern const char *dump_file_filter; +extern int opt_dump_pointer_values_to_info; +extern int opt_dump_analysed_type_info; FILE *vcg_open (ir_graph *irg, const char * suffix1, const char *suffix2); +FILE *vcg_open_name (const char *name, const char *suffix); void dump_vcg_header(FILE *F, const char *name, const char *orientation); const char *get_irg_dump_name(ir_graph *irg); void vcg_close (FILE *F); + +const char *get_ent_dump_name(entity *ent); +const char *get_type_name_ex(ir_type *tp, int *bad); +const char *get_mode_name_ex(ir_mode *mode, int *bad); /** * dump the name of a node n to the File F. */ int dump_node_opcode(FILE *F, ir_node *n); +int dump_node_label(FILE *F, ir_node *n); + + +/** Writes vcg representation with title "PRINT_TYPEID(tp)" to file F. */ +int dump_type_node(FILE *F, ir_type *tp); + #endif /* __IRDUMPT_T_H__ */