Polly 20.0.0git
Functions | Variables
isl_ast_build.c File Reference
#include <isl/id.h>
#include <isl/val.h>
#include <isl/space.h>
#include <isl/map.h>
#include <isl/aff.h>
#include <isl/constraint.h>
#include <isl/union_set.h>
#include <isl/union_map.h>
#include <isl_ast_build_private.h>
#include <isl_ast_private.h>
#include <isl_config.h>

Go to the source code of this file.

Functions

__isl_give isl_mapisl_ast_build_map_to_iterator (__isl_keep isl_ast_build *build, __isl_take isl_set *set)
 
static __isl_give isl_ast_buildisl_ast_build_init_derived (__isl_take isl_ast_build *build, __isl_take isl_space *space)
 
static __isl_give isl_idgenerate_name (isl_ctx *ctx, int i, __isl_keep isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_from_context (__isl_take isl_set *set)
 
__isl_give isl_ast_buildisl_ast_build_alloc (isl_ctx *ctx)
 
__isl_give isl_ast_buildisl_ast_build_copy (__isl_keep isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_dup (__isl_keep isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_align_params (__isl_take isl_ast_build *build, __isl_take isl_space *model)
 
__isl_give isl_ast_buildisl_ast_build_cow (__isl_take isl_ast_build *build)
 
__isl_null isl_ast_buildisl_ast_build_free (__isl_take isl_ast_build *build)
 
isl_ctxisl_ast_build_get_ctx (__isl_keep isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_set_options (__isl_take isl_ast_build *build, __isl_take isl_union_map *options)
 
__isl_give isl_ast_buildisl_ast_build_set_iterators (__isl_take isl_ast_build *build, __isl_take isl_id_list *iterators)
 
__isl_give isl_ast_buildisl_ast_build_set_at_each_domain (__isl_take isl_ast_build *build, __isl_give isl_ast_node *(*fn)(__isl_take isl_ast_node *node, __isl_keep isl_ast_build *build, void *user), void *user)
 
__isl_give isl_ast_buildisl_ast_build_set_before_each_for (__isl_take isl_ast_build *build, __isl_give isl_id *(*fn)(__isl_keep isl_ast_build *build, void *user), void *user)
 
__isl_give isl_ast_buildisl_ast_build_set_after_each_for (__isl_take isl_ast_build *build, __isl_give isl_ast_node *(*fn)(__isl_take isl_ast_node *node, __isl_keep isl_ast_build *build, void *user), void *user)
 
__isl_give isl_ast_buildisl_ast_build_set_before_each_mark (__isl_take isl_ast_build *build, isl_stat(*fn)(__isl_keep isl_id *mark, __isl_keep isl_ast_build *build, void *user), void *user)
 
__isl_give isl_ast_buildisl_ast_build_set_after_each_mark (__isl_take isl_ast_build *build, __isl_give isl_ast_node *(*fn)(__isl_take isl_ast_node *node, __isl_keep isl_ast_build *build, void *user), void *user)
 
__isl_give isl_ast_buildisl_ast_build_set_create_leaf (__isl_take isl_ast_build *build, __isl_give isl_ast_node *(*fn)(__isl_take isl_ast_build *build, void *user), void *user)
 
__isl_give isl_ast_buildisl_ast_build_clear_local_info (__isl_take isl_ast_build *build)
 
static int any_eliminated (isl_ast_build *build)
 
static void isl_ast_build_reset_schedule_map (__isl_keep isl_ast_build *build)
 
isl_bool isl_ast_build_need_schedule_map (__isl_keep isl_ast_build *build)
 
__isl_give isl_multi_affisl_ast_build_get_schedule_map_multi_aff (__isl_keep isl_ast_build *build)
 
__isl_give isl_mapisl_ast_build_get_schedule_map (__isl_keep isl_ast_build *build)
 
isl_size isl_ast_build_get_depth (__isl_keep isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_increase_depth (__isl_take isl_ast_build *build)
 
void isl_ast_build_dump (__isl_keep isl_ast_build *build)
 
static __isl_give isl_ast_buildisl_ast_build_init (__isl_take isl_ast_build *build, __isl_take isl_space *space)
 
static isl_stat extract_single_piece (__isl_take isl_set *set, __isl_take isl_aff *aff, void *user)
 
static __isl_give isl_setintersect_stride_constraint (__isl_take isl_set *set, __isl_keep isl_ast_build *build)
 
static __isl_give isl_ast_buildupdate_values (__isl_take isl_ast_build *build, __isl_take isl_basic_set *bounds)
 
__isl_give isl_ast_buildisl_ast_build_set_loop_bounds (__isl_take isl_ast_build *build, __isl_take isl_basic_set *bounds)
 
__isl_give isl_ast_buildisl_ast_build_set_pending_generated (__isl_take isl_ast_build *build, __isl_take isl_basic_set *bounds)
 
static __isl_give isl_ast_buildisl_ast_build_restrict_internal (__isl_take isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_ast_buildisl_ast_build_restrict_generated (__isl_take isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_ast_buildisl_ast_build_replace_pending_by_guard (__isl_take isl_ast_build *build, __isl_take isl_set *guard)
 
__isl_give isl_ast_buildisl_ast_build_restrict (__isl_take isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_ast_buildisl_ast_build_set_executed (__isl_take isl_ast_build *build, __isl_take isl_union_map *executed)
 
int isl_ast_build_has_schedule_node (__isl_keep isl_ast_build *build)
 
__isl_give isl_schedule_nodeisl_ast_build_get_schedule_node (__isl_keep isl_ast_build *build)
 
static __isl_give isl_ast_buildextract_loop_types (__isl_take isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_set_schedule_node (__isl_take isl_ast_build *build, __isl_take isl_schedule_node *node)
 
__isl_give isl_ast_buildisl_ast_build_reset_schedule_node (__isl_take isl_ast_build *build)
 
__isl_give isl_setisl_ast_build_get_domain (__isl_keep isl_ast_build *build)
 
__isl_give isl_setisl_ast_build_get_pending (__isl_keep isl_ast_build *build)
 
__isl_give isl_setisl_ast_build_get_generated (__isl_keep isl_ast_build *build)
 
__isl_give isl_multi_affisl_ast_build_get_internal2input (__isl_keep isl_ast_build *build)
 
isl_size isl_ast_build_dim (__isl_keep isl_ast_build *build, enum isl_dim_type type)
 
__isl_give isl_spaceisl_ast_build_get_space (__isl_keep isl_ast_build *build, int internal)
 
__isl_give isl_spaceisl_ast_build_get_schedule_space (__isl_keep isl_ast_build *build)
 
__isl_give isl_union_mapisl_ast_build_get_schedule (__isl_keep isl_ast_build *build)
 
__isl_give isl_idisl_ast_build_get_iterator_id (__isl_keep isl_ast_build *build, int pos)
 
static __isl_give isl_ast_buildset_stride (__isl_take isl_ast_build *build, __isl_take isl_val *stride, __isl_take isl_aff *offset)
 
__isl_give isl_setisl_ast_build_get_stride_constraint (__isl_keep isl_ast_build *build)
 
__isl_give isl_multi_affisl_ast_build_get_stride_expansion (__isl_keep isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_include_stride (__isl_take isl_ast_build *build)
 
__isl_give isl_ast_buildisl_ast_build_detect_strides (__isl_take isl_ast_build *build, __isl_take isl_set *set)
 
static isl_bool free_of_depth (__isl_keep isl_map *map, void *user)
 
int isl_ast_build_options_involve_depth (__isl_keep isl_ast_build *build)
 
static __isl_give isl_mapconstruct_insertion_map (__isl_take isl_space *space, int pos)
 
static __isl_give isl_union_mapoptions_insert_dim (__isl_take isl_union_map *options, __isl_take isl_space *space, int pos)
 
static __isl_give isl_ast_buildnode_insert_dim (__isl_take isl_ast_build *build, int pos)
 
__isl_give isl_ast_buildisl_ast_build_insert_dim (__isl_take isl_ast_build *build, int pos)
 
__isl_give isl_ast_buildisl_ast_build_scale_down (__isl_take isl_ast_build *build, __isl_take isl_val *m, __isl_take isl_union_map *umap)
 
static __isl_give isl_id_list * generate_names (isl_ctx *ctx, int n, int first, __isl_keep isl_ast_build *build)
 
static __isl_give isl_union_mapembed_options (__isl_take isl_union_map *options, __isl_take isl_space *space)
 
__isl_give isl_ast_buildisl_ast_build_product (__isl_take isl_ast_build *build, __isl_take isl_space *space)
 
isl_bool isl_ast_build_aff_is_nonneg (__isl_keep isl_ast_build *build, __isl_keep isl_aff *aff)
 
isl_bool isl_ast_build_has_stride (__isl_keep isl_ast_build *build, int pos)
 
__isl_give isl_valisl_ast_build_get_stride (__isl_keep isl_ast_build *build, int pos)
 
__isl_give isl_affisl_ast_build_get_offset (__isl_keep isl_ast_build *build, int pos)
 
isl_bool isl_ast_build_has_affine_value (__isl_keep isl_ast_build *build, int pos)
 
__isl_give isl_union_mapisl_ast_build_substitute_values_union_map_domain (__isl_keep isl_ast_build *build, __isl_take isl_union_map *umap)
 
int isl_ast_build_has_value (__isl_keep isl_ast_build *build)
 
__isl_give isl_basic_setisl_ast_build_compute_gist_basic_set (__isl_keep isl_ast_build *build, __isl_take isl_basic_set *bset)
 
__isl_give isl_setisl_ast_build_compute_gist (__isl_keep isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_setisl_ast_build_specialize (__isl_keep isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_basic_setisl_ast_build_specialize_basic_set (__isl_keep isl_ast_build *build, __isl_take isl_basic_set *bset)
 
__isl_give isl_mapisl_ast_build_compute_gist_map_domain (__isl_keep isl_ast_build *build, __isl_take isl_map *map)
 
__isl_give isl_affisl_ast_build_compute_gist_aff (__isl_keep isl_ast_build *build, __isl_take isl_aff *aff)
 
__isl_give isl_pw_affisl_ast_build_compute_gist_pw_aff (__isl_keep isl_ast_build *build, __isl_take isl_pw_aff *pa)
 
__isl_give isl_pw_multi_affisl_ast_build_compute_gist_pw_multi_aff (__isl_keep isl_ast_build *build, __isl_take isl_pw_multi_aff *pma)
 
__isl_give isl_setisl_ast_build_get_option_domain (__isl_keep isl_ast_build *build, enum isl_ast_loop_type type)
 
enum isl_ast_loop_type isl_ast_build_get_loop_type (__isl_keep isl_ast_build *build, int isolated)
 
__isl_give isl_ast_buildisl_ast_build_extract_isolated (__isl_take isl_ast_build *build)
 
int isl_ast_build_has_isolated (__isl_keep isl_ast_build *build)
 
__isl_give isl_setisl_ast_build_get_isolated (__isl_keep isl_ast_build *build)
 
__isl_give isl_mapisl_ast_build_get_separation_class (__isl_keep isl_ast_build *build)
 
__isl_give isl_setisl_ast_build_eliminate_inner (__isl_keep isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_setisl_ast_build_eliminate_divs (__isl_keep isl_ast_build *build, __isl_take isl_set *set)
 
__isl_give isl_setisl_ast_build_eliminate (__isl_keep isl_ast_build *build, __isl_take isl_set *domain)
 
__isl_give isl_ast_buildisl_ast_build_set_single_valued (__isl_take isl_ast_build *build, int sv)
 

Variables

static const char * option_str []
 

Function Documentation

◆ any_eliminated()

static int any_eliminated ( isl_ast_build build)
static

◆ construct_insertion_map()

static __isl_give isl_map * construct_insertion_map ( __isl_take isl_space space,
int  pos 
)
static

◆ embed_options()

static __isl_give isl_union_map * embed_options ( __isl_take isl_union_map options,
__isl_take isl_space space 
)
static

◆ extract_loop_types()

static __isl_give isl_ast_build * extract_loop_types ( __isl_take isl_ast_build build)
static

◆ extract_single_piece()

static isl_stat extract_single_piece ( __isl_take isl_set set,
__isl_take isl_aff aff,
void *  user 
)
static

Definition at line 731 of file isl_ast_build.c.

References aff, isl_set_free(), isl_stat_error, p, set, and user.

Referenced by update_values().

◆ free_of_depth()

static isl_bool free_of_depth ( __isl_keep isl_map map,
void *  user 
)
static

◆ generate_name()

static __isl_give isl_id * generate_name ( isl_ctx ctx,
int  i,
__isl_keep isl_ast_build build 
)
static

◆ generate_names()

static __isl_give isl_id_list * generate_names ( isl_ctx ctx,
int  n,
int  first,
__isl_keep isl_ast_build build 
)
static

Definition at line 1757 of file isl_ast_build.c.

References generate_name(), id, and n.

Referenced by isl_ast_build_product().

◆ intersect_stride_constraint()

static __isl_give isl_set * intersect_stride_constraint ( __isl_take isl_set set,
__isl_keep isl_ast_build build 
)
static

◆ isl_ast_build_aff_is_nonneg()

isl_bool isl_ast_build_aff_is_nonneg ( __isl_keep isl_ast_build build,
__isl_keep isl_aff aff 
)

◆ isl_ast_build_align_params()

__isl_give isl_ast_build * isl_ast_build_align_params ( __isl_take isl_ast_build build,
__isl_take isl_space model 
)

◆ isl_ast_build_alloc()

__isl_give isl_ast_build * isl_ast_build_alloc ( isl_ctx ctx)

◆ isl_ast_build_clear_local_info()

__isl_give isl_ast_build * isl_ast_build_clear_local_info ( __isl_take isl_ast_build build)

◆ isl_ast_build_compute_gist()

__isl_give isl_set * isl_ast_build_compute_gist ( __isl_keep isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_compute_gist_aff()

__isl_give isl_aff * isl_ast_build_compute_gist_aff ( __isl_keep isl_ast_build build,
__isl_take isl_aff aff 
)

Definition at line 2131 of file isl_ast_build.c.

References aff, isl_aff_free(), isl_aff_gist(), and isl_set_copy().

Referenced by lower_bound().

◆ isl_ast_build_compute_gist_basic_set()

__isl_give isl_basic_set * isl_ast_build_compute_gist_basic_set ( __isl_keep isl_ast_build build,
__isl_take isl_basic_set bset 
)

◆ isl_ast_build_compute_gist_map_domain()

__isl_give isl_map * isl_ast_build_compute_gist_map_domain ( __isl_keep isl_ast_build build,
__isl_take isl_map map 
)

Definition at line 2112 of file isl_ast_build.c.

References isl_map_free(), isl_map_gist_domain(), isl_set_copy(), and map.

Referenced by generate_domain().

◆ isl_ast_build_compute_gist_pw_aff()

__isl_give isl_pw_aff * isl_ast_build_compute_gist_pw_aff ( __isl_keep isl_ast_build build,
__isl_take isl_pw_aff pa 
)

◆ isl_ast_build_compute_gist_pw_multi_aff()

__isl_give isl_pw_multi_aff * isl_ast_build_compute_gist_pw_multi_aff ( __isl_keep isl_ast_build build,
__isl_take isl_pw_multi_aff pma 
)

◆ isl_ast_build_copy()

__isl_give isl_ast_build * isl_ast_build_copy ( __isl_keep isl_ast_build build)

◆ isl_ast_build_cow()

__isl_give isl_ast_build * isl_ast_build_cow ( __isl_take isl_ast_build build)

◆ isl_ast_build_detect_strides()

__isl_give isl_ast_build * isl_ast_build_detect_strides ( __isl_take isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_dim()

isl_size isl_ast_build_dim ( __isl_keep isl_ast_build build,
enum isl_dim_type  type 
)

◆ isl_ast_build_dump()

void isl_ast_build_dump ( __isl_keep isl_ast_build build)

◆ isl_ast_build_dup()

__isl_give isl_ast_build * isl_ast_build_dup ( __isl_keep isl_ast_build build)

◆ isl_ast_build_eliminate()

__isl_give isl_set * isl_ast_build_eliminate ( __isl_keep isl_ast_build build,
__isl_take isl_set domain 
)

◆ isl_ast_build_eliminate_divs()

__isl_give isl_set * isl_ast_build_eliminate_divs ( __isl_keep isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_eliminate_inner()

__isl_give isl_set * isl_ast_build_eliminate_inner ( __isl_keep isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_extract_isolated()

__isl_give isl_ast_build * isl_ast_build_extract_isolated ( __isl_take isl_ast_build build)

◆ isl_ast_build_free()

__isl_null isl_ast_build * isl_ast_build_free ( __isl_take isl_ast_build build)

Definition at line 303 of file isl_ast_build.c.

References isl_pw_aff_free(), isl_schedule_node_free(), isl_set_free(), isl_union_map_free(), and isl_vec_free().

Referenced by add_domain(), add_intermediate_piece(), add_last_piece(), add_node(), at_each_domain(), build_ast_from_band(), build_ast_from_context(), build_ast_from_domain(), build_ast_from_expansion(), build_ast_from_filter(), build_ast_from_guard(), build_ast_from_leaf(), build_ast_from_mark(), build_ast_from_schedule_node(), build_ast_from_sequence(), call_create_leaf(), construct_ast_from_schedule(), construct_ast_from_union_map(), create_leaf(), create_node(), create_node_scaled(), extract_loop_types(), foreach_iteration(), generate_code(), generate_component(), generate_components(), generate_inner_level(), generate_next_level(), generate_shift_component(), generate_shifted_component_flat(), generate_shifted_component_parts(), generate_shifted_component_tree(), generate_shifted_component_tree_base(), generate_shifted_component_tree_part(), generate_shifted_component_tree_separate(), generate_shifted_component_tree_unroll(), polly::IslAst::init(), isl_ast_build_align_params(), isl_ast_build_clear_local_info(), isl_ast_build_detect_strides(), isl_ast_build_dup(), isl_ast_build_expr_from_basic_set(), isl_ast_build_extract_isolated(), isl_ast_build_include_stride(), isl_ast_build_init(), isl_ast_build_init_derived(), isl_ast_build_insert_dim(), isl_ast_build_node_from_schedule(), isl_ast_build_node_from_schedule_map(), isl_ast_build_product(), isl_ast_build_replace_pending_by_guard(), isl_ast_build_restrict(), isl_ast_build_restrict_generated(), isl_ast_build_restrict_internal(), isl_ast_build_scale_down(), isl_ast_build_set_executed(), isl_ast_build_set_iterators(), isl_ast_build_set_loop_bounds(), isl_ast_build_set_options(), isl_ast_build_set_pending_generated(), isl_ast_build_set_schedule_node(), isl_ast_graft_alloc_from_children(), node_insert_dim(), polly::IslNodeBuilder::preloadInvariantLoad(), print_pw_aff_c(), set_stride(), test_ast_build(), test_ast_expr(), test_ast_gen1(), test_ast_gen2(), test_ast_gen3(), test_ast_gen4(), test_ast_gen5(), update_values(), and isl::ast_build::~ast_build().

◆ isl_ast_build_from_context()

__isl_give isl_ast_build * isl_ast_build_from_context ( __isl_take isl_set set)

◆ isl_ast_build_get_ctx()

isl_ctx * isl_ast_build_get_ctx ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_depth()

isl_size isl_ast_build_get_depth ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_domain()

__isl_give isl_set * isl_ast_build_get_domain ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_generated()

__isl_give isl_set * isl_ast_build_get_generated ( __isl_keep isl_ast_build build)

Definition at line 1158 of file isl_ast_build.c.

References isl_set_copy().

Referenced by add_domain(), build_ast_from_extension(), extract_pending(), and store_guard().

◆ isl_ast_build_get_internal2input()

__isl_give isl_multi_aff * isl_ast_build_get_internal2input ( __isl_keep isl_ast_build build)

Definition at line 1167 of file isl_ast_build.c.

Referenced by build_ast_from_context().

◆ isl_ast_build_get_isolated()

__isl_give isl_set * isl_ast_build_get_isolated ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_iterator_id()

__isl_give isl_id * isl_ast_build_get_iterator_id ( __isl_keep isl_ast_build build,
int  pos 
)

Definition at line 1289 of file isl_ast_build.c.

References pos().

Referenced by create_for(), isl_ast_build_get_schedule_space(), set_iterator_names(), and var().

◆ isl_ast_build_get_loop_type()

enum isl_ast_loop_type isl_ast_build_get_loop_type ( __isl_keep isl_ast_build build,
int  isolated 
)

◆ isl_ast_build_get_offset()

__isl_give isl_aff * isl_ast_build_get_offset ( __isl_keep isl_ast_build build,
int  pos 
)

◆ isl_ast_build_get_option_domain()

__isl_give isl_set * isl_ast_build_get_option_domain ( __isl_keep isl_ast_build build,
enum isl_ast_loop_type  type 
)

◆ isl_ast_build_get_pending()

__isl_give isl_set * isl_ast_build_get_pending ( __isl_keep isl_ast_build build)

Definition at line 1150 of file isl_ast_build.c.

References isl_set_copy().

Referenced by add_domain(), call_create_leaf(), and extract_pending().

◆ isl_ast_build_get_schedule()

__isl_give isl_union_map * isl_ast_build_get_schedule ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_schedule_map()

__isl_give isl_map * isl_ast_build_get_schedule_map ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_schedule_map_multi_aff()

__isl_give isl_multi_aff * isl_ast_build_get_schedule_map_multi_aff ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_schedule_node()

__isl_give isl_schedule_node * isl_ast_build_get_schedule_node ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_schedule_space()

__isl_give isl_space * isl_ast_build_get_schedule_space ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_separation_class()

__isl_give isl_map * isl_ast_build_get_separation_class ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_space()

__isl_give isl_space * isl_ast_build_get_space ( __isl_keep isl_ast_build build,
int  internal 
)

◆ isl_ast_build_get_stride()

__isl_give isl_val * isl_ast_build_get_stride ( __isl_keep isl_ast_build build,
int  pos 
)

◆ isl_ast_build_get_stride_constraint()

__isl_give isl_set * isl_ast_build_get_stride_constraint ( __isl_keep isl_ast_build build)

◆ isl_ast_build_get_stride_expansion()

__isl_give isl_multi_aff * isl_ast_build_get_stride_expansion ( __isl_keep isl_ast_build build)

◆ isl_ast_build_has_affine_value()

isl_bool isl_ast_build_has_affine_value ( __isl_keep isl_ast_build build,
int  pos 
)

◆ isl_ast_build_has_isolated()

int isl_ast_build_has_isolated ( __isl_keep isl_ast_build build)

◆ isl_ast_build_has_schedule_node()

int isl_ast_build_has_schedule_node ( __isl_keep isl_ast_build build)

◆ isl_ast_build_has_stride()

isl_bool isl_ast_build_has_stride ( __isl_keep isl_ast_build build,
int  pos 
)

◆ isl_ast_build_has_value()

int isl_ast_build_has_value ( __isl_keep isl_ast_build build)

Definition at line 2025 of file isl_ast_build.c.

Referenced by create_node_scaled().

◆ isl_ast_build_include_stride()

__isl_give isl_ast_build * isl_ast_build_include_stride ( __isl_take isl_ast_build build)

◆ isl_ast_build_increase_depth()

__isl_give isl_ast_build * isl_ast_build_increase_depth ( __isl_take isl_ast_build build)

◆ isl_ast_build_init()

static __isl_give isl_ast_build * isl_ast_build_init ( __isl_take isl_ast_build build,
__isl_take isl_space space 
)
static

◆ isl_ast_build_init_derived()

static __isl_give isl_ast_build * isl_ast_build_init_derived ( __isl_take isl_ast_build build,
__isl_take isl_space space 
)
static

◆ isl_ast_build_insert_dim()

__isl_give isl_ast_build * isl_ast_build_insert_dim ( __isl_take isl_ast_build build,
int  pos 
)

◆ isl_ast_build_map_to_iterator()

__isl_give isl_map * isl_ast_build_map_to_iterator ( __isl_keep isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_need_schedule_map()

isl_bool isl_ast_build_need_schedule_map ( __isl_keep isl_ast_build build)

◆ isl_ast_build_options_involve_depth()

int isl_ast_build_options_involve_depth ( __isl_keep isl_ast_build build)

Definition at line 1481 of file isl_ast_build.c.

References free_of_depth(), isl_bool_not(), and isl_union_map_every_map().

Referenced by generate_component().

◆ isl_ast_build_product()

__isl_give isl_ast_build * isl_ast_build_product ( __isl_take isl_ast_build build,
__isl_take isl_space space 
)

◆ isl_ast_build_replace_pending_by_guard()

__isl_give isl_ast_build * isl_ast_build_replace_pending_by_guard ( __isl_take isl_ast_build build,
__isl_take isl_set guard 
)

◆ isl_ast_build_reset_schedule_map()

static void isl_ast_build_reset_schedule_map ( __isl_keep isl_ast_build build)
static

Definition at line 556 of file isl_ast_build.c.

Referenced by isl_ast_build_increase_depth(), and update_values().

◆ isl_ast_build_reset_schedule_node()

__isl_give isl_ast_build * isl_ast_build_reset_schedule_node ( __isl_take isl_ast_build build)

Definition at line 1128 of file isl_ast_build.c.

References isl_ast_build_cow(), and isl_schedule_node_free().

Referenced by generate_inner_level().

◆ isl_ast_build_restrict()

__isl_give isl_ast_build * isl_ast_build_restrict ( __isl_take isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_restrict_generated()

__isl_give isl_ast_build * isl_ast_build_restrict_generated ( __isl_take isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_restrict_internal()

static __isl_give isl_ast_build * isl_ast_build_restrict_internal ( __isl_take isl_ast_build build,
__isl_take isl_set set 
)
static

◆ isl_ast_build_scale_down()

__isl_give isl_ast_build * isl_ast_build_scale_down ( __isl_take isl_ast_build build,
__isl_take isl_val m,
__isl_take isl_union_map umap 
)

◆ isl_ast_build_set_after_each_for()

__isl_give isl_ast_build * isl_ast_build_set_after_each_for ( __isl_take isl_ast_build build,
__isl_give isl_ast_node *(*)(__isl_take isl_ast_node *node, __isl_keep isl_ast_build *build, void *user fn,
void *  user 
)

Definition at line 430 of file isl_ast_build.c.

References fn, isl_ast_build_cow(), and user.

Referenced by polly::IslAst::init(), and test_ast_gen1().

◆ isl_ast_build_set_after_each_mark()

__isl_give isl_ast_build * isl_ast_build_set_after_each_mark ( __isl_take isl_ast_build build,
__isl_give isl_ast_node *(*)(__isl_take isl_ast_node *node, __isl_keep isl_ast_build *build, void *user fn,
void *  user 
)

Definition at line 466 of file isl_ast_build.c.

References fn, isl_ast_build_cow(), and user.

Referenced by polly::IslAst::init().

◆ isl_ast_build_set_at_each_domain()

__isl_give isl_ast_build * isl_ast_build_set_at_each_domain ( __isl_take isl_ast_build build,
__isl_give isl_ast_node *(*)(__isl_take isl_ast_node *node, __isl_keep isl_ast_build *build, void *user fn,
void *  user 
)

◆ isl_ast_build_set_before_each_for()

__isl_give isl_ast_build * isl_ast_build_set_before_each_for ( __isl_take isl_ast_build build,
__isl_give isl_id *(*)(__isl_keep isl_ast_build *build, void *user fn,
void *  user 
)

Definition at line 412 of file isl_ast_build.c.

References fn, isl_ast_build_cow(), and user.

Referenced by polly::IslAst::init(), and test_ast_gen1().

◆ isl_ast_build_set_before_each_mark()

__isl_give isl_ast_build * isl_ast_build_set_before_each_mark ( __isl_take isl_ast_build build,
isl_stat(*)(__isl_keep isl_id *mark, __isl_keep isl_ast_build *build, void *user fn,
void *  user 
)

Definition at line 448 of file isl_ast_build.c.

References fn, isl_ast_build_cow(), and user.

Referenced by polly::IslAst::init().

◆ isl_ast_build_set_create_leaf()

__isl_give isl_ast_build * isl_ast_build_set_create_leaf ( __isl_take isl_ast_build build,
__isl_give isl_ast_node *(*)(__isl_take isl_ast_build *build, void *user fn,
void *  user 
)

Definition at line 484 of file isl_ast_build.c.

References fn, isl_ast_build_cow(), and user.

Referenced by test_ast_gen5().

◆ isl_ast_build_set_executed()

__isl_give isl_ast_build * isl_ast_build_set_executed ( __isl_take isl_ast_build build,
__isl_take isl_union_map executed 
)

◆ isl_ast_build_set_iterators()

__isl_give isl_ast_build * isl_ast_build_set_iterators ( __isl_take isl_ast_build build,
__isl_take isl_id_list *  iterators 
)

◆ isl_ast_build_set_loop_bounds()

__isl_give isl_ast_build * isl_ast_build_set_loop_bounds ( __isl_take isl_ast_build build,
__isl_take isl_basic_set bounds 
)

◆ isl_ast_build_set_options()

__isl_give isl_ast_build * isl_ast_build_set_options ( __isl_take isl_ast_build build,
__isl_take isl_union_map options 
)

◆ isl_ast_build_set_pending_generated()

__isl_give isl_ast_build * isl_ast_build_set_pending_generated ( __isl_take isl_ast_build build,
__isl_take isl_basic_set bounds 
)

◆ isl_ast_build_set_schedule_node()

__isl_give isl_ast_build * isl_ast_build_set_schedule_node ( __isl_take isl_ast_build build,
__isl_take isl_schedule_node node 
)

◆ isl_ast_build_set_single_valued()

__isl_give isl_ast_build * isl_ast_build_set_single_valued ( __isl_take isl_ast_build build,
int  sv 
)

◆ isl_ast_build_specialize()

__isl_give isl_set * isl_ast_build_specialize ( __isl_keep isl_ast_build build,
__isl_take isl_set set 
)

◆ isl_ast_build_specialize_basic_set()

__isl_give isl_basic_set * isl_ast_build_specialize_basic_set ( __isl_keep isl_ast_build build,
__isl_take isl_basic_set bset 
)

Definition at line 2097 of file isl_ast_build.c.

References isl_basic_set_free(), and isl_basic_set_preimage_multi_aff().

Referenced by create_node_scaled().

◆ isl_ast_build_substitute_values_union_map_domain()

__isl_give isl_union_map * isl_ast_build_substitute_values_union_map_domain ( __isl_keep isl_ast_build build,
__isl_take isl_union_map umap 
)

◆ node_insert_dim()

static __isl_give isl_ast_build * node_insert_dim ( __isl_take isl_ast_build build,
int  pos 
)
static

◆ options_insert_dim()

static __isl_give isl_union_map * options_insert_dim ( __isl_take isl_union_map options,
__isl_take isl_space space,
int  pos 
)
static

◆ set_stride()

static __isl_give isl_ast_build * set_stride ( __isl_take isl_ast_build build,
__isl_take isl_val stride,
__isl_take isl_aff offset 
)
static

◆ update_values()

static __isl_give isl_ast_build * update_values ( __isl_take isl_ast_build build,
__isl_take isl_basic_set bounds 
)
static

Variable Documentation

◆ option_str

const char* option_str[]
static
Initial value:
= {
[isl_ast_loop_atomic] = "atomic",
[isl_ast_loop_unroll] = "unroll",
[isl_ast_loop_separate] = "separate"
}
@ isl_ast_loop_atomic
Definition: ast_type.h:94
@ isl_ast_loop_separate
Definition: ast_type.h:96
@ isl_ast_loop_unroll
Definition: ast_type.h:95

Definition at line 1521 of file isl_ast_build.c.

Referenced by isl_ast_build_get_option_domain(), and options_insert_dim().