libFirm
|
Flags to customize the behavior of libfirm. More...
Typedefs | |
typedef unsigned | optimization_state_t |
A container type to load/restore all optimizations. More... | |
Functions | |
void | set_optimize (int value) |
This function enables/disables optimizations globally. More... | |
int | get_optimize (void) |
Returns global optimizations flag. More... | |
void | set_opt_constant_folding (int value) |
Enables/Disables constant folding optimization. More... | |
int | get_opt_constant_folding (void) |
returns 0 if constant_folding is disabled, !=0 otherwise More... | |
void | set_opt_algebraic_simplification (int value) |
Enables/Disables algebraic simplifications. More... | |
int | get_opt_algebraic_simplification (void) |
Returns algebraic simplification setting. More... | |
void | set_opt_cse (int value) |
Enables/Disables common subexpression elimination. More... | |
int | get_opt_cse (void) |
Returns constant folding optimization setting. More... | |
void | set_opt_global_cse (int value) |
Enables/Disables global constant subexpression elimination. More... | |
int | get_opt_global_cse (void) |
Returns global constant subexpression elimination setting. More... | |
void | set_opt_global_null_ptr_elimination (int value) |
Enable/Disable Global Null Pointer Test Elimination. More... | |
int | get_opt_global_null_ptr_elimination (void) |
Returns global null pointer test elimination setting. More... | |
void | set_opt_closed_world (int value) |
Enable/Disable closed world assumption. More... | |
int | get_opt_closed_world (void) |
Returns closed world assumption setting. More... | |
void | save_optimization_state (optimization_state_t *state) |
Save the current optimization state. More... | |
void | restore_optimization_state (const optimization_state_t *state) |
Restore the current optimization state. More... | |
void | all_optimizations_off (void) |
Switches ALL optimizations off. More... | |
Flags to customize the behavior of libfirm.
There are the following groups of flags:
typedef unsigned optimization_state_t |
void all_optimizations_off | ( | void | ) |
Switches ALL optimizations off.
int get_opt_algebraic_simplification | ( | void | ) |
Returns algebraic simplification setting.
int get_opt_closed_world | ( | void | ) |
Returns closed world assumption setting.
int get_opt_constant_folding | ( | void | ) |
returns 0 if constant_folding is disabled, !=0 otherwise
int get_opt_cse | ( | void | ) |
Returns constant folding optimization setting.
int get_opt_global_cse | ( | void | ) |
Returns global constant subexpression elimination setting.
int get_opt_global_null_ptr_elimination | ( | void | ) |
Returns global null pointer test elimination setting.
int get_optimize | ( | void | ) |
Returns global optimizations flag.
void restore_optimization_state | ( | const optimization_state_t * | state | ) |
Restore the current optimization state.
void save_optimization_state | ( | optimization_state_t * | state | ) |
Save the current optimization state.
void set_opt_algebraic_simplification | ( | int | value | ) |
Enables/Disables algebraic simplifications.
If opt_algebraic_simplification == 1 perform
void set_opt_closed_world | ( | int | value | ) |
Enable/Disable closed world assumption.
If enabled, optimizations expect to know the "whole world", i.e. no external types or callers exist. This enables some powerful optimizations.
void set_opt_constant_folding | ( | int | value | ) |
Enables/Disables constant folding optimization.
If opt_constant_folding == 1 perform constant expression evaluation (2 + 5 ==> 7, 3 < 2 ==> false) Default: opt_constant_folding == 1.
void set_opt_cse | ( | int | value | ) |
Enables/Disables common subexpression elimination.
If opt_cse == 1 perform common subexpression elimination. Default: opt_cse == 1.
void set_opt_global_cse | ( | int | value | ) |
Enables/Disables global constant subexpression elimination.
If opt_global_cse == 1 and opt_cse == 1 perform intra procedure constant subexpression elimination for floating nodes. Intra procedure cse gets the graph into state "floating". It is necessary to run pre/code motion to get the graph back into state "op_pin_state_pinned". right after a call to local_optimize with global cse turned on. Default: opt_global_cse == 0.
void set_opt_global_null_ptr_elimination | ( | 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_optimize | ( | int | value | ) |
This function enables/disables optimizations globally.
If optimize == 0 no optimizations are performed at all. Default: optimize == 1.