Initial version of the memory disambiguator added
[libfirm] / ir / ana / analyze_irg_args.h
index dda9e6f..e4b6d50 100644 (file)
@@ -25,7 +25,7 @@
  * If the pos'th parameter is NOT of a pointer type, ptr_access_none
  * is returned;
  */
-ptr_access_kind get_method_param_access(entity *ent, int pos);
+ptr_access_kind get_method_param_access(ir_entity *ent, int pos);
 
 /**
  * Analyze how pointer arguments of a given
@@ -35,4 +35,20 @@ ptr_access_kind get_method_param_access(entity *ent, int pos);
  */
 void analyze_irg_args(ir_graph *irg);
 
+/**
+ * Returns for a method the 'weight' that every parameter
+ * has on optimization possibility. Higher values allows
+ * higher optimization with procedure cloning.
+ *
+ * The values are calculation on demand only.
+ */
+float get_method_param_weight(ir_entity *ent, int pos);
+
+/**
+ * Analyze the parameters of a given ir graph.
+ *
+ * @param irg The ir graph to analyze.
+ */
+void analyze_irg_args_weight(ir_graph *irg);
+
 #endif /*_ANALYZE_IRG_ARGS_H_ */