On 06/05/2012 10:34 AM, Sandra Loosemore wrote:
2012-06-05 Sandra Loosemore<san...@codesourcery.com>
gcc/
* tree-ssa-loop-ivopts.c (comp_cost): Make complexity field signed.
Update comments to indicate this is for addressing mode complexity.
(new_cost): Make signedness of parameters match comp_cost fields.
(compare_costs): Prefer higher complexity, not lower, per documentation
of TARGET_ADDRESS_COST.
(multiplier_allowed_in_address_p): Use (+ (* reg1 ratio) reg2) to
probe for valid ratios, rather than just (* reg1 ratio).
(get_address_cost): Rewrite to eliminate precomputation and caching.
Use target's address cost for autoinc forms if possible. Only attempt
sym_present -> var_present cost conversion if the sym_present form
is not legitimate; amortize setup cost over loop iterations.
Adjust complexity computation.
(get_computation_cost_at): Adjust call to get_address_cost. Do not
mess with complexity for non-address expressions.
(determine_use_iv_cost_address): Initialize can_autoinc.
(autoinc_possible_for_pair): Likewise.
On 06/13/2012 01:52 PM, Sandra Loosemore wrote:
Might somebody be willing to review the patch as posted?
Ping? Original post with patch is here:
http://gcc.gnu.org/ml/gcc-patches/2012-06/msg00319.html
-Sandra