summaryrefslogtreecommitdiff
path: root/gcc/tree-chrec.c
diff options
context:
space:
mode:
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>2005-08-21 10:59:15 +0000
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>2005-08-21 10:59:15 +0000
commitdd2a65b3501c4fd34507eef355c86d6fec272253 (patch)
treed097feb94c994e2b67ffb22d4d80271209456b40 /gcc/tree-chrec.c
parentf046ae741353b7f3fce681f726f246b8ce186983 (diff)
downloadgcc-dd2a65b3501c4fd34507eef355c86d6fec272253.tar.gz
PR tree-optimization/23433
* tree-chrec.c (chrec_apply): Translate INTEGER_CST to a REAL_CST when the type is SCALAR_FLOAT_TYPE_P. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103317 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-chrec.c')
-rw-r--r--gcc/tree-chrec.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-chrec.c b/gcc/tree-chrec.c
index 87cc148c1a7..8dae9167ef6 100644
--- a/gcc/tree-chrec.c
+++ b/gcc/tree-chrec.c
@@ -539,6 +539,9 @@ chrec_apply (unsigned var,
if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, "(chrec_apply \n");
+ if (TREE_CODE (x) == INTEGER_CST && SCALAR_FLOAT_TYPE_P (type))
+ x = build_real_from_int_cst (type, x);
+
if (evolution_function_is_affine_p (chrec))
{
/* "{a, +, b} (x)" -> "a + b*x". */