Polly
20.0.0git
llvm-project
polly
lib
External
isl
isl_union_sub_templ.c
Go to the documentation of this file.
1
/*
2
* Copyright 2010 INRIA Saclay
3
*
4
* Use of this software is governed by the MIT license
5
*
6
* Written by Sven Verdoolaege,
7
* INRIA Saclay - Ile-de-France, Parc Club Orsay Universite,
8
* ZAC des vignes, 4 rue Jacques Monod, 91893 Orsay, France
9
*/
10
11
#include "
isl_union_macro.h
"
12
13
/* Subtract "u2" from "u1" and return the result.
14
*
15
* If the base expressions have a default zero value, then
16
* reuse isl_union_*_add to ensure the result
17
* is computed on the union of the domains of "u1" and "u2".
18
* Otherwise, compute the result directly on their shared domain.
19
*/
20
__isl_give
UNION
*
FN
(
UNION
,
sub
)(
__isl_take
UNION
*u1,
__isl_take
UNION
*u2)
21
{
22
#if DEFAULT_IS_ZERO
23
return
FN
(
UNION
,
add
)(u1,
FN
(
UNION
,
neg
)(u2));
24
#else
25
return
FN
(
UNION
,
match_bin_op
)(u1, u2, &
FN
(
PART
,
sub
));
26
#endif
27
}
FN
#define FN(TYPE, NAME)
Definition:
check_parse_fail_test_templ.c:15
__isl_take
#define __isl_take
Definition:
ctx.h:22
__isl_give
#define __isl_give
Definition:
ctx.h:19
neg
void GMPZAPI() neg(mp_int rop, mp_int op)
Definition:
imath/gmp_compat.c:107
sub
void GMPZAPI() sub(mp_int rop, mp_int op1, mp_int op2)
Definition:
imath/gmp_compat.c:116
add
void GMPZAPI() add(mp_int rop, mp_int op1, mp_int op2)
Definition:
imath/gmp_compat.c:78
isl_union_macro.h
PART
#define PART
Definition:
isl_union_macro.h:4
match_bin_op
static __isl_give isl_union_map * match_bin_op(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2, __isl_give isl_map *(*fn)(__isl_take isl_map *, __isl_take isl_map *))
Definition:
isl_union_map.c:1216
UNION
Definition:
isl_union_multi.c:37
Generated on Wed Nov 13 2024 03:17:30 for Polly by
1.9.6