* @brief Flags to control optimizations.
* @author Christian Schaefer, Goetz Lindenmaier, Michael Beck
* @version $Id$
- * @summary
+ * @brief
* Flags to customize the behavior of libfirm.
*
* There are the following groups of flags:
* 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);
*/
void set_opt_normalize(int value);
+/**
+ * Enable/Disable ConvB() nodes with a "semantic behavior", i.e. a real
+ * operation that must be executed.
+ */
+void set_opt_allow_conv_b(int value);
+
/** Enable/Disable precise exception context.
*
* If enabled, all exceptions form a barrier for values, as in the