-/* 0 - don't do this optimization
- 1 - lets see, if there is a better graph */
-int optimized = 1; /* Turn off all optimizations. */
-
-int opt_cse = 1; /* Hash the nodes. */
-int opt_global_cse = 0; /* Don't use block predecessor for comparison.
- Default must be zero as code placement must
- be run right after a local optimize walk with
- opt_global_cse on. */
-int opt_constant_folding = 1; /* Evaluate operations. */
-int opt_unreachable_code = 1; /* Bad node propagation. */
-int opt_control_flow_straightening = 1; /* */
-int opt_control_flow_weak_simplification = 1; /* */
-int opt_control_flow_strong_simplification = 1; /* */
-int opt_critical_edges = 1;
-int opt_dead_node_elimination = 1; /* Reclaim memory. */
-int opt_reassociation = 1; /* Reassociate nodes. */
-int opt_inline = 1; /* Do inlining transformation. */
-int opt_dyn_meth_dispatch = 1; /* Remove dynamic method dispatch. */
-
-int opt_normalize = 1; /* Transformations that normalize the firm representation
- as removing Ids and Tuples, useless Phis, SymConst(id) ->
- Const(entity) ... */
-
-/* set the flags with set_flagname, get the flag with get_flagname */
-INLINE void
-set_opt_cse (int value)
-{
- opt_cse = value;
-}
+#define FLAG(name, value, def) (irf_##name & def) |
+#define E_FLAG(name, value, def) FLAG(name, value, def)
+#define I_FLAG(name, value, def) FLAG(name, value, def)