Polly 20.0.0git
Functions
isl_affine_hull.c File Reference
#include <isl_ctx_private.h>
#include <isl_map_private.h>
#include <isl_seq.h>
#include <isl/set.h>
#include <isl/lp.h>
#include <isl/map.h>
#include "isl_equalities.h"
#include "isl_sample.h"
#include "isl_tab.h"
#include <isl_mat_private.h>
#include <isl_vec_private.h>
#include <bset_to_bmap.c>
#include <bset_from_bmap.c>
#include <set_to_map.c>
#include <set_from_map.c>

Go to the source code of this file.

Functions

__isl_give isl_basic_mapisl_basic_map_implicit_equalities (__isl_take isl_basic_map *bmap)
 
__isl_give isl_basic_setisl_basic_set_implicit_equalities (__isl_take isl_basic_set *bset)
 
static void set_common_multiple (struct isl_basic_set *bset1, struct isl_basic_set *bset2, unsigned row, unsigned col)
 
static void delete_row (__isl_keep isl_basic_set *bset, unsigned row)
 
static isl_stat construct_column (__isl_keep isl_basic_set *bset1, __isl_keep isl_basic_set *bset2, unsigned row, unsigned col)
 
static isl_bool transform_column (__isl_keep isl_basic_set *bset1, __isl_keep isl_basic_set *bset2, unsigned row, unsigned col)
 
static __isl_give isl_basic_setaffine_hull (__isl_take isl_basic_set *bset1, __isl_take isl_basic_set *bset2)
 
static __isl_give isl_vecoutside_point (struct isl_tab *tab, isl_int *eq, int up)
 
__isl_give isl_basic_setisl_basic_set_recession_cone (__isl_take isl_basic_set *bset)
 
static void adjacent_point (__isl_keep isl_vec *sample, int pos, int up)
 
static __isl_give isl_basic_setadd_adjacent_points (__isl_take isl_basic_set *hull, __isl_take isl_vec *sample, __isl_keep isl_basic_set *bset)
 
static __isl_give isl_basic_setextend_affine_hull (struct isl_tab *tab, __isl_take isl_basic_set *hull, __isl_keep isl_basic_set *bset)
 
static __isl_give isl_basic_setinitialize_hull (__isl_keep isl_basic_set *bset, __isl_take isl_vec *sample)
 
static __isl_give isl_basic_setuset_affine_hull_bounded (__isl_take isl_basic_set *bset)
 
static __isl_give isl_basic_setinitial_hull (struct isl_tab *tab, __isl_take isl_vec *vec)
 
struct isl_tabisl_tab_detect_equalities (struct isl_tab *tab, struct isl_tab *tab_cone)
 
static __isl_give isl_basic_setaffine_hull_with_cone (__isl_take isl_basic_set *bset, __isl_take isl_basic_set *cone)
 
static __isl_give isl_basic_setuset_affine_hull (__isl_take isl_basic_set *bset)
 
static __isl_give isl_basic_setequalities_in_underlying_set (__isl_take isl_basic_map *bmap)
 
__isl_give isl_basic_mapisl_basic_map_detect_equalities (__isl_take isl_basic_map *bmap)
 
__isl_give isl_basic_setisl_basic_set_detect_equalities (__isl_take isl_basic_set *bset)
 
__isl_give isl_mapisl_map_detect_equalities (__isl_take isl_map *map)
 
__isl_give isl_setisl_set_detect_equalities (__isl_take isl_set *set)
 
__isl_give isl_basic_mapisl_basic_map_plain_affine_hull (__isl_take isl_basic_map *bmap)
 
__isl_give isl_basic_setisl_basic_set_plain_affine_hull (__isl_take isl_basic_set *bset)
 
__isl_give isl_basic_mapisl_basic_map_affine_hull (__isl_take isl_basic_map *bmap)
 
__isl_give isl_basic_setisl_basic_set_affine_hull (__isl_take isl_basic_set *bset)
 
static __isl_give isl_basic_mapadd_strides (__isl_take isl_basic_map *bmap, __isl_keep isl_mat *M, int n_known)
 
static __isl_give isl_basic_mapisl_basic_map_make_strides_explicit (__isl_take isl_basic_map *bmap)
 
static __isl_give isl_mapisl_map_local_affine_hull (__isl_take isl_map *map)
 
static __isl_give isl_setisl_set_local_affine_hull (__isl_take isl_set *set)
 
static __isl_give isl_basic_mapreplace_map_by_empty_basic_map (__isl_take isl_map *map)
 
__isl_give isl_basic_mapisl_map_affine_hull (__isl_take isl_map *map)
 
__isl_give isl_basic_setisl_set_affine_hull (__isl_take isl_set *set)
 

Function Documentation

◆ add_adjacent_points()

static __isl_give isl_basic_set * add_adjacent_points ( __isl_take isl_basic_set hull,
__isl_take isl_vec sample,
__isl_keep isl_basic_set bset 
)
static

◆ add_strides()

static __isl_give isl_basic_map * add_strides ( __isl_take isl_basic_map bmap,
__isl_keep isl_mat M,
int  n_known 
)
static

◆ adjacent_point()

static void adjacent_point ( __isl_keep isl_vec sample,
int  pos,
int  up 
)
static

Definition at line 346 of file isl_affine_hull.c.

References isl_int_add_ui, isl_int_sub_ui, and pos().

Referenced by add_adjacent_points().

◆ affine_hull()

static __isl_give isl_basic_set * affine_hull ( __isl_take isl_basic_set bset1,
__isl_take isl_basic_set bset2 
)
static

