* If opt_algebraic_simplification == 1 perform
* - algebraic simplification (a * 0 ==> 0, a or a ==> a)
* - simplification of tests ( !(a < b) ==> (a >= b))
- * Default: opt_constant_folding == 1.
+ * Default: opt_algebraic_simplification == 1.
*/
void set_opt_algebraic_simplification(int value);
*/
void set_opt_global_cse(int value);
+/** Enables/Disables usage of combo algorithm.
+ *
+ * If opt_combo == 1 perform combo optimization
+ * instead of combinations of optimiza_graph_df()/
+ * optimize_graph_cf()
+ * Default: opt_combo == 1.
+ */
+void set_opt_combo(int value);
+
/** Enables/Disables strength reduction.
*
* If opt_strength_red == 1 perform strength reduction.
* Enabling this flag is meaningless if ldst_non_null_exceptions is
* enabled.
*
- * This flags should be set for Java style languages.
+ * This flag should be set for Java style languages.
*/
void set_opt_sel_based_null_check_elim(int value);
+/**
+ * Enable/Disable Global Null Pointer Test Elimination.
+ *
+ * In languages where it is illegal to dereference NULL pointer, doing
+ * so makes the pointer "valid non-null", else the program will stop
+ * anyway by a fault.
+ *
+ * This flag should be set for C style languages.
+ */
+void set_opt_global_null_ptr_elimination(int value);
+
/**
* Enable/Disable Automatic construction of Sync nodes during
* Firm construction.
* If this flags is set, sequential non-volatile Loads are automatically
* rearranged so that they can be executed in parallel by creating Sync nodes.
*
- * This flags should be set for Java style languages.
+ * This flag should be set for Java style languages.
*/
void set_opt_auto_create_sync(int value);