6 #include "expr_access_type.h"
8 #if defined(__cplusplus)
18 struct pet_function_summary
;
19 typedef struct pet_function_summary pet_function_summary
;
21 __isl_give pet_function_summary
*pet_function_summary_alloc(isl_ctx
*ctx
,
23 __isl_give pet_function_summary
*pet_function_summary_copy(
24 __isl_keep pet_function_summary
*summary
);
25 __isl_null pet_function_summary
*pet_function_summary_free(
26 __isl_take pet_function_summary
*summary
);
28 isl_ctx
*pet_function_summary_get_ctx(__isl_keep pet_function_summary
*summary
);
30 int pet_function_summary_get_n_arg(__isl_keep pet_function_summary
*summary
);
32 __isl_give pet_function_summary
*pet_function_summary_set_int(
33 __isl_take pet_function_summary
*summary
, int pos
,
34 __isl_take isl_id
*id
);
35 __isl_give pet_function_summary
*pet_function_summary_set_array(
36 __isl_take pet_function_summary
*summary
, int pos
,
37 __isl_take isl_union_set
*may_read
, __isl_take isl_union_set
*may_write
,
38 __isl_take isl_union_set
*must_write
);
40 int pet_function_summary_arg_is_int(__isl_keep pet_function_summary
*summary
,
42 int pet_function_summary_arg_is_array(__isl_keep pet_function_summary
*summary
,
44 __isl_give isl_union_map
*pet_function_summary_arg_get_access(
45 __isl_keep pet_function_summary
*summary
, int pos
,
46 enum pet_expr_access_type type
);
48 __isl_give isl_printer
*pet_function_summary_print(
49 __isl_keep pet_function_summary
*summary
, __isl_take isl_printer
*p
);
50 void pet_function_summary_dump(__isl_keep pet_function_summary
*summary
);
52 #if defined(__cplusplus)