- get_Block_cfgpred_arr() IS supported, but should not be in the official
[libfirm] / ir / ir / irdump.c
index 1dbd85d..fe9f263 100644 (file)
  */
 #include "config.h"
 
-#ifdef HAVE_STRING_H
 #include <string.h>
-#endif
-#ifdef HAVE_STDLIB_H
 #include <stdlib.h>
-#endif
 #include <stdarg.h>
 
 #include "firm_common_t.h"
@@ -472,7 +468,7 @@ static void print_enum_item_edge(FILE *F, ir_type *E, int item, const char *fmt,
 /*-----------------------------------------------------------------*/
 
 static void dump_whole_node(ir_node *n, void *env);
-static INLINE void dump_loop_nodes_into_graph(FILE *F, ir_graph *irg);
+static inline void dump_loop_nodes_into_graph(FILE *F, ir_graph *irg);
 
 /*-----------------------------------------------------------------*/
 /* Helper functions.                                                */
@@ -732,11 +728,6 @@ int dump_node_opcode(FILE *F, ir_node *n)
 
        /* implementation for default nodes */
        switch (get_irn_opcode(n)) {
-
-       case iro_Const:
-               ir_fprintf(F, "%T", get_Const_tarval(n));
-               break;
-
        case iro_SymConst:
                switch (get_SymConst_kind(n)) {
                case symconst_addr_name:
@@ -778,7 +769,7 @@ int dump_node_opcode(FILE *F, ir_node *n)
                ir_node *pred = get_Proj_pred(n);
 
                if (get_irn_opcode(pred) == iro_Cond
-                       && get_Proj_proj(n) == get_Cond_defaultProj(pred)
+                       && get_Proj_proj(n) == get_Cond_default_proj(pred)
                        && get_irn_mode(get_Cond_selector(pred)) != mode_b)
                        fprintf(F, "defProj");
                else
@@ -827,7 +818,7 @@ int dump_node_opcode(FILE *F, ir_node *n)
                break;
        case iro_Div:
                fprintf(F, "%s", get_irn_opname(n));
-               if (is_Div_remainderless(n))
+               if (get_Div_no_remainder(n))
                        fprintf(F, "RL");
                fprintf(F, "[%s]", get_mode_name_ex(get_Div_resmode(n), &bad));
                break;
@@ -837,6 +828,9 @@ int dump_node_opcode(FILE *F, ir_node *n)
        case iro_DivMod:
                fprintf(F, "%s[%s]", get_irn_opname(n), get_mode_name_ex(get_DivMod_resmode(n), &bad));
                break;
+       case iro_Builtin:
+               fprintf(F, "%s[%s]", get_irn_opname(n), get_builtin_kind_name(get_Builtin_kind(n)));
+               break;
 
        default:
 default_case:
@@ -923,7 +917,6 @@ static const pns_lookup_t start_lut[] = {
        X(P_frame_base),
        X(P_tls),
        X(T_args),
-       X(P_value_arg_base)
 #undef X
 };
 
@@ -1099,6 +1092,10 @@ dump_node_nodeattr(FILE *F, ir_node *n)
                }
                break;
 
+       case iro_Const:
+               ir_fprintf(F, "%T ", get_Const_tarval(n));
+               break;
+
        case iro_Proj:
                pred    = get_Proj_pred(n);
                proj_nr = get_Proj_proj(n);
@@ -1226,7 +1223,7 @@ static void dump_node_vcgattr(FILE *F, ir_node *node, ir_node *local, int bad)
                return;
        }
 
-       mode = get_irn_mode(node);
+       mode = get_irn_mode(n);
        if(mode == mode_M) {
                print_vcg_color(F, ird_color_memory);
                return;
@@ -1304,7 +1301,7 @@ void dump_remv_node_info_callback(void *handle)
 /**
  * Dump the node information of a node n to a file F.
  */
-static INLINE int dump_node_info(FILE *F, ir_node *n)
+static inline int dump_node_info(FILE *F, ir_node *n)
 {
        int bad = 0;
        const ir_op_ops *ops = get_op_ops(get_irn_op(n));
@@ -1322,7 +1319,7 @@ static INLINE int dump_node_info(FILE *F, ir_node *n)
        return bad;
 }
 
-static INLINE int is_constlike_node(const ir_node *node)
+static inline int is_constlike_node(const ir_node *node)
 {
        const ir_op *op = get_irn_op(node);
        return is_op_constlike(op);
@@ -2205,13 +2202,13 @@ dump_out_edge(ir_node *n, void *env) {
        }
 }
 
-static INLINE void
+static inline void
 dump_loop_label(FILE *F, ir_loop *loop) {
        fprintf(F, "loop %d, %d sons, %d nodes",
                get_loop_depth(loop), get_loop_n_sons(loop), get_loop_n_nodes(loop));
 }
 
-static INLINE void dump_loop_info(FILE *F, ir_loop *loop) {
+static inline void dump_loop_info(FILE *F, ir_loop *loop) {
        fprintf(F, " info1: \"");
        fprintf(F, " loop nr: %d", get_loop_loop_nr(loop));
 #ifdef DEBUG_libfirm   /* GL @@@ debug analyses */
@@ -2220,7 +2217,7 @@ static INLINE void dump_loop_info(FILE *F, ir_loop *loop) {
        fprintf(F, "\"");
 }
 
-static INLINE void
+static inline void
 dump_loop_node(FILE *F, ir_loop *loop) {
        fprintf(F, "node: {title: \"");
        PRINT_LOOPID(loop);
@@ -2231,7 +2228,7 @@ dump_loop_node(FILE *F, ir_loop *loop) {
        fprintf(F, "}\n");
 }
 
-static INLINE void
+static inline void
 dump_loop_node_edge(FILE *F, ir_loop *loop, int i) {
        assert(loop);
        fprintf(F, "edge: {sourcename: \"");
@@ -2242,7 +2239,7 @@ dump_loop_node_edge(FILE *F, ir_loop *loop, int i) {
        fprintf(F, "}\n");
 }
 
-static INLINE void
+static inline void
 dump_loop_son_edge(FILE *F, ir_loop *loop, int i) {
        assert(loop);
        fprintf(F, "edge: {sourcename: \"");
@@ -2271,7 +2268,7 @@ void dump_loops(FILE *F, ir_loop *loop) {
        }
 }
 
-static INLINE
+static inline
 void dump_loop_nodes_into_graph(FILE *F, ir_graph *irg) {
        ir_graph *rem = current_ir_graph;
        current_ir_graph = irg;