tree-scalar-evolution.c (set_nb_iterations_in_loop): Only check for TREE_OVERFLOW on INTEGER_CST trees.
* tree-scalar-evolution.c (set_nb_iterations_in_loop): Only check for TREE_OVERFLOW on INTEGER_CST trees. * tree-chrec.c (chrec_convert): Only clear TREE_OVERFLOW on CONSTANT_CLASS_P tree nodes. From-SVN: r99765
This commit is contained in:
parent
21e4385058
commit
94a3e63aca
@ -1,3 +1,10 @@
|
||||
2005-05-15 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* tree-scalar-evolution.c (set_nb_iterations_in_loop): Only
|
||||
check for TREE_OVERFLOW on INTEGER_CST trees.
|
||||
* tree-chrec.c (chrec_convert): Only clear TREE_OVERFLOW on
|
||||
CONSTANT_CLASS_P tree nodes.
|
||||
|
||||
2005-05-15 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR target/21551
|
||||
|
@ -1062,9 +1062,11 @@ chrec_convert (tree type,
|
||||
tree res = fold_convert (type, chrec);
|
||||
|
||||
/* Don't propagate overflows. */
|
||||
TREE_OVERFLOW (res) = 0;
|
||||
if (CONSTANT_CLASS_P (res))
|
||||
TREE_CONSTANT_OVERFLOW (res) = 0;
|
||||
{
|
||||
TREE_CONSTANT_OVERFLOW (res) = 0;
|
||||
TREE_OVERFLOW (res) = 0;
|
||||
}
|
||||
|
||||
/* But reject constants that don't fit in their type after conversion.
|
||||
This can happen if TYPE_MIN_VALUE or TYPE_MAX_VALUE are not the
|
||||
|
@ -922,8 +922,9 @@ set_nb_iterations_in_loop (struct loop *loop,
|
||||
count of the loop in order to be compatible with the other
|
||||
nb_iter computations in loop-iv. This also allows the
|
||||
representation of nb_iters that are equal to MAX_INT. */
|
||||
if ((TREE_CODE (res) == INTEGER_CST && TREE_INT_CST_LOW (res) == 0)
|
||||
|| TREE_OVERFLOW (res))
|
||||
if (TREE_CODE (res) == INTEGER_CST
|
||||
&& (TREE_INT_CST_LOW (res) == 0
|
||||
|| TREE_OVERFLOW (res)))
|
||||
res = chrec_dont_know;
|
||||
|
||||
if (dump_file && (dump_flags & TDF_DETAILS))
|
||||
|
Loading…
x
Reference in New Issue
Block a user