On Wed, Jul 4, 2012 at 6:35 PM, Sandra Loosemore <san...@codesourcery.com> wrote: > 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
Can you update the patch and numbers based on what Bill did for straight-line strength reduction which re-uses this analysis/caching part? Thanks, Richard. > -Sandra >