*/
#ifdef HAVE_CONFIG_H
-# include <config.h>
+# include "config.h"
#endif
#include "firm_common.h"
ENABLE(OPT_OPTIMIZED) |
ENABLE(OPT_CSE) |
DISABLE(OPT_GLOBAL_CSE) |
+ ENABLE(OPT_LOOP_UNROLLING) |
ENABLE(OPT_STRENGTH_RED) |
ENABLE(OPT_CONSTANT_FOLDING) |
ENABLE(OPT_REDUNDANT_LOADSTORE) |
ENABLE(OPT_NORMALIZE) |
ENABLE(OPT_TAIL_RECURSION) |
ENABLE(OPT_PRECISE_EXC_CONTEXT) |
+ DISABLE(OPT_FRAGILE_OPS) |
0;
optimization_state_t libFIRM_verb =
DISABLE(OPT_OPTIMIZED) |
DISABLE(OPT_CSE) |
DISABLE(OPT_GLOBAL_CSE) |
+ DISABLE(OPT_LOOP_UNROLLING) |
DISABLE(OPT_STRENGTH_RED) |
DISABLE(OPT_CONSTANT_FOLDING) |
DISABLE(OPT_REDUNDANT_LOADSTORE) |
DISABLE(OPT_NORMALIZE) |
DISABLE(OPT_TAIL_RECURSION) |
DISABLE(OPT_PRECISE_EXC_CONTEXT) |
+ DISABLE(OPT_FRAGILE_OPS) |
0;
/** The Firm verbosity level */
libFIRM_opt &= ~OPT_CSE;
}
+int (get_opt_cse)(void) {
+ return _get_opt_cse();
+}
+
void set_opt_global_cse(int value)
{
if (value)
libFIRM_opt &= ~OPT_GLOBAL_CSE;
}
+void set_opt_loop_unrolling (int value)
+{
+ if (value)
+ libFIRM_opt |= OPT_LOOP_UNROLLING;
+ else
+ libFIRM_opt &= ~OPT_LOOP_UNROLLING;
+}
+
+void set_opt_loop_unrolling_verbose (int value)
+{
+ if (value)
+ libFIRM_verb |= OPT_LOOP_UNROLLING;
+ else
+ libFIRM_verb &= ~OPT_LOOP_UNROLLING;
+}
+
void set_opt_strength_red (int value)
{
if (value)
#endif
}
+void set_opt_fragile_ops(int value)
+{
+ if (value)
+ libFIRM_opt |= OPT_FRAGILE_OPS;
+ else
+ libFIRM_opt &= ~OPT_FRAGILE_OPS;
+}
+
/* Save the current optimization state. */
void save_optimization_state(optimization_state_t *state)
{