diff mbox

Fix buildbreaker with isl 0.14

Message ID 5660020E.6080805@mentor.com
State New
Headers show

Commit Message

Tom de Vries Dec. 3, 2015, 8:49 a.m. UTC
[ was: Re: [PATCH] [graphite] handle missing isl_ast_expr ]

On 03/12/15 00:56, Tom de Vries wrote:
> Hi,
>
> This break the build for me, with isl 0.14.
>
> ...
> src/gcc/graphite-isl-ast-to-gimple.c: In member function ‘tree_node*
> translate_isl_ast_to_gimple::binary_op_to_tree(tree, isl_ast_expr*,
> ivs_params&)’:
> src/gcc/graphite-isl-ast-to-gimple.c:591:10: error: ‘isl_ast_op_zdiv_r’
> was not declared in this scope
>       case isl_ast_op_zdiv_r:
>            ^
> ...
>
> Thanks,
> - Tom
>
> On 02/12/15 23:17, Sebastian Pop wrote:
>>  From ISL's documentation, isl_ast_op_zdiv_r is equal to zero iff the
>> remainder
>> on integer division is zero.  Code generate a modulo operation for that.
>>
>>     * graphite-isl-ast-to-gimple.c (binary_op_to_tree): Handle
>> isl_ast_op_zdiv_r.
>>          (gcc_expression_from_isl_expr_op): Same.
>>
>>     * gcc.dg/graphite/id-28.c: New.

this patch fixes the build breaker with isl 0.14 for me. I'm using the 
HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS macro (which is set for isl 
0.15, and not before) to guard the code handling isl_ast_op_zdiv_r 
(which I suppose is new in isl 0.15).

OK for trunk?

Thanks,
- Tom

Comments

Richard Biener Dec. 3, 2015, 10:03 a.m. UTC | #1
On Thu, Dec 3, 2015 at 9:49 AM, Tom de Vries <Tom_deVries@mentor.com> wrote:
> [ was: Re: [PATCH] [graphite] handle missing isl_ast_expr ]
>
> On 03/12/15 00:56, Tom de Vries wrote:
>>
>> Hi,
>>
>> This break the build for me, with isl 0.14.
>>
>> ...
>> src/gcc/graphite-isl-ast-to-gimple.c: In member function ‘tree_node*
>> translate_isl_ast_to_gimple::binary_op_to_tree(tree, isl_ast_expr*,
>> ivs_params&)’:
>> src/gcc/graphite-isl-ast-to-gimple.c:591:10: error: ‘isl_ast_op_zdiv_r’
>> was not declared in this scope
>>       case isl_ast_op_zdiv_r:
>>            ^
>> ...
>>
>> Thanks,
>> - Tom
>>
>> On 02/12/15 23:17, Sebastian Pop wrote:
>>>
>>>  From ISL's documentation, isl_ast_op_zdiv_r is equal to zero iff the
>>> remainder
>>> on integer division is zero.  Code generate a modulo operation for that.
>>>
>>>     * graphite-isl-ast-to-gimple.c (binary_op_to_tree): Handle
>>> isl_ast_op_zdiv_r.
>>>          (gcc_expression_from_isl_expr_op): Same.
>>>
>>>     * gcc.dg/graphite/id-28.c: New.
>
>
> this patch fixes the build breaker with isl 0.14 for me. I'm using the
> HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS macro (which is set for isl
> 0.15, and not before) to guard the code handling isl_ast_op_zdiv_r (which I
> suppose is new in isl 0.15).
>
> OK for trunk?

Ok.  Ideally we'd get another configure check for this (who knows if
either of both
guarded things will vanish in future but with different versions...)

Thanks,
Richard.

> Thanks,
> - Tom
diff mbox

Patch

Guard isl_ast_op_zdiv_r usage with HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS

2015-12-03  Tom de Vries  <tom@codesourcery.com>

	* graphite-isl-ast-to-gimple.c (binary_op_to_tree)
	(gcc_expression_from_isl_expr_op): Guard isl_ast_op_zdiv_r usage with
	HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS.

---
 gcc/graphite-isl-ast-to-gimple.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-isl-ast-to-gimple.c
index 06a2062..20eb80f 100644
--- a/gcc/graphite-isl-ast-to-gimple.c
+++ b/gcc/graphite-isl-ast-to-gimple.c
@@ -588,7 +588,9 @@  binary_op_to_tree (tree type, __isl_take isl_ast_expr *expr, ivs_params &ip)
 	}
       return fold_build2 (TRUNC_DIV_EXPR, type, tree_lhs_expr, tree_rhs_expr);
 
+#if HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
     case isl_ast_op_zdiv_r:
+#endif
     case isl_ast_op_pdiv_r:
       /* As ISL operates on arbitrary precision numbers, we may end up with
 	 division by 2^64 that is folded to 0.  */
@@ -759,7 +761,9 @@  gcc_expression_from_isl_expr_op (tree type, __isl_take isl_ast_expr *expr,
     case isl_ast_op_pdiv_q:
     case isl_ast_op_pdiv_r:
     case isl_ast_op_fdiv_q:
+#if HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
     case isl_ast_op_zdiv_r:
+#endif
     case isl_ast_op_and:
     case isl_ast_op_or:
     case isl_ast_op_eq: