Dump calling conventions for entities
[libfirm] / ir / ir / irdump_t.h
index 832c2e1..182f191 100644 (file)
@@ -3,7 +3,7 @@
 #ifndef __IRDUMPT_T_H__
 #define __IRDUMPT_T_H__
 
-#include "firm_common_t.h"
+#include "irdump.h"
 
 /* Attributes of nodes */
 #define PRINT_DEFAULT_NODE_ATTR
 #define ENUM_ITEM_NODE_ATTR      "color: green"
 #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_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_LOOPID(X) fprintf(F, "l%p", (void *)(X))
-#define PRINT_ITEMID(X,Y)  fprintf(F, "i%pT%d", (void *) (X), (Y))
-#endif
-
+#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))
+#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 bool opt_dump_pointer_values_to_info;
+extern bool 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(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, type *tp);
+
 #endif /* __IRDUMPT_T_H__ */