Hi,

In patch "Don't allow unsafe reductions in graphite" ( submitted https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01861.html , committed r226193) we've disabled fixed-point reductions.

In this patch we enable it again, for the case that it's safe, in other words, for the case that the fixed point overflow wraps.

The patch uses FIXED_POINT_TYPE_OVERFLOW_WRAPS_P, introduced in proposed patch https://gcc.gnu.org/ml/gcc-patches/2015-07/msg02049.html .

Bootstrapped and reg-tested on x86_64.

OK for trunk?

Thanks,
- Tom
Enable fixed-point reductions in graphite

2015-07-24  Tom de Vries  <t...@codesourcery.com>

	* graphite-sese-to-poly.c (is_reduction_operation_p): Allow wrapping
	fixed-point operations.
---
 gcc/graphite-sese-to-poly.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c
index 531c848..aa823f8 100644
--- a/gcc/graphite-sese-to-poly.c
+++ b/gcc/graphite-sese-to-poly.c
@@ -2626,6 +2626,9 @@ is_reduction_operation_p (gimple stmt)
       return false;
     }
 
+  if (FIXED_POINT_TYPE_P (type))
+    return FIXED_POINT_TYPE_OVERFLOW_WRAPS_P (type);
+
   return false;
 }
 
-- 
1.9.1

Reply via email to