Polly 20.0.0git
|
#include <stdio.h>
#include <isl/hash.h>
#include <isl/aff_type.h>
#include <isl/obj.h>
#include <isl/val_type.h>
#include <isl/schedule_type.h>
Go to the source code of this file.
Typedefs | |
typedef struct isl_stream | isl_stream |
Enumerations | |
enum | isl_token_type { ISL_TOKEN_ERROR = -1 , ISL_TOKEN_UNKNOWN = 256 , ISL_TOKEN_VALUE , ISL_TOKEN_IDENT , ISL_TOKEN_GE , ISL_TOKEN_LE , ISL_TOKEN_GT , ISL_TOKEN_LT , ISL_TOKEN_NE , ISL_TOKEN_EQ_EQ , ISL_TOKEN_LEX_GE , ISL_TOKEN_LEX_LE , ISL_TOKEN_LEX_GT , ISL_TOKEN_LEX_LT , ISL_TOKEN_TO , ISL_TOKEN_AND , ISL_TOKEN_OR , ISL_TOKEN_EXISTS , ISL_TOKEN_NOT , ISL_TOKEN_DEF , ISL_TOKEN_INFTY , ISL_TOKEN_NAN , ISL_TOKEN_MIN , ISL_TOKEN_MAX , ISL_TOKEN_RAT , ISL_TOKEN_TRUE , ISL_TOKEN_FALSE , ISL_TOKEN_CEILD , ISL_TOKEN_FLOORD , ISL_TOKEN_MOD , ISL_TOKEN_STRING , ISL_TOKEN_MAP , ISL_TOKEN_AFF , ISL_TOKEN_CEIL , ISL_TOKEN_FLOOR , ISL_TOKEN_IMPLIES , ISL_TOKEN_INT_DIV , ISL_TOKEN_LAST } |
typedef struct isl_stream isl_stream |
enum isl_token_type |
int isl_stream_eat | ( | __isl_keep isl_stream * | s, |
int | type | ||
) |
Definition at line 747 of file isl_stream.c.
References isl_stream_error(), isl_stream_next_token(), isl_token_free(), isl_token::s, isl_token::type, and type.
Referenced by accept_affine_factor(), accept_div(), accept_minmax(), accept_piecewise_affine(), accept_ternary(), FN(), is_rational(), isl_stream_read_ast_graft(), isl_stream_read_multi_aff(), isl_stream_read_multi_union_pw_aff(), isl_stream_read_space(), isl_stream_yaml_read_end_mapping(), isl_stream_yaml_read_end_sequence(), LIST(), main(), MULTI(), obj_read(), obj_read_poly_or_fold(), read_exists(), read_factor(), read_key(), read_multi_union_pw_aff_body(), read_multi_union_pw_aff_core(), read_pw_aff_with_dom(), read_tuple_space(), read_union_pw_aff_el(), read_union_set_body(), read_universe_params(), and resolve_paren_expr().
int isl_stream_eat_if_available | ( | __isl_keep isl_stream * | s, |
int | type | ||
) |
Definition at line 703 of file isl_stream.c.
References isl_stream_next_token(), isl_stream_push_token(), isl_token_free(), isl_token::s, isl_token::type, and type.
Referenced by accept_affine_factor(), accept_cst_factor(), accept_div(), accept_piecewise_affine(), FN(), isl_stream_read_multi_aff(), isl_stream_read_multi_union_pw_aff(), isl_stream_read_space(), isl_stream_read_val(), isl_stream_read_with_params_union_pw_multi_aff(), isl_stream_yaml_next(), LIST(), next_signed_value_fn(), next_token(), obj_read_disjuncts(), obj_read_poly_or_fold(), read_conditional_multi_pw_aff(), read_conjunct(), read_conjuncts(), read_disjuncts(), read_exists(), read_factor(), read_formula(), read_multi_union_pw_aff_body(), read_space_tuples(), read_tuple_pw_aff_el(), read_union_pw_aff_with_dom(), and resolve_paren_expr().
void isl_stream_error | ( | __isl_keep isl_stream * | s, |
struct isl_token * | tok, | ||
char * | msg | ||
) |
Definition at line 142 of file isl_stream.c.
References isl_token::col, isl_token::is_keyword, isl_ctx_set_full_error(), isl_error_invalid, isl_int_print, ISL_ON_ERROR_ABORT, ISL_ON_ERROR_CONTINUE, isl_printer_free(), isl_printer_print_map(), isl_printer_print_pw_aff(), isl_printer_to_file(), ISL_TOKEN_AFF, ISL_TOKEN_IDENT, ISL_TOKEN_MAP, ISL_TOKEN_VALUE, isl_token::line, isl_token::map, p, isl_token::pwaff, isl_token::s, isl_token::type, isl_token::u, and isl_token::v.
Referenced by accept_affine(), accept_affine_factor(), accept_affine_list(), accept_cst_factor(), add_constraint(), affine_mod(), basic_map_read_polylib(), basic_map_read_polylib_constraint(), eat_key(), isl_stream_eat(), isl_stream_free(), isl_stream_read_ast_expr(), isl_stream_read_ast_node(), isl_stream_read_id(), isl_stream_read_schedule_constraints(), isl_stream_read_schedule_tree(), isl_stream_read_union_access_info(), isl_stream_read_val(), isl_stream_yaml_next(), isl_stream_yaml_read_start_mapping(), isl_stream_yaml_read_start_sequence(), isl_vec_read_polylib(), KEY_EXTRACT(), map_read_polylib(), next_key(), next_signed_value_fn(), next_token(), obj_add(), obj_read(), optional_power(), pw_aff_div_by_cst(), read_aff_domain(), read_band(), read_context(), read_defined_var_list(), read_domain(), read_extension(), read_factor(), read_filter(), read_guard(), read_mark(), read_optional_formula(), read_tuple_id(), and read_tuple_pw_aff_el().
void isl_stream_flush_tokens | ( | __isl_keep isl_stream * | s | ) |
Definition at line 789 of file isl_stream.c.
References isl_token_free().
void isl_stream_free | ( | __isl_take isl_stream * | s | ) |
Definition at line 805 of file isl_stream.c.
References free_keyword(), isl_ctx_deref(), isl_hash_table_foreach(), isl_hash_table_free(), isl_stream_error(), isl_stream_next_token(), isl_token_free(), and isl_token::s.
Referenced by FN(), ISL_ARG_CHOICE(), isl_basic_map_read_from_file(), isl_basic_set_read_from_file(), isl_map_read_from_file(), isl_pw_qpolynomial_read_from_file(), isl_schedule_constraints_read_from_file(), isl_schedule_read_from_file(), isl_set_read_from_file(), isl_stream_new(), isl_union_access_info_read_from_file(), isl_union_map_read_from_file(), isl_union_set_read_from_file(), isl_vec_read_from_file(), and main().
isl_ctx * isl_stream_get_ctx | ( | __isl_keep isl_stream * | s | ) |
Definition at line 800 of file isl_stream.c.
Referenced by construct_ast_from_union_map(), FN(), isl_stream_read_ast_node(), isl_stream_read_id(), isl_stream_read_schedule(), isl_stream_read_schedule_constraints(), isl_stream_read_schedule_tree(), isl_stream_read_union_access_info(), isl_stream_yaml_read_end_mapping(), isl_stream_yaml_read_end_sequence(), KEY_EXTRACT(), LIST(), next_key(), pop_state(), read_band(), read_context(), read_domain(), read_expansion(), read_extension(), read_filter(), read_for(), read_guard(), read_key(), read_mark(), and update_state().
int isl_stream_is_empty | ( | __isl_keep isl_stream * | s | ) |
Definition at line 766 of file isl_stream.c.
References isl_stream_next_token(), isl_stream_push_token(), and isl_token::s.
__isl_give isl_stream * isl_stream_new_file | ( | isl_ctx * | ctx, |
FILE * | file | ||
) |
Definition at line 219 of file isl_stream.c.
References isl_stream_new(), and isl_token::s.
Referenced by ISL_ARG_CHOICE(), isl_basic_map_read_from_file(), isl_basic_set_read_from_file(), isl_map_read_from_file(), isl_pw_qpolynomial_read_from_file(), isl_schedule_constraints_read_from_file(), isl_schedule_read_from_file(), isl_set_read_from_file(), isl_union_access_info_read_from_file(), isl_union_map_read_from_file(), isl_union_set_read_from_file(), isl_vec_read_from_file(), and main().
__isl_give isl_stream * isl_stream_new_str | ( | isl_ctx * | ctx, |
const char * | str | ||
) |
Definition at line 228 of file isl_stream.c.
References isl_stream_new(), isl_token::s, and str.
Referenced by FN().
struct isl_token * isl_stream_next_token | ( | __isl_keep isl_stream * | s | ) |
Definition at line 693 of file isl_stream.c.
References next_token(), and isl_token::s.
Referenced by accept_affine_list(), accept_minmax(), add_constraint(), basic_map_read_polylib(), basic_map_read_polylib_constraint(), FN(), is_rational(), isl_stream_eat(), isl_stream_eat_if_available(), isl_stream_free(), isl_stream_is_empty(), isl_stream_next_token_is(), isl_stream_read_id(), isl_stream_read_ident_if_available(), isl_stream_read_schedule_tree(), isl_stream_yaml_next(), isl_stream_yaml_read_end_mapping(), isl_stream_yaml_read_end_sequence(), isl_stream_yaml_read_start_mapping(), isl_stream_yaml_read_start_sequence(), isl_vec_read_polylib(), KEY_GET(), map_read_polylib(), next_is_comparator(), next_is_domain_colon(), next_is_empty_tuple(), next_is_fresh_ident(), next_is_param_tuple(), next_is_schedule(), next_is_sequence(), next_is_tuple(), next_key(), next_signed_value(), next_token(), obj_read(), obj_read_body(), optional_power(), read_aff_domain(), read_band(), read_children(), read_conjunct(), read_context(), read_defined_var_list(), read_domain(), read_expansion(), read_extension(), read_factor(), read_filter(), read_guard(), read_mark(), read_optional_formula(), read_tuple_list(), read_tuple_space(), resolve_paren_expr(), and set_current_line_col().
int isl_stream_next_token_is | ( | __isl_keep isl_stream * | s, |
int | type | ||
) |
Definition at line 718 of file isl_stream.c.
References isl_stream_next_token(), isl_stream_push_token(), isl_token::s, isl_token::type, and type.
Referenced by accept_affine_factor(), is_rational(), isl_stream_read_multi_union_pw_aff(), isl_stream_read_with_params_union_pw_multi_aff(), isl_stream_yaml_next(), next_is_condition_start(), next_is_domain_colon(), next_is_end_tuple_element(), next_is_tuple(), obj_read_body(), obj_read_disjuncts(), read_conjunct(), read_disjuncts(), read_factor(), read_multi_union_pw_aff_body(), read_tuple_list(), resolve_paren_expr(), and update_piecewise_affine_colon().
struct isl_token * isl_stream_next_token_on_same_line | ( | __isl_keep isl_stream * | s | ) |
Definition at line 698 of file isl_stream.c.
References next_token(), and isl_token::s.
Referenced by basic_map_read_polylib(), map_read_polylib(), and next_signed_value_on_same_line().
void isl_stream_push_token | ( | __isl_keep isl_stream * | s, |
struct isl_token * | tok | ||
) |
Definition at line 311 of file isl_stream.c.
References isl_assert, and isl_token::s.
Referenced by accept_affine(), accept_affine_factor(), accept_affine_list(), add_constraint(), FN(), is_rational(), isl_stream_eat_if_available(), isl_stream_is_empty(), isl_stream_next_token_is(), isl_stream_read_ident_if_available(), isl_stream_read_schedule_tree(), isl_stream_yaml_next(), isl_stream_yaml_read_end_mapping(), isl_stream_yaml_read_end_sequence(), isl_stream_yaml_read_start_mapping(), isl_stream_yaml_read_start_sequence(), map_read_polylib(), next_is_comparator(), next_is_domain_colon(), next_is_empty_tuple(), next_is_fresh_ident(), next_is_param_tuple(), next_is_schedule(), next_is_sequence(), next_is_tuple(), next_token(), obj_read(), obj_read_body(), optional_power(), push_aff(), read_aff_domain(), read_defined_var_list(), read_factor(), read_optional_formula(), read_term(), read_tuple_list(), read_tuple_pw_aff_el(), read_tuple_space(), resolve_paren_expr(), and set_current_line_col().
__isl_give isl_basic_set * isl_stream_read_basic_set | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3269 of file isl_input.c.
References isl_basic_map_free(), isl_basic_map_may_be_set(), isl_basic_map_range(), isl_die, isl_error_invalid, and isl_stream_read_basic_map().
Referenced by isl_basic_set_read_from_file(), and isl_stream_read_ast_graft().
__isl_give isl_id * isl_stream_read_id | ( | __isl_keep isl_stream * | s | ) |
Definition at line 261 of file isl_id.c.
References id, isl_id_alloc(), isl_stream_error(), isl_stream_get_ctx(), isl_stream_next_token(), isl_token_free(), isl_token_get_str(), isl_token::s, and str.
Referenced by read_id(), and read_mark().
char * isl_stream_read_ident_if_available | ( | __isl_keep isl_stream * | s | ) |
Definition at line 731 of file isl_stream.c.
References isl_stream_next_token(), isl_stream_push_token(), isl_token_free(), ISL_TOKEN_IDENT, isl_token::s, isl_token::type, and isl_token::u.
__isl_give isl_map * isl_stream_read_map | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3140 of file isl_input.c.
References isl_assert, isl_map_from_range(), isl_obj_map, isl_obj_set, obj, and obj_read().
Referenced by isl_map_read_from_file().
__isl_give isl_multi_aff * isl_stream_read_multi_aff | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3855 of file isl_input.c.
References isl_die, isl_error_invalid, isl_space_align_params(), isl_space_free(), isl_space_range(), isl_stream_eat(), isl_stream_eat_if_available(), ISL_TOKEN_TO, ma, read_params(), read_tuple(), tuple, tuple_has_expr(), vars::v, vars_free(), and vars_new().
Referenced by isl_stream_read_aff().
struct isl_obj isl_stream_read_obj | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3135 of file isl_input.c.
References obj_read().
Referenced by ISL_ARG_CHOICE(), and main().
__isl_give isl_pw_qpolynomial * isl_stream_read_pw_qpolynomial | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3429 of file isl_input.c.
References isl_assert, isl_obj_pw_qpolynomial, obj, and obj_read().
Referenced by isl_pw_qpolynomial_read_from_file().
__isl_give isl_schedule * isl_stream_read_schedule | ( | isl_stream * | s | ) |
Definition at line 713 of file isl_schedule_read.c.
References isl_schedule_from_schedule_tree(), isl_stream_get_ctx(), isl_stream_read_schedule_tree(), isl_token::s, and tree.
Referenced by isl_schedule_read_from_file(), isl_stream_read_union_access_info(), and schedule_read().
__isl_give isl_set * isl_stream_read_set | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3158 of file isl_input.c.
References isl_assert, isl_map_may_be_set(), isl_map_range(), isl_obj_map, isl_obj_set, obj, and obj_read().
Referenced by construct_ast_from_union_map(), isl_set_read_from_file(), and isl_stream_read_ast_graft().
__isl_give isl_union_map * isl_stream_read_union_map | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3177 of file isl_input.c.
References isl_die, isl_error_invalid, isl_obj_map, isl_obj_set, isl_obj_union_map, isl_obj_union_set, isl_union_map_from_map(), isl_union_set_from_set(), isl_union_set_is_empty(), obj, and obj_read().
Referenced by construct_ast_from_union_map(), and isl_union_map_read_from_file().
__isl_give isl_union_set * isl_stream_read_union_set | ( | __isl_keep isl_stream * | s | ) |
Definition at line 3226 of file isl_input.c.
References extract_union_set(), obj, and obj_read().
Referenced by isl_stream_read_multi_union_pw_aff(), and isl_union_set_read_from_file().
__isl_give isl_val * isl_stream_read_val | ( | __isl_keep isl_stream * | s | ) |
Definition at line 191 of file isl_input.c.
References isl_int_neg, isl_stream_eat_if_available(), isl_stream_error(), isl_token_free(), ISL_TOKEN_INFTY, ISL_TOKEN_NAN, ISL_TOKEN_VALUE, isl_val_infty(), isl_val_int_from_isl_int(), isl_val_nan(), isl_val_neginfty(), isl_val_normalize(), isl_val_rat_from_isl_int(), next_token(), isl_token::s, isl_token::type, isl_token::u, isl_token::v, and val.
Referenced by read_band(), and read_int().
enum isl_token_type isl_stream_register_keyword | ( | __isl_keep isl_stream * | s, |
const char * | name | ||
) |
Definition at line 31 of file isl_stream.c.
References isl_hash_table_entry::data, isl_calloc_type, isl_hash_init, isl_hash_string(), isl_hash_table_alloc(), isl_hash_table_find(), ISL_TOKEN_ERROR, ISL_TOKEN_LAST, isl_keyword::name, name, same_name(), and isl_keyword::type.
int isl_stream_skip_line | ( | __isl_keep isl_stream * | s | ) |
Definition at line 376 of file isl_stream.c.
References isl_stream_getc().
Referenced by next_token().
isl_bool isl_stream_yaml_next | ( | __isl_keep isl_stream * | s | ) |
Definition at line 966 of file isl_stream.c.
References isl_token::col, current_state(), get_yaml_indent(), isl_bool_error, isl_bool_false, isl_bool_ok(), isl_bool_true, isl_die, isl_error_internal, isl_error_invalid, isl_stream_eat_if_available(), isl_stream_error(), isl_stream_next_token(), isl_stream_next_token_is(), isl_stream_push_token(), isl_token_free(), ISL_YAML_INDENT_FLOW, isl_yaml_mapping_key, isl_yaml_mapping_key_start, isl_yaml_mapping_val, isl_yaml_none, isl_yaml_sequence, isl_yaml_sequence_start, isl_token::s, isl_token::type, and update_state().
Referenced by eat_key(), isl_stream_read_ast_expr(), isl_stream_read_ast_node(), isl_stream_read_schedule_constraints(), isl_stream_read_schedule_tree(), isl_stream_read_union_access_info(), LIST(), main(), read_band(), read_body(), read_children(), read_context(), read_domain(), read_expansion(), read_extension(), read_filter(), read_for(), read_guard(), read_if(), read_mark(), read_op(), and read_user().
isl_stat isl_stream_yaml_read_end_mapping | ( | __isl_keep isl_stream * | s | ) |
Definition at line 1102 of file isl_stream.c.
References isl_token::col, get_yaml_indent(), isl_die, isl_error_invalid, isl_stat_error, isl_stream_eat(), isl_stream_get_ctx(), isl_stream_next_token(), isl_stream_push_token(), ISL_YAML_INDENT_FLOW, pop_state(), and isl_token::s.
Referenced by isl_stream_read_ast_expr(), isl_stream_read_ast_node(), isl_stream_read_schedule_constraints(), isl_stream_read_schedule_tree(), isl_stream_read_union_access_info(), and main().
isl_stat isl_stream_yaml_read_end_sequence | ( | __isl_keep isl_stream * | s | ) |
Definition at line 1172 of file isl_stream.c.
References isl_token::col, get_yaml_indent(), isl_die, isl_error_invalid, isl_stat_error, isl_stream_eat(), isl_stream_get_ctx(), isl_stream_next_token(), isl_stream_push_token(), ISL_YAML_INDENT_FLOW, pop_state(), isl_token::s, and isl_token::type.
Referenced by LIST().
isl_stat isl_stream_yaml_read_start_mapping | ( | __isl_keep isl_stream * | s | ) |
Definition at line 1070 of file isl_stream.c.
References isl_token::col, isl_stat_error, isl_stream_error(), isl_stream_next_token(), isl_stream_push_token(), isl_token_free(), isl_token_get_type(), ISL_YAML_INDENT_FLOW, isl_yaml_mapping_key_start, push_state(), isl_token::s, and set_yaml_indent().
Referenced by isl_stream_read_ast_expr(), isl_stream_read_ast_node(), isl_stream_read_schedule_constraints(), isl_stream_read_schedule_tree(), isl_stream_read_union_access_info(), and main().
isl_stat isl_stream_yaml_read_start_sequence | ( | __isl_keep isl_stream * | s | ) |
Definition at line 1139 of file isl_stream.c.
References isl_token::col, isl_stat_error, isl_stream_error(), isl_stream_next_token(), isl_stream_push_token(), isl_token_free(), isl_token_get_type(), ISL_YAML_INDENT_FLOW, isl_yaml_sequence_start, push_state(), isl_token::s, and set_yaml_indent().
Referenced by LIST().
void isl_token_free | ( | struct isl_token * | tok | ) |
Definition at line 127 of file isl_stream.c.
References isl_int_clear, isl_map_free(), isl_pw_aff_free(), ISL_TOKEN_AFF, ISL_TOKEN_MAP, ISL_TOKEN_VALUE, isl_token::map, isl_token::pwaff, isl_token::s, isl_token::type, isl_token::u, and isl_token::v.
Referenced by accept_affine(), accept_affine_factor(), accept_affine_list(), accept_cst_factor(), accept_minmax(), add_constraint(), affine_mod(), basic_map_read_polylib(), basic_map_read_polylib_constraint(), FN(), is_rational(), isl_stream_eat(), isl_stream_eat_if_available(), isl_stream_flush_tokens(), isl_stream_free(), isl_stream_read_id(), isl_stream_read_ident_if_available(), isl_stream_read_schedule_tree(), isl_stream_read_val(), isl_stream_yaml_next(), isl_stream_yaml_read_start_mapping(), isl_stream_yaml_read_start_sequence(), isl_vec_read_polylib(), KEY_GET(), map_read_polylib(), next_key(), next_signed_value_fn(), next_token(), obj_read(), obj_read_body(), optional_power(), pw_aff_div_by_cst(), read_band(), read_children(), read_conjunct(), read_context(), read_defined_var_list(), read_domain(), read_expansion(), read_extension(), read_factor(), read_filter(), read_guard(), read_mark(), read_optional_formula(), read_term(), read_tuple_id(), read_tuple_list(), read_tuple_pw_aff_el(), read_tuple_space(), and resolve_paren_expr().
__isl_give char * isl_token_get_str | ( | isl_ctx * | ctx, |
struct isl_token * | tok | ||
) |
Definition at line 115 of file isl_stream.c.
References isl_die, isl_error_invalid, isl_token::s, and isl_token::u.
Referenced by FN(), isl_stream_read_id(), KEY_EXTRACT(), next_is_domain_colon(), next_key(), read_band(), read_context(), read_domain(), read_expansion(), read_extension(), read_filter(), read_guard(), and read_mark().
int isl_token_get_type | ( | struct isl_token * | tok | ) |
Definition at line 86 of file isl_stream.c.
References ISL_TOKEN_ERROR, and isl_token::type.
Referenced by FN(), isl_stream_yaml_read_start_mapping(), isl_stream_yaml_read_start_sequence(), and next_is_sequence().
__isl_give isl_val * isl_token_get_val | ( | isl_ctx * | ctx, |
struct isl_token * | tok | ||
) |
Definition at line 93 of file isl_stream.c.
References isl_die, isl_error_invalid, ISL_TOKEN_VALUE, isl_val_int_from_isl_int(), isl_token::type, isl_token::u, and isl_token::v.
Definition at line 106 of file isl_stream.c.
References isl_bool_error, isl_bool_ok(), isl_token::s, and isl_token::u.
Referenced by KEY_EXTRACT().