Simplify cst_and_fits_in_hwi
While looking at the use of cst_and_fits_in_hwi in tree-ssa-loop-ivopts.c, I had difficulty working out what the function actually tests. The final NUNITS check seems redundant, since it asks about the number of HWIs in the _unextended_ constant. We've already checked that the unextended constant has no more than HOST_BITS_PER_WIDE_INT bits, so the length must be 1. I think this was my fault, sorry. Tested on x86_64-linux-gnu and aarch64-linux-gnu. gcc/ * tree.c (cst_and_fits_in_hwi): Simplify. From-SVN: r235722
This commit is contained in:
parent
697e0b28cc
commit
05ff4c5fa7
|
@ -1,3 +1,7 @@
|
|||
2016-05-02 Richard Sandiford <richard.sandiford@arm.com>
|
||||
|
||||
* tree.c (cst_and_fits_in_hwi): Simplify.
|
||||
|
||||
2016-05-02 Richard Sandiford <richard.sandiford@arm.com>
|
||||
|
||||
* tree.h (wi::to_wide): New function.
|
||||
|
|
|
@ -1675,13 +1675,8 @@ build_low_bits_mask (tree type, unsigned bits)
|
|||
bool
|
||||
cst_and_fits_in_hwi (const_tree x)
|
||||
{
|
||||
if (TREE_CODE (x) != INTEGER_CST)
|
||||
return false;
|
||||
|
||||
if (TYPE_PRECISION (TREE_TYPE (x)) > HOST_BITS_PER_WIDE_INT)
|
||||
return false;
|
||||
|
||||
return TREE_INT_CST_NUNITS (x) == 1;
|
||||
return (TREE_CODE (x) == INTEGER_CST
|
||||
&& TYPE_PRECISION (TREE_TYPE (x)) <= HOST_BITS_PER_WIDE_INT);
|
||||
}
|
||||
|
||||
/* Build a newly constructed VECTOR_CST node of length LEN. */
|
||||
|
|
Loading…
Reference in New Issue