Polly 20.0.0git
Macros | Functions
isl_pw_templ.c File Reference
#include <isl/id.h>
#include <isl/aff.h>
#include <isl_sort.h>
#include <isl_val_private.h>
#include <isl_pw_macro.h>
#include "opt_type.h"
#include "isl_check_named_params_templ.c"
#include "isl_align_params_bin_templ.c"
#include "isl_align_params_templ.c"
#include "isl_type_has_equal_space_bin_templ.c"
#include "isl_type_check_equal_space_templ.c"

Go to the source code of this file.

Macros

#define TYPE   PW
 
#define TYPE   PW
 
#define SUFFIX   set
 
#define ARG1   PW
 
#define ARG2   isl_set
 
#define TYPE   PW
 

Functions

__isl_give PWFN (PW, alloc_size)
 
__isl_give PWFN (PW, ZERO)
 
static __isl_give PWFN (PW, add_dup_piece)
 
__isl_give PWFN (PW, add_piece)
 
static isl_bool FN (PW, compatible_domain)
 
static isl_stat FN (PW, check_compatible_domain)
 
__isl_give PWFN (PW, alloc)
 
__isl_give PWFN (PW, dup)
 
__isl_give PWFN (PW, cow)
 
__isl_give PWFN (PW, copy)
 
__isl_null PWFN (PW, free)
 
__isl_keep isl_spaceFN (PW, peek_space)
 
__isl_give isl_spaceFN (PW, get_space)
 
static __isl_give isl_spaceFN (PW, take_space)
 
static __isl_give PWFN (PW, restore_space)
 
static isl_stat FN (PW, check_pos)
 
static __isl_keep isl_setFN (PW, peek_domain_at)
 
static __isl_give isl_setFN (PW, get_domain_at)
 
static __isl_give isl_setFN (PW, take_domain_at)
 
static __isl_give PWFN (PW, restore_domain_at)
 
__isl_keep ELFN (PW, peek_base_at)
 
static __isl_give ELFN (PW, get_base_at)
 
static __isl_give ELFN (PW, take_base_at)
 
static __isl_give PWFN (PW, restore_base_at_)
 
static __isl_give PWFN (PW, restore_base_at)
 
static __isl_give PWFN (PW, restore_base_at_inplace)
 
static __isl_give PWFN (FN(FN(PW, from), BASE), type_base)
 
static __isl_give PWFN (FN(FN(PW, from), BASE), type)
 
__isl_give PWFN (FN(PW, from), BASE)
 
const char * FN (PW, get_dim_name)
 
isl_bool FN (PW, has_dim_id)
 
__isl_give isl_idFN (PW, get_dim_id)
 
isl_bool FN (PW, has_tuple_name)
 
const char * FN (PW, get_tuple_name)
 
isl_bool FN (PW, has_tuple_id)
 
__isl_give isl_idFN (PW, get_tuple_id)
 
isl_bool FN (PW, IS_ZERO)
 
static __isl_give PWFN (PW, realign_domain)
 
__isl_give PWFN (PW, align_params)
 
static __isl_give PWFN (PW, union_add_)
 
__isl_give PWFN (PW, union_add)
 
