if (is_Class_type(get_entity_owner(ent))) {
if (get_entity_n_overwrites(ent) > 0) {
- fprintf(F, "%s overwrites:\n", prefix);
- for (i = 0; i < get_entity_n_overwrites(ent); ++i) {
- entity *ov = get_entity_overwrites(ent, i);
- fprintf(F, "%s %d: %s of class %s\n", prefix, i, get_entity_name(ov),
- get_type_name(get_entity_owner(ov)));
- }
+ fprintf(F, "%s overwrites:\n", prefix);
+ for (i = 0; i < get_entity_n_overwrites(ent); ++i) {
+ entity *ov = get_entity_overwrites(ent, i);
+ fprintf(F, "%s %d: %s of class %s\n", prefix, i, get_entity_name(ov),
+ get_type_name(get_entity_owner(ov)));
+ }
} else {
- fprintf(F, "%s Does not overwrite other entities. \n", prefix);
+ fprintf(F, "%s Does not overwrite other entities. \n", prefix);
}
if (get_entity_n_overwrittenby(ent) > 0) {
- fprintf(F, "%s overwritten by:\n", prefix);
- for (i = 0; i < get_entity_n_overwrittenby(ent); ++i) {
- entity *ov = get_entity_overwrittenby(ent, i);
- fprintf(F, "%s %d: %s of class %s\n", prefix, i, get_entity_name(ov),
- get_type_name(get_entity_owner(ov)));
+ fprintf(F, "%s overwritten by:\n", prefix);
+ for (i = 0; i < get_entity_n_overwrittenby(ent); ++i) {
+ entity *ov = get_entity_overwrittenby(ent, i);
+ fprintf(F, "%s %d: %s of class %s\n", prefix, i, get_entity_name(ov),
+ get_type_name(get_entity_owner(ov)));
}
} else {
- fprintf(F, "%s Is not overwritten by other entities. \n", prefix);
+ fprintf(F, "%s Is not overwritten by other entities. \n", prefix);
+ }
+
+ if (get_irp_inh_transitive_closure_state() != inh_transitive_closure_none) {
+ entity *ov;
+ fprintf(F, "%s transitive overwrites:\n", prefix);
+ for (ov = get_entity_trans_overwrites_first(ent);
+ ov;
+ ov = get_entity_trans_overwrites_next(ent)) {
+ fprintf(F, "%s : %s of class %s\n", prefix, get_entity_name(ov),
+ get_type_name(get_entity_owner(ov)));
+ }
+ fprintf(F, "%s transitive overwritten by:\n", prefix);
+ for (ov = get_entity_trans_overwrittenby_first(ent);
+ ov;
+ ov = get_entity_trans_overwrittenby_next(ent)) {
+ fprintf(F, "%s : %s of class %s\n", prefix, get_entity_name(ov),
+ get_type_name(get_entity_owner(ov)));
+ }
}
}
}
if (get_trouts_state()) {
- fprintf(F, "%sEntity outs:\n", prefix);
+ fprintf(F, "%s Entity outs:\n", prefix);
dump_node_list(F, (firm_kind *)ent, prefix, (int(*)(firm_kind *))get_entity_n_accesses,
(ir_node *(*)(firm_kind *, int))get_entity_access, "Accesses");
dump_node_list(F, (firm_kind *)ent, prefix, (int(*)(firm_kind *))get_entity_n_references,
fprintf(F, "\n %s", get_type_name(stp));
}
+ if (get_irp_inh_transitive_closure_state() != inh_transitive_closure_none) {
+ type *stp;
+ fprintf(F, "\n transitive supertypes: ");
+ for (stp = get_class_trans_supertype_first(tp);
+ stp;
+ stp = get_class_trans_supertype_next(tp)) {
+ fprintf(F, "\n %s", get_type_name(stp));
+ }
+ fprintf(F, "\n transitive subtypes: ");
+ for (stp = get_class_trans_subtype_first(tp);
+ stp;
+ stp = get_class_trans_subtype_next(tp)) {
+ fprintf(F, "\n %s", get_type_name(stp));
+ }
+ }
+
fprintf(F, "\n peculiarity: %s\n", get_peculiarity_string(get_class_peculiarity(tp)));
+
}
break;
int j, n_overwrittenby = get_entity_n_overwrittenby(mem);
myset = get_entity_map(mem, d_down);
- for (j = 0; j > n_overwrittenby; ++j) {
+ for (j = 0; j < n_overwrittenby; ++j) {
entity *ov = get_entity_overwrittenby(mem, j);
subset = get_entity_map(ov, d_down);
- pset_insert_pset_ptr(myset, subset);
pset_insert_ptr(myset, ov);
+ pset_insert_pset_ptr(myset, subset);
}
}
int j, n_overwrites = get_entity_n_overwrites(mem);
myset = get_entity_map(mem, d_up);
- for (j = 0; j > n_overwrites; ++j) {
+ for (j = 0; j < n_overwrites; ++j) {
entity *ov = get_entity_overwrites(mem, j);
subset = get_entity_map(ov, d_up);
pset_insert_pset_ptr(myset, subset);
assert(get_type_visited(tp) < get_master_type_visited()-1);
for (j = 0; j < n_subtypes && !has_unmarked_subtype; ++j) {
- type *stp = get_class_subtype(tp, j);
- if (type_not_visited(stp)) has_unmarked_subtype = true;
+ type *stp = get_class_subtype(tp, j);
+ if (type_not_visited(stp)) has_unmarked_subtype = true;
}
/* This is a good starting point. */
if (!has_unmarked_subtype)
- compute_down_closure(tp);
+ compute_down_closure(tp);
}
}
/* This is a good starting point. */
if (!has_unmarked_supertype)
- compute_up_closure(tp);
+ compute_up_closure(tp);
}
}