1 #ifndef PRINT_H 2 #define PRINT_H 3 4 #include <isl/ast.h> 5 6 #include "ppcg.h" 7 8 extern const char *ppcg_min; 9 extern const char *ppcg_max; 10 extern const char *ppcg_fdiv_q; 11 12 __isl_give isl_printer *ppcg_start_block(__isl_take isl_printer *p); 13 __isl_give isl_printer *ppcg_end_block(__isl_take isl_printer *p); 14 15 __isl_give isl_printer *ppcg_set_macro_names(__isl_take isl_printer *p); 16 __isl_give isl_printer *ppcg_set_macros(__isl_take isl_printer *p, 17 const char *min, const char *max); 18 __isl_give isl_printer *ppcg_print_macro(enum isl_ast_op_type type, 19 __isl_take isl_printer *p); 20 __isl_give isl_printer *ppcg_ast_expr_print_macros( 21 __isl_keep isl_ast_expr *expr, __isl_take isl_printer *p); 22 __isl_give isl_printer *ppcg_print_body_macros(__isl_take isl_printer *p, 23 __isl_keep isl_id_to_ast_expr *ref2expr); 24 __isl_give isl_printer *ppcg_print_macros(__isl_take isl_printer *p, 25 __isl_keep isl_ast_node *node); 26 27 __isl_give isl_ast_expr *ppcg_build_size_expr(__isl_take isl_multi_pw_aff *size, 28 __isl_keep isl_ast_build *build); 29 30 __isl_give isl_printer *ppcg_print_declaration_with_size( 31 __isl_take isl_printer *p, const char *base_type, 32 __isl_keep isl_ast_expr *size); 33 __isl_give isl_printer *ppcg_print_declaration(__isl_take isl_printer *p, 34 struct pet_array *array, __isl_keep isl_ast_build *build); 35 __isl_give isl_printer *ppcg_print_exposed_declarations( 36 __isl_take isl_printer *p, struct ppcg_scop *scop); 37 __isl_give isl_printer *ppcg_print_hidden_declarations( 38 __isl_take isl_printer *p, struct ppcg_scop *scop); 39 40 #endif 41