#include "irflag.h" /* optimization flags */
#include "irgopt.h" /* optimize ir */
#include "ldstopt.h" /* optimize Load/Store */
-//#include "cfopt.h" /* optimize control flow */
+#include "cfopt.h" /* optimize control flow */
#include "tailrec.h" /* optimize tail-recursion calls */
#include "ircgopt.h" /* Optimizations based on interprocedural graph */
+#include "strength_red.h" /* Strength reduction */
+#include "irarch.h" /* architecture dependant optimizations */
#include "irouts.h" /* Graph reversal / out edges. */
#include "irdom.h" /* Dominator analysis */
default_initialize_local_variable_func_t *initialize_local_func;
/**
- * The compare function is used to identify equal types. If not set
- * it is initialized with the function compare_strict().
+ * The interface functions for the type identification module.
+ * If not set, the default implementation with compare_strict() and
+ * hash_name() will be used.
*/
- compare_types_func_t *compare_types_func;
+ type_identify_if_t *ti_if;
+
/**
- * The hash function is used to identify equal types. It calculates a hash
- * value of a type. Note, that the hash value for equal types must be identical.
- * If not set it is initialized with the function hash_name().
+ * The interface for the ident module.
+ * If not set, the default libFirm ident module (using hash sets).
*/
- hash_types_func_t *hash_types_func;
-
+ ident_if_t *id_if;
};