Polly 19.0.0git
Classes | Functions
isl_scheduler.h File Reference
#include <isl/aff_type.h>
#include <isl/hash.h>
#include <isl/id_type.h>
#include <isl/map_type.h>
#include <isl/map_to_basic_set.h>
#include <isl/mat.h>
#include <isl/space_type.h>
#include <isl/set_type.h>
#include <isl/val_type.h>
#include <isl/vec.h>
#include <isl/union_map_type.h>
#include "isl_schedule_constraints.h"
#include "isl_tab.h"

Go to the source code of this file.

Classes

struct  isl_sched_node
 
struct  isl_sched_edge
 
struct  isl_sched_graph
 

Functions

int isl_sched_node_scc_exactly (struct isl_sched_node *node, int scc)
 
isl_stat isl_sched_node_update_vmap (struct isl_sched_node *node)
 
__isl_give isl_multi_affisl_sched_node_extract_partial_schedule_multi_aff (struct isl_sched_node *node, int first, int n)
 
int isl_sched_edge_has_type (struct isl_sched_edge *edge, enum isl_edge_type type)
 
int isl_sched_edge_is_condition (struct isl_sched_edge *edge)
 
int isl_sched_edge_is_conditional_validity (struct isl_sched_edge *edge)
 
int isl_sched_edge_scc_exactly (struct isl_sched_edge *edge, int scc)
 
int isl_sched_edge_is_proximity (struct isl_sched_edge *edge)
 
isl_stat isl_sched_graph_init (struct isl_sched_graph *graph, __isl_keep isl_schedule_constraints *sc)
 
void isl_sched_graph_free (isl_ctx *ctx, struct isl_sched_graph *graph)
 
int isl_sched_graph_is_node (struct isl_sched_graph *graph, struct isl_sched_node *node)
 
isl_bool isl_sched_graph_has_validity_edge (struct isl_sched_graph *graph, struct isl_sched_node *src, struct isl_sched_node *dst)
 
struct isl_sched_nodeisl_sched_graph_find_node (isl_ctx *ctx, struct isl_sched_graph *graph, __isl_keep isl_space *space)
 
isl_stat isl_sched_graph_detect_ccs (isl_ctx *ctx, struct isl_sched_graph *graph, isl_bool(*follows)(int i, int j, void *user))
 
__isl_give isl_union_setisl_sched_graph_extract_scc (isl_ctx *ctx, struct isl_sched_graph *graph, int scc)
 
__isl_give isl_union_set_listisl_sched_graph_extract_sccs (isl_ctx *ctx, struct isl_sched_graph *graph)
 
isl_stat isl_sched_graph_extract_sub_graph (isl_ctx *ctx, struct isl_sched_graph *graph, int(*node_pred)(struct isl_sched_node *node, int data), int(*edge_pred)(struct isl_sched_edge *edge, int data), int data, struct isl_sched_graph *sub)
 
isl_stat isl_sched_graph_compute_maxvar (struct isl_sched_graph *graph)
 
isl_stat isl_schedule_node_compute_wcc_band (isl_ctx *ctx, struct isl_sched_graph *graph)
 
__isl_give isl_schedule_nodeisl_schedule_node_compute_finish_band (__isl_take isl_schedule_node *node, struct isl_sched_graph *graph, int initialized)
 

Function Documentation

◆ isl_sched_edge_has_type()

int isl_sched_edge_has_type ( struct isl_sched_edge edge,
enum isl_edge_type  type 
)

◆ isl_sched_edge_is_condition()

int isl_sched_edge_is_condition ( struct isl_sched_edge edge)

◆ isl_sched_edge_is_conditional_validity()

int isl_sched_edge_is_conditional_validity ( struct isl_sched_edge edge)

◆ isl_sched_edge_is_proximity()

int isl_sched_edge_is_proximity ( struct isl_sched_edge edge)

◆ isl_sched_edge_scc_exactly()

int isl_sched_edge_scc_exactly ( struct isl_sched_edge edge,
int  scc 
)

◆ isl_sched_graph_compute_maxvar()

isl_stat isl_sched_graph_compute_maxvar ( struct isl_sched_graph graph)

◆ isl_sched_graph_detect_ccs()

isl_stat isl_sched_graph_detect_ccs ( isl_ctx ctx,
struct isl_sched_graph graph,
isl_bool(*)(int i, int j, void *user follows 
)

◆ isl_sched_graph_extract_scc()

__isl_give isl_union_set * isl_sched_graph_extract_scc ( isl_ctx ctx,
struct isl_sched_graph graph,
int  scc 
)

◆ isl_sched_graph_extract_sccs()

__isl_give isl_union_set_list * isl_sched_graph_extract_sccs ( isl_ctx ctx,
struct isl_sched_graph graph 
)

◆ isl_sched_graph_extract_sub_graph()

isl_stat isl_sched_graph_extract_sub_graph ( isl_ctx ctx,
struct isl_sched_graph graph,
int(*)(struct isl_sched_node *node, int data)  node_pred,
int(*)(struct isl_sched_edge *edge, int data)  edge_pred,
int  data,
struct isl_sched_graph sub 
)

◆ isl_sched_graph_find_node()

struct isl_sched_node * isl_sched_graph_find_node ( isl_ctx ctx,
struct isl_sched_graph graph,
__isl_keep isl_space space 
)

◆ isl_sched_graph_free()

void isl_sched_graph_free ( isl_ctx ctx,
struct isl_sched_graph graph 
)

◆ isl_sched_graph_has_validity_edge()

isl_bool isl_sched_graph_has_validity_edge ( struct isl_sched_graph graph,
struct isl_sched_node src,
struct isl_sched_node dst 
)

◆ isl_sched_graph_init()

isl_stat isl_sched_graph_init ( struct isl_sched_graph graph,
__isl_keep isl_schedule_constraints sc 
)

◆ isl_sched_graph_is_node()

int isl_sched_graph_is_node ( struct isl_sched_graph graph,
struct isl_sched_node node 
)

◆ isl_sched_node_extract_partial_schedule_multi_aff()

__isl_give isl_multi_aff * isl_sched_node_extract_partial_schedule_multi_aff ( struct isl_sched_node node,
int  first,
int  n 
)

◆ isl_sched_node_scc_exactly()

int isl_sched_node_scc_exactly ( struct isl_sched_node node,
int  scc 
)

◆ isl_sched_node_update_vmap()

isl_stat isl_sched_node_update_vmap ( struct isl_sched_node node)

◆ isl_schedule_node_compute_finish_band()

__isl_give isl_schedule_node * isl_schedule_node_compute_finish_band ( __isl_take isl_schedule_node node,
struct isl_sched_graph graph,
int  initialized 
)

◆ isl_schedule_node_compute_wcc_band()

isl_stat isl_schedule_node_compute_wcc_band ( isl_ctx ctx,
struct isl_sched_graph graph 
)