- if (opt_dump_pointer_values_to_info)
- fprintf (F, "addr: %p \n", (void *)n);
- fprintf (F, "mode: %s\n", get_mode_name(get_irn_mode(n)));
- fprintf (F, "visited: %ld \n", get_irn_visited(n));
- irg = get_irn_irg(n);
- if (irg != get_const_code_irg())
- fprintf (F, "irg: %s\n", get_ent_dump_name(get_irg_entity(irg)));
-
- fprintf(F, "arity: %d", get_irn_arity(n));
- if ((get_irn_op(n) == op_Block) ||
- (get_irn_op(n) == op_Phi) ||
- ((get_irn_op(n) == op_Filter) && interprocedural_view)) {
- fprintf(F, " backedges:");
- comma = ' ';
- for (i = 0; i < get_irn_arity(n); i++)
- if (is_backedge(n, i)) { fprintf(F, "%c %d", comma, i); comma = ','; }
- }
- fprintf(F, "\n");
-
- /* Loop node Someone else please tell me what's wrong ...
- if (get_irn_loop(n)) {
- ir_loop *loop = get_irn_loop(n);
- assert(loop);
- fprintf(F, " in loop %d with depth %d\n",
- get_loop_loop_nr(loop), get_loop_depth(loop));
- }
- */
-
- /* Source types */
- switch (get_irn_opcode(n)) {
- case iro_Start: {
- type *tp = get_entity_type(get_irg_entity(get_irn_irg(n)));
- fprintf(F, "start of method of type %s \n", get_type_name_ex(tp, &bad));
- for (i = 0; i < get_method_n_params(tp); ++i)
- fprintf(F, " param %d type: %s \n", i, get_type_name_ex(get_method_param_type(tp, i), &bad));
- } break;
- case iro_Alloc: {
- fprintf(F, "allocating entity of type %s \n", get_type_name_ex(get_Alloc_type(n), &bad));
- } break;
- case iro_Free: {
- fprintf(F, "freeing entity of type %s \n", get_type_name_ex(get_Free_type(n), &bad));
- } break;
- case iro_Sel: {
- entity *ent = get_Sel_entity(n);
-
- if (ent) {
- fprintf(F, "Selecting entity of type %s\n", get_type_name_ex(get_entity_type(ent), &bad));
- fprintf(F, " from entity of type %s\n", get_type_name_ex(get_entity_owner(ent), &bad));
- }
- else {
- fprintf(F, "<NULL entity>\n");
- bad = 1;
- }
- } break;
- case iro_Call: {
- type *tp = get_Call_type(n);
- fprintf(F, "calling method of type %s \n", get_type_name_ex(tp, &bad));
- for (i = 0; i < get_method_n_params(tp); ++i)
- fprintf(F, " param %d type: %s \n", i, get_type_name_ex(get_method_param_type(tp, i), &bad));
- for (i = 0; i < get_method_n_ress(tp); ++i)
- fprintf(F, " resul %d type: %s \n", i, get_type_name_ex(get_method_res_type(tp, i), &bad));
- if (0 && Call_has_callees(n)) {
- fprintf(F, "possible callees: \n");
- for (i = 0; i < get_Call_n_callees(n); i++) {
- if (!get_Call_callee(n, i)) {
- fprintf(F, " %d external method\n", i);
- } else {
- fprintf(F, " %d: %s\n", i, get_ent_dump_name(get_Call_callee(n, i)));
- }
- }
- }
- } break;
- case iro_CallBegin: {
- ir_node *call = get_CallBegin_call(n);
- if (Call_has_callees(call)) {
- fprintf(F, "possible callees: \n");
- for (i = 0; i < get_Call_n_callees(call); i++) {
- if (!get_Call_callee(call, i)) {
- fprintf(F, " %d external method\n", i);
- } else {
- fprintf(F, " %d: %s\n", i, get_ent_dump_name(get_Call_callee(call, i)));
- }
- }
- }
- } break;
- case iro_Return: {
- if (!interprocedural_view) {
- type *tp = get_entity_type(get_irg_entity(get_irn_irg(n)));
- fprintf(F, "return in method of type %s \n", get_type_name_ex(tp, &bad));
- for (i = 0; i < get_method_n_ress(tp); ++i)
- fprintf(F, " res %d type: %s \n", i, get_type_name_ex(get_method_res_type(tp, i), &bad));
- }
- } break;
- case iro_Const: {
- type *tp = get_Const_type(n);
- assert(tp != none_type);
- fprintf(F, "Const of type %s \n", get_type_name_ex(get_Const_type(n), &bad));
- } break;
- case iro_SymConst: {
- switch(get_SymConst_kind(n)) {
- case symconst_addr_name:
- fprintf(F, "kind addr_name\n");
- break;
- case symconst_addr_ent:
- fprintf(F, "kind addr_ent\n");
- break;
- case symconst_type_tag:
- fprintf(F, "kind type_tag\n");
- break;
- case symconst_size:
- fprintf(F, "kind size\n");
- break;
- }
- } break;
- case iro_Filter: {
- int i;
- if (interprocedural_view) {
- fprintf(F, "intra predecessor nodes:\n");
- for (i = 0; i < get_irn_intra_arity(n); i++) {
- ir_node *pred = get_irn_intra_n(n, i);
- fprintf(F, " %s%s %ld\n", get_irn_opname(pred), get_irn_modename(pred), get_irn_node_nr(pred));
- }
- } else {
- fprintf(F, "inter predecessor nodes:\n");
- for (i = 0; i < get_irn_inter_arity(n); i++) {
- ir_node *pred = get_irn_inter_n(n, i);
- fprintf(F, " %s%s %ld \tin graph %s\n", get_irn_opname(pred), get_irn_modename(pred),
- get_irn_node_nr(pred), get_ent_dump_name(get_irg_entity(get_irn_irg(pred))));
- }
- }
- } break;
- default: ;
- }
-
- if (get_irg_typeinfo_state(get_irn_irg(n)) == irg_typeinfo_consistent ||
- get_irg_typeinfo_state(get_irn_irg(n)) == irg_typeinfo_inconsistent )
- if (get_irn_type(n) != none_type)
- fprintf (F, "\nAnalysed type: %s", get_type_name_ex(get_irn_type(n), &bad));
-
- fprintf (F, "\"");
-