added some needed prototypes
[libfirm] / ir / ana / field_temperature.h
index 36570ef..6e0a7ea 100644 (file)
@@ -41,6 +41,9 @@ int     get_Sel_n_accessed_entities(ir_node *sel);
 entity *get_Sel_accessed_entity    (ir_node *sel, int pos);
 */
 
+int get_irn_loop_call_depth(ir_node *n);
+int get_irn_loop_depth(ir_node *n);
+int get_irn_recursion_depth(ir_node *n);
 
 /** Get the weighted interprocedural loop depth of the node.
     The depth is estimated by a heuristic. The heuristic consideres
@@ -50,7 +53,7 @@ int get_weighted_loop_depth(ir_node *n);
 /** Heuristic merging recursion and loop depth. */
 double get_irn_final_cost(ir_node *n);
 
-/** Get accumulated execution frequencies.
+/** Get accumulated(really?) execution frequencies.
  *  A heuristic weights the recursions. */
 double get_type_estimated_n_instances(type *clss);
 double get_type_estimated_mem_consumption_bytes(type *tp);
@@ -60,7 +63,8 @@ double get_type_estimated_mem_consumption_bytes(type *tp);
  *  Further this ignores padding for alignment, especially of small fields. */
 int    get_type_estimated_size_bytes(type *tp);
 /** Estimates the number of fields of a single Object.
- *  The heuristic mainly affects array sizes. */
+ *  The heuristic mainly affects array sizes.
+ *  @@@ Misses inherited fields! */
 int    get_type_estimated_n_fields(type *tp);
 double get_type_estimated_n_casts(type *clss);
 
@@ -85,6 +89,16 @@ double get_entity_estimated_n_calls(entity *ent);
  *  to other static fields that overwrite/are overwritten. */
 double get_entity_estimated_n_dyncalls(entity *ent);
 
+/* ------------------------------------------------------------------------- */
+/* Accumulate information in the type hierarchy.                             */
+/* ------------------------------------------------------------------------- */
+
+typedef enum {
+  temperature_none,
+  temperature_consistent,
+  temperature_inconsistent
+} irp_temperature_state;
+
 /** An auxiliary/temporary function */
 int is_jack_rts_class(type *t);
 int is_jack_rts_entity(entity *e);