#include "entity_t.h"
#include "trouts.h"
#include "irgwalk.h"
-#include "tv.h"
+#include "tv_t.h"
#include "irdom.h"
#include "field_temperature.h"
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;
}
}
- fprintf(F, " state: %s,\n", get_type_state_name(get_type_state(tp)));
- fprintf(F, " size: %2d Bits,\n", get_type_size_bits(tp));
- fprintf(F, " alignment: %2d Bits,\n", get_type_alignment_bits(tp));
+ fprintf(F, " visibility: %s,\n", get_visibility_name(get_type_visibility(tp)));
+ fprintf(F, " state: %s,\n", get_type_state_name(get_type_state(tp)));
+ fprintf(F, " size: %2d Bits,\n", get_type_size_bits(tp));
+ fprintf(F, " alignment: %2d Bits,\n", get_type_alignment_bits(tp));
if (is_atomic_type(tp) || is_Method_type(tp))
- fprintf(F, " mode: %s,\n", get_mode_name(get_type_mode(tp)));
- fprintf(F, " dbg info: %p,\n", (void *)get_type_dbg_info(tp));
+ fprintf(F, " mode: %s,\n", get_mode_name(get_type_mode(tp)));
+ fprintf(F, " dbg info: %p,\n", (void *)get_type_dbg_info(tp));
if (get_trouts_state()) {
fprintf(F, "\n Type outs:\n");
#endif
if (get_trouts_state() != outs_none) {
fprintf(F, " Estimated #Instances: %lf\n", get_type_estimated_n_instances(tp));
- if (is_Class_type(tp)) {
+ if (is_Class_type(tp) && (get_irp_typeinfo_state() != ir_typeinfo_none)) {
fprintf(F, " Estimated #dyn Calls: %lf\n", get_class_estimated_n_dyncalls(tp));
fprintf(F, " Estimated #Upcasts: %lf (#CastOps: %d)\n", get_class_estimated_n_upcasts(tp), get_class_n_upcasts(tp));
fprintf(F, " Estimated #Downcasts: %lf (#CastOps: %d)\n", get_class_estimated_n_downcasts(tp), get_class_n_downcasts(tp));