Index: gcc/tree-ssa-loop-ivopts.c =================================================================== --- gcc/tree-ssa-loop-ivopts.c (revision 173703) +++ gcc/tree-ssa-loop-ivopts.c (working copy) @@ -3683,7 +3683,7 @@ mult = op0; if (mult != NULL_TREE - && TREE_CODE (TREE_OPERAND (mult, 1)) == INTEGER_CST + && cst_and_fits_in_hwi (TREE_OPERAND (mult, 1)) && get_shiftadd_cost (expr, mode, cost0, cost1, mult, speed, &sa_cost)) return sa_cost;