tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use a shift instead of a division to divide by BITS_PER_UNIT.

2010-12-08  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use a shift
	instead of a division to divide by BITS_PER_UNIT.

From-SVN: r167592
This commit is contained in:
Richard Guenther 2010-12-08 16:15:06 +00:00 committed by Richard Biener
parent fdd7cdbfee
commit afca0898bc
2 changed files with 9 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2010-12-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use a shift
instead of a division to divide by BITS_PER_UNIT.
2010-12-08 Richard Guenther <rguenther@suse.de>
* gimplify.c (gimple_tree_eq): Assert hashes are equal only

View File

@ -644,10 +644,11 @@ copy_reference_ops_from_ref (tree ref, VEC(vn_reference_op_s, heap) **result)
{
double_int off
= double_int_add (tree_to_double_int (this_offset),
double_int_sdiv
double_int_rshift
(tree_to_double_int (bit_offset),
uhwi_to_double_int (BITS_PER_UNIT),
TRUNC_DIV_EXPR));
BITS_PER_UNIT == 8
? 3 : exact_log2 (BITS_PER_UNIT),
HOST_BITS_PER_DOUBLE_INT, true));
if (double_int_fits_in_shwi_p (off))
temp.off = off.low;
}