GCC Middle and Back End API Reference
|
Data Fields | |
struct loop * | current_loop |
struct pointer_map_t * | niters |
unsigned | regs_used |
unsigned | version_info_size |
struct version_info * | version_info |
hash_table< iv_inv_expr_hasher > | inv_expr_tab |
int | inv_expr_id |
bitmap | relevant |
vec< iv_use_p > | iv_uses |
vec< iv_cand_p > | iv_candidates |
bitmap | important_candidates |
unsigned | max_inv_id |
bool | consider_all_candidates |
bool | speed |
bool | body_includes_call |
bool | loop_single_exit_p |
bool ivopts_data::body_includes_call |
Whether the loop body includes any function calls.
Referenced by rewrite_use_compare().
bool ivopts_data::consider_all_candidates |
Whether to consider just related and important candidates when replacing a use.
Referenced by iv_ca_add_use().
struct loop* ivopts_data::current_loop |
The currently optimized loop.
Referenced by determine_base_object(), get_expr_id(), get_iv(), rewrite_use_compare(), rewrite_use_nonlinear_expr(), and strip_wrap_conserving_type_conversions().
bitmap ivopts_data::important_candidates |
A bitmap of important candidates.
int ivopts_data::inv_expr_id |
Loop invariant expression id.
hash_table<iv_inv_expr_hasher> ivopts_data::inv_expr_tab |
The hashtable of loop invariant expressions created by ivopt.
bool ivopts_data::loop_single_exit_p |
Whether the loop body can only be exited via single exit.
Referenced by determine_use_iv_cost_address(), and rewrite_use_compare().
unsigned ivopts_data::max_inv_id |
The maximum invariant id.
struct pointer_map_t* ivopts_data::niters |
Numbers of iterations for all exits of the current loop.
Referenced by adjust_iv_update_pos(), idx_contains_abnormal_ssa_name_p(), and rewrite_use_compare().
unsigned ivopts_data::regs_used |
Number of registers used in it.
bitmap ivopts_data::relevant |
The bitmap of indices in version_info whose value was changed.
bool ivopts_data::speed |
Are we optimizing for speed?
Referenced by determine_use_iv_cost(), get_shiftadd_cost(), and rewrite_use_compare().
struct version_info* ivopts_data::version_info |
The array of information for the ssa names.
unsigned ivopts_data::version_info_size |
The size of version_info array allocated.