static __isl_give PWFN (static __isl_give PW *FN(PW, on_shared_domain_in)
 
static __isl_give PWFN (static __isl_give PW *FN(PW, on_shared_domain)
 
__isl_give isl_setFN (PW, params)
 
__isl_give isl_setFN (PW, domain)
 
static __isl_give PWFN (PW, exploit_equalities_and_remove_if_empty)
 
static __isl_give PWFN (PW, restrict_domain)
 
__isl_give PWFN (PW, intersect_domain)
 
__isl_give PWFN (PW, intersect_params)
 
__isl_give PWFN (PW, intersect_domain_wrapped_domain)
 
__isl_give PWFN (PW, intersect_domain_wrapped_range)
 
__isl_give PWFN (PW, subtract_domain)
 
static int FN (PW, sort_field_cmp) const
 
static __isl_give PWFN (PW, sort_unique)
 
static __isl_give PWFN (PW, gist_last)
 
static __isl_give PWFN (PW, gist_fn)
 
__isl_give PWFN (PW, gist)
 
__isl_give PWFN (PW, gist_params)
 
__isl_give PWFN (PW, coalesce)
 
isl_ctxFN (PW, get_ctx)
 
isl_bool FN (PW, involves_dims)
 
__isl_give PWFN (PW, set_dim_name)
 
__isl_give PWFN (PW, drop_dims)
 
__isl_give PWFN (PW, project_out)
 
__isl_give PWFN (PW, project_domain_on_params)
 
__isl_give PWFN (PW, drop_unused_params)
 
isl_size FN (PW, dim)
 
__isl_give isl_spaceFN (PW, get_domain_space)
 
int FN (PW, find_dim_by_name)
 
static int FN (PW, find_dim_by_id)
 
isl_bool FN (PW, involves_param_id)
 
static __isl_give PWFN (PW, reset_space_and_domain)
 
__isl_give PWFN (PW, reset_domain_space)
 
__isl_give PWFN (PW, reset_space)
 
__isl_give PWFN (PW, set_tuple_id)
 
__isl_give PWFN (PW, reset_tuple_id)
 
__isl_give PWFN (PW, set_dim_id)
 
__isl_give PWFN (PW, reset_user)
 
isl_size FN (PW, n_piece)
 
isl_stat FN (PW, foreach_piece)
 
isl_bool FN (PW, every_piece)
 
isl_bool FN (FN(PW, isa), BASE)
 
static __isl_give ELFN (EL, zero_like_type)
 
static __isl_give ELFN (EL, zero_like)
 
__isl_give ELFN (FN(PW, as), BASE)
 
static __isl_give PWFN (PW, negate_type)
 
__isl_give PWFN (PW, scale_val)
 
__isl_give PWFN (PW, scale_down_val)
 
static __isl_give PWFN (PW, normalize)
 
isl_bool FN (PW, plain_is_equal)
 
isl_bool FN (PW, involves_nan)
 

Macro Definition Documentation

◆ ARG1

#define ARG1   PW

Definition at line 663 of file isl_pw_templ.c.

◆ ARG2

#define ARG2   isl_set

Definition at line 665 of file isl_pw_templ.c.

◆ SUFFIX

#define SUFFIX   set

Definition at line 661 of file isl_pw_templ.c.

◆ TYPE [1/3]

#define TYPE   PW

Definition at line 671 of file isl_pw_templ.c.

◆ TYPE [2/3]

#define TYPE   PW

Definition at line 671 of file isl_pw_templ.c.

◆ TYPE [3/3]

#define TYPE   PW

Definition at line 671 of file isl_pw_templ.c.

Function Documentation

◆ FN() [1/91]

static __isl_give EL * FN ( EL  ,
zero_like   
)
static

Definition at line 1644 of file isl_pw_templ.c.

References EL, and FN.

◆ FN() [2/91]

static __isl_give EL * FN ( EL  ,
zero_like_type   
)
static

Definition at line 1632 of file isl_pw_templ.c.

References EL, FN, NO_LOC, OPT_TYPE_ARG, and PW.

◆ FN() [3/91]

static __isl_give PW * FN ( FN(FN(PW, from), BASE ,
type   
)
static

Definition at line 491 of file isl_pw_templ.c.

References BASE, DEFAULT_IS_ZERO, EL, EL_IS_ZERO, FN, NO_LOC, OPT_TYPE_ARG, PW, and ZERO.

◆ FN() [4/91]

static __isl_give PW * FN ( FN(FN(PW, from), BASE ,
type_base   
)
static

Definition at line 477 of file isl_pw_templ.c.

References EL, FN, isl_set_universe(), NO_LOC, OPT_TYPE_ARG_FIRST, and PW.

◆ FN() [5/91]

__isl_give EL * FN ( FN(PW, as)  ,
BASE   
)

Definition at line 1678 of file isl_pw_templ.c.

References BASE, EL, FN, isl_die, isl_error_invalid, n, and PW.

◆ FN() [6/91]

__isl_give PW * FN ( FN(PW, from)  ,
BASE   
)

Definition at line 527 of file isl_pw_templ.c.

References BASE, FN, PW, and type.

◆ FN() [7/91]

isl_bool FN ( FN(PW, isa)  ,
BASE   
)

◆ FN() [8/91]

static __isl_give PW * FN ( PW  ,
add_dup_piece   
)
static

◆ FN() [9/91]

__isl_give PW * FN ( PW  ,
add_piece   
)

Definition at line 96 of file isl_pw_templ.c.

References EL, EL_IS_ZERO, FN, isl_set_free(), isl_set_plain_is_empty(), PW, and set.

◆ FN() [10/91]

__isl_give PW * FN ( PW  ,
align_params   
)

◆ FN() [11/91]

__isl_give PW * FN ( PW  ,
alloc   
)

Definition at line 149 of file isl_pw_templ.c.

References EL, FN, isl_set_free(), NO_LOC, OPT_TYPE_ARG, PW, and set.

◆ FN() [12/91]

__isl_give PW * FN ( PW  ,
alloc_size   
)

Definition at line 23 of file isl_pw_templ.c.

References isl_alloc, isl_assert, isl_space_free(), isl_space_get_ctx(), n, OPT_SET_TYPE, PW, S, and type.

◆ FN() [13/91]

static isl_stat FN ( PW  ,
check_compatible_domain   
)
static

Definition at line 134 of file isl_pw_templ.c.

References FN, isl_die, isl_error_invalid, isl_set_get_ctx(), isl_stat_error, isl_stat_ok, PW, and set.

◆ FN() [14/91]

static isl_stat FN ( PW  ,
check_pos   
)
static

Definition at line 290 of file isl_pw_templ.c.

References FN, isl_die, isl_error_internal, isl_stat_error, isl_stat_ok, and PW.

◆ FN() [15/91]

__isl_give PW * FN ( PW  ,
coalesce   
)

Definition at line 1211 of file isl_pw_templ.c.

References FN, isl_set_coalesce(), n, and PW.

◆ FN() [16/91]

static isl_bool FN ( PW  ,
compatible_domain   
)
static

◆ FN() [17/91]

__isl_give PW * FN ( PW  ,
copy   
)

Definition at line 197 of file isl_pw_templ.c.

◆ FN() [18/91]

__isl_give PW * FN ( PW  ,
cow   
)

Definition at line 186 of file isl_pw_templ.c.

References dup(), FN, and PW.

◆ FN() [19/91]

isl_size FN ( PW  ,
dim   
)

Definition at line 1392 of file isl_pw_templ.c.

References FN, isl_space_dim(), PW, and type.

◆ FN() [20/91]

__isl_give isl_set * FN ( PW  ,
domain   
)

Definition at line 862 of file isl_pw_templ.c.

References FN, isl_set_copy(), isl_set_empty(), isl_set_union_disjoint(), and PW.

◆ FN() [21/91]

__isl_give PW * FN ( PW  ,
drop_dims   
)

◆ FN() [22/91]

__isl_give PW * FN ( PW  ,
drop_unused_params   
)

Definition at line 1368 of file isl_pw_templ.c.

References drop_dims(), FN, isl_dim_param, n, and PW.

◆ FN() [23/91]

__isl_give PW * FN ( PW  ,
dup   
)

Definition at line 166 of file isl_pw_templ.c.

References dup(), EL, FN, isl_set_copy(), isl_space_copy(), OPT_TYPE_ARG, and PW.

◆ FN() [24/91]

isl_bool FN ( PW  ,
every_piece   
)

Definition at line 1589 of file isl_pw_templ.c.

References isl_bool_error, isl_bool_true, test, and user.

◆ FN() [25/91]

static __isl_give PW * FN ( PW  ,
exploit_equalities_and_remove_if_empty   
)
static

◆ FN() [26/91]

static int FN ( PW  ,
find_dim_by_id   
)
static

Definition at line 1418 of file isl_pw_templ.c.

References FN, isl_space_find_dim_by_id(), PW, and type.

◆ FN() [27/91]

int FN ( PW  ,
find_dim_by_name   
)

Definition at line 1406 of file isl_pw_templ.c.

References isl_space_find_dim_by_name(), name, and type.

◆ FN() [28/91]

isl_stat FN ( PW  ,
foreach_piece   
)

Definition at line 1570 of file isl_pw_templ.c.

References EL, FN, fn, isl_set_copy(), isl_stat_error, isl_stat_ok, and user.

◆ FN() [29/91]

__isl_null PW * FN ( PW  ,
free   
)

Definition at line 206 of file isl_pw_templ.c.

References EL, FN, isl_set_free(), and isl_space_free().

◆ FN() [30/91]

static __isl_give EL * FN ( PW  ,
get_base_at   
)
static

Definition at line 384 of file isl_pw_templ.c.

References EL, FN, pos(), and PW.

◆ FN() [31/91]

isl_ctx * FN ( PW  ,
get_ctx   
)

Definition at line 1233 of file isl_pw_templ.c.

References isl_space_get_ctx().

◆ FN() [32/91]

__isl_give isl_id * FN ( PW  ,
get_dim_id   
)

Definition at line 545 of file isl_pw_templ.c.

References isl_space_get_dim_id(), pos(), and type.

◆ FN() [33/91]

const char * FN ( PW  ,
get_dim_name   
)

Definition at line 533 of file isl_pw_templ.c.

References isl_space_get_dim_name(), pos(), and type.

◆ FN() [34/91]

static __isl_give isl_set * FN ( PW  ,
get_domain_at   
)
static

Definition at line 311 of file isl_pw_templ.c.

References FN, isl_set_copy(), pos(), and PW.

◆ FN() [35/91]

__isl_give isl_space * FN ( PW  ,
get_domain_space   
)

Definition at line 1397 of file isl_pw_templ.c.

References isl_space_copy(), and isl_space_domain().

◆ FN() [36/91]

__isl_give isl_space * FN ( PW  ,
get_space   
)

Definition at line 232 of file isl_pw_templ.c.

References FN, isl_space_copy(), and PW.

◆ FN() [37/91]

__isl_give isl_id * FN ( PW  ,
get_tuple_id   
)

Definition at line 566 of file isl_pw_templ.c.

References isl_space_get_tuple_id(), and type.

◆ FN() [38/91]

const char * FN ( PW  ,
get_tuple_name   
)

Definition at line 556 of file isl_pw_templ.c.

References isl_space_get_tuple_name(), and type.

◆ FN() [39/91]

__isl_give PW * FN ( PW  ,
gist   
)

Definition at line 1191 of file isl_pw_templ.c.

References context, FN, isl_set_gist_basic_set(), isl_set_intersect(), and PW.

◆ FN() [40/91]

static __isl_give PW * FN ( PW  ,
gist_fn   
)
static

◆ FN() [41/91]

static __isl_give PW * FN ( PW  ,
gist_last   
)
static

Definition at line 1061 of file isl_pw_templ.c.

References context, EL, FN, gist, isl_set_free(), isl_set_get_space(), isl_set_universe(), and PW.

◆ FN() [42/91]

__isl_give PW * FN ( PW  ,
gist_params   
)

◆ FN() [43/91]

isl_bool FN ( PW  ,
has_dim_id   
)

Definition at line 539 of file isl_pw_templ.c.

References isl_bool_error, isl_space_has_dim_id(), pos(), and type.

◆ FN() [44/91]

isl_bool FN ( PW  ,
has_tuple_id   
)

Definition at line 561 of file isl_pw_templ.c.

References isl_bool_error, isl_space_has_tuple_id(), and type.

◆ FN() [45/91]

isl_bool FN ( PW  ,
has_tuple_name   
)

Definition at line 551 of file isl_pw_templ.c.

References isl_bool_error, isl_space_has_tuple_name(), and type.

◆ FN() [46/91]

__isl_give PW * FN ( PW  ,
intersect_domain   
)

Definition at line 949 of file isl_pw_templ.c.

References context, FN, isl_set_intersect(), and PW.

◆ FN() [47/91]

__isl_give PW * FN ( PW  ,
intersect_domain_wrapped_domain   
)

Definition at line 966 of file isl_pw_templ.c.

References FN, isl_set_intersect_factor_domain(), PW, and set.

◆ FN() [48/91]

__isl_give PW * FN ( PW  ,
intersect_domain_wrapped_range   
)

Definition at line 976 of file isl_pw_templ.c.

References FN, isl_set_intersect_factor_range(), PW, and set.

◆ FN() [49/91]

__isl_give PW * FN ( PW  ,
intersect_params   
)

Definition at line 957 of file isl_pw_templ.c.

References context, FN, isl_set_intersect_params(), and PW.

◆ FN() [50/91]

isl_bool FN ( PW  ,
involves_dims   
)

◆ FN() [51/91]

isl_bool FN ( PW  ,
involves_nan   
)

Definition at line 1898 of file isl_pw_templ.c.

References EL, FN, isl_bool_error, and isl_bool_false.

◆ FN() [52/91]

isl_bool FN ( PW  ,
involves_param_id   
)

Definition at line 1430 of file isl_pw_templ.c.

References FN, id, isl_bool_error, isl_bool_false, isl_dim_param, pos(), and PW.

◆ FN() [53/91]

isl_bool FN ( PW  ,
IS_ZERO   
)

Definition at line 571 of file isl_pw_templ.c.

References isl_bool_error, and isl_bool_ok().

◆ FN() [54/91]

isl_size FN ( PW  ,
n_piece   
)

Definition at line 1565 of file isl_pw_templ.c.

References isl_size_error.

◆ FN() [55/91]

static __isl_give PW * FN ( PW  ,
negate_type   
)
static

Definition at line 1718 of file isl_pw_templ.c.

◆ FN() [56/91]

static __isl_give PW * FN ( PW  ,
normalize   
)
static

Definition at line 1821 of file isl_pw_templ.c.

References FN, isl_set_copy(), isl_set_free(), isl_set_normalize(), PW, and set.

◆ FN() [57/91]

__isl_give isl_set * FN ( PW  ,
params   
)

Definition at line 857 of file isl_pw_templ.c.

References domain, FN, isl_set_params(), and PW.

◆ FN() [58/91]

__isl_keep EL * FN ( PW  ,
peek_base_at   
)

Definition at line 374 of file isl_pw_templ.c.

References FN, pos(), and PW.

◆ FN() [59/91]

static __isl_keep isl_set * FN ( PW  ,
peek_domain_at   
)
static

Definition at line 302 of file isl_pw_templ.c.

References FN, pos(), and PW.

◆ FN() [60/91]

__isl_keep isl_space * FN ( PW  ,
peek_space   
)

Definition at line 227 of file isl_pw_templ.c.

◆ FN() [61/91]

isl_bool FN ( PW  ,
plain_is_equal   
)

◆ FN() [62/91]

__isl_give PW * FN ( PW  ,
project_domain_on_params   
)

Definition at line 1351 of file isl_pw_templ.c.

References FN, isl_dim_in, isl_space_params(), n, project_out(), PW, and reset_domain_space().

◆ FN() [63/91]

__isl_give PW * FN ( PW  ,
project_out   
)

◆ FN() [64/91]

static __isl_give PW * FN ( PW  ,
realign_domain   
)
static

◆ FN() [65/91]

__isl_give PW * FN ( PW  ,
reset_domain_space   
)

Definition at line 1484 of file isl_pw_templ.c.

References domain, FN, isl_space_copy(), isl_space_extend_domain_with_range(), and PW.

◆ FN() [66/91]

__isl_give PW * FN ( PW  ,
reset_space   
)

Definition at line 1494 of file isl_pw_templ.c.

References domain, FN, isl_space_copy(), isl_space_domain(), and PW.

◆ FN() [67/91]

static __isl_give PW * FN ( PW  ,
reset_space_and_domain   
)
static

Definition at line 1449 of file isl_pw_templ.c.

References domain, EL, FN, isl_set_reset_space(), isl_space_copy(), isl_space_free(), n, PW, and set.

◆ FN() [68/91]

__isl_give PW * FN ( PW  ,
reset_tuple_id   
)

Definition at line 1523 of file isl_pw_templ.c.

References FN, isl_space_reset_tuple_id(), PW, and type.

◆ FN() [69/91]

__isl_give PW * FN ( PW  ,
reset_user   
)

Definition at line 1555 of file isl_pw_templ.c.

References FN, isl_space_reset_user(), and PW.

◆ FN() [70/91]

static __isl_give PW * FN ( PW  ,
restore_base_at   
)
static

Definition at line 455 of file isl_pw_templ.c.

References FN, pos(), and PW.

◆ FN() [71/91]

static __isl_give PW * FN ( PW  ,
restore_base_at_   
)
static

Definition at line 425 of file isl_pw_templ.c.

References EL, FN, inplace(), pos(), and PW.

◆ FN() [72/91]

static __isl_give PW * FN ( PW  ,
restore_base_at_inplace   
)
static

Definition at line 468 of file isl_pw_templ.c.

References FN, pos(), and PW.

◆ FN() [73/91]

static __isl_give PW * FN ( PW  ,
restore_domain_at   
)
static

Definition at line 347 of file isl_pw_templ.c.

References domain, FN, isl_set_free(), pos(), and PW.

◆ FN() [74/91]

static __isl_give PW * FN ( PW  ,
restore_space   
)
static

Definition at line 264 of file isl_pw_templ.c.

References FN, isl_space_free(), and PW.

◆ FN() [75/91]

static __isl_give PW * FN ( PW  ,
restrict_domain   
)
static

Definition at line 919 of file isl_pw_templ.c.

References domain, FN, fn, isl_set_copy(), isl_set_free(), n, PW, and set.

◆ FN() [76/91]

__isl_give PW * FN ( PW  ,
scale_down_val   
)

◆ FN() [77/91]

__isl_give PW * FN ( PW  ,
scale_val   
)

◆ FN() [78/91]

__isl_give PW * FN ( PW  ,
set_dim_id   
)

Definition at line 1542 of file isl_pw_templ.c.

References FN, isl_space_set_dim_id(), pos(), PW, and type.

◆ FN() [79/91]

__isl_give PW * FN ( PW  ,
set_dim_name   
)

Definition at line 1264 of file isl_pw_templ.c.

References FN, isl_space_set_dim_name(), pos(), PW, and type.

◆ FN() [80/91]

__isl_give PW * FN ( PW  ,
set_tuple_id   
)

Definition at line 1503 of file isl_pw_templ.c.

References FN, isl_id_free(), isl_space_set_tuple_id(), PW, and type.

◆ FN() [81/91]

static int FN ( PW  ,
sort_field_cmp   
) const
static

Definition at line 996 of file isl_pw_templ.c.

References EL, FN, and PW.

◆ FN() [82/91]

static __isl_give PW * FN ( PW  ,
sort_unique   
)
static

Definition at line 1013 of file isl_pw_templ.c.

References EL, equal, FN, isl_set_free(), isl_set_union(), isl_sort(), PW, and set.

◆ FN() [83/91]

__isl_give PW * FN ( PW  ,
subtract_domain   
)

Definition at line 984 of file isl_pw_templ.c.

References domain, FN, isl_set_subtract(), and PW.

◆ FN() [84/91]

static __isl_give EL * FN ( PW  ,
take_base_at   
)
static

Definition at line 400 of file isl_pw_templ.c.

References EL, FN, pos(), and PW.

◆ FN() [85/91]

static __isl_give isl_set * FN ( PW  ,
take_domain_at   
)
static

Definition at line 326 of file isl_pw_templ.c.

References domain, FN, pos(), and PW.

◆ FN() [86/91]

static __isl_give isl_space * FN ( PW  ,
take_space   
)
static

Definition at line 246 of file isl_pw_templ.c.

References FN, and PW.

◆ FN() [87/91]

__isl_give PW * FN ( PW  ,
union_add   
)

Definition at line 761 of file isl_pw_templ.c.

References FN, and PW.

◆ FN() [88/91]

static __isl_give PW * FN ( PW  ,
union_add_   
)
static

◆ FN() [89/91]

__isl_give PW * FN ( PW  ,
ZERO   
)

Definition at line 49 of file isl_pw_templ.c.

References FN, NO_LOC, OPT_TYPE_ARG, and PW.

◆ FN() [90/91]

static __isl_give PW * FN ( static __isl_give PW *FN(  PW,
on_shared_domain   
)
static

Definition at line 830 of file isl_pw_templ.c.

◆ FN() [91/91]

static __isl_give PW * FN ( static __isl_give PW *FN(  PW,
on_shared_domain_in   
)
static

Definition at line 770 of file isl_pw_templ.c.