OSDN Git Service

PR tree-optimization/20216
authorsayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Mar 2005 02:43:49 +0000 (02:43 +0000)
committersayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Mar 2005 02:43:49 +0000 (02:43 +0000)
commit9353326df701c241a5aed1692ea9e0a9a2f588fe
tree64d2edac2cf6316d5116125278fb576fd0d0116e
parent9d3fdb752dbf160e4f0378f0b785a1ae898dad27
PR tree-optimization/20216
* tree-chrec.c (tree_fold_factorial): Delete.
(tree_fold_binomial): Change argument list to take a return type
and change the type of K to unsigned int.  Rewrite to avoid explicit
evaluation of factorials, and (recursively) calling fold to perform
compile-time arithmetic.  Return NULL on (internal) overflow.
(chrec_evaluate): Change type of K to an unsigned int.  Avoid
calling tree_fold_binomial unnecessarily.  Return chrec_dont_know
if any intermediate calculation overflows.
(chrec_apply): Update call to chrec_evaluate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95722 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-chrec.c