◆ affine_hull_with_cone()

static __isl_give isl_basic_set * affine_hull_with_cone ( __isl_take isl_basic_set bset,
__isl_take isl_basic_set cone 
)
static

◆ construct_column()

static isl_stat construct_column ( __isl_keep isl_basic_set bset1,
__isl_keep isl_basic_set bset2,
unsigned  row,
unsigned  col 
)
static

◆ delete_row()

static void delete_row ( __isl_keep isl_basic_set bset,
unsigned  row 
)
static

Definition at line 96 of file isl_affine_hull.c.

References t.

Referenced by construct_column(), and transform_column().

◆ equalities_in_underlying_set()

static __isl_give isl_basic_set * equalities_in_underlying_set ( __isl_take isl_basic_map bmap)
static

◆ extend_affine_hull()

static __isl_give isl_basic_set * extend_affine_hull ( struct isl_tab tab,
__isl_take isl_basic_set hull,
__isl_keep isl_basic_set bset 
)
static

◆ initial_hull()

static __isl_give isl_basic_set * initial_hull ( struct isl_tab tab,
__isl_take isl_vec vec 
)
static

◆ initialize_hull()

static __isl_give isl_basic_set * initialize_hull ( __isl_keep isl_basic_set bset,
__isl_take isl_vec sample 
)
static

◆ isl_basic_map_affine_hull()

__isl_give isl_basic_map * isl_basic_map_affine_hull ( __isl_take isl_basic_map bmap)

◆ isl_basic_map_detect_equalities()

__isl_give isl_basic_map * isl_basic_map_detect_equalities ( __isl_take isl_basic_map bmap)

◆ isl_basic_map_implicit_equalities()

__isl_give isl_basic_map * isl_basic_map_implicit_equalities ( __isl_take isl_basic_map bmap)

◆ isl_basic_map_make_strides_explicit()

static __isl_give isl_basic_map * isl_basic_map_make_strides_explicit ( __isl_take isl_basic_map bmap)
static

◆ isl_basic_map_plain_affine_hull()

__isl_give isl_basic_map * isl_basic_map_plain_affine_hull ( __isl_take isl_basic_map bmap)

◆ isl_basic_set_affine_hull()

__isl_give isl_basic_set * isl_basic_set_affine_hull ( __isl_take isl_basic_set bset)

◆ isl_basic_set_detect_equalities()

__isl_give isl_basic_set * isl_basic_set_detect_equalities ( __isl_take isl_basic_set bset)

◆ isl_basic_set_implicit_equalities()

__isl_give isl_basic_set * isl_basic_set_implicit_equalities ( __isl_take isl_basic_set bset)

◆ isl_basic_set_plain_affine_hull()

__isl_give isl_basic_set * isl_basic_set_plain_affine_hull ( __isl_take isl_basic_set bset)

Definition at line 984 of file isl_affine_hull.c.

References isl_basic_map_plain_affine_hull().

Referenced by uset_gist().

◆ isl_basic_set_recession_cone()

__isl_give isl_basic_set * isl_basic_set_recession_cone ( __isl_take isl_basic_set bset)

◆ isl_map_affine_hull()

__isl_give isl_basic_map * isl_map_affine_hull ( __isl_take isl_map map)

◆ isl_map_detect_equalities()

__isl_give isl_map * isl_map_detect_equalities ( __isl_take isl_map map)

◆ isl_map_local_affine_hull()

static __isl_give isl_map * isl_map_local_affine_hull ( __isl_take isl_map map)
static

◆ isl_set_affine_hull()

__isl_give isl_basic_set * isl_set_affine_hull ( __isl_take isl_set set)

◆ isl_set_detect_equalities()

__isl_give isl_set * isl_set_detect_equalities ( __isl_take isl_set set)

◆ isl_set_local_affine_hull()

static __isl_give isl_set * isl_set_local_affine_hull ( __isl_take isl_set set)
static

Definition at line 1173 of file isl_affine_hull.c.

References isl_map_local_affine_hull(), and set.

Referenced by isl_map_affine_hull().

◆ isl_tab_detect_equalities()

struct isl_tab * isl_tab_detect_equalities ( struct isl_tab tab,
struct isl_tab tab_cone 
)

◆ outside_point()

static __isl_give isl_vec * outside_point ( struct isl_tab tab,
isl_int eq,
int  up 
)
static

◆ replace_map_by_empty_basic_map()

static __isl_give isl_basic_map * replace_map_by_empty_basic_map ( __isl_take isl_map map)
static

Definition at line 1180 of file isl_affine_hull.c.

References isl_basic_map_empty(), isl_map_free(), isl_map_get_space(), and map.

Referenced by isl_map_affine_hull().

◆ set_common_multiple()

static void set_common_multiple ( struct isl_basic_set bset1,
struct isl_basic_set bset2,
unsigned  row,
unsigned  col 
)
static

Definition at line 74 of file isl_affine_hull.c.

References isl_int_clear, isl_int_divexact, isl_int_eq, isl_int_init, isl_int_lcm, isl_seq_scale(), and m.

Referenced by affine_hull().

◆ transform_column()

static isl_bool transform_column ( __isl_keep isl_basic_set bset1,
__isl_keep isl_basic_set bset2,
unsigned  row,
unsigned  col 
)
static

◆ uset_affine_hull()

static __isl_give isl_basic_set * uset_affine_hull ( __isl_take isl_basic_set bset)
static

◆ uset_affine_hull_bounded()

static __isl_give isl_basic_set * uset_affine_hull_bounded ( __isl_take isl_basic_set bset)
static