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 int pet_function_summary_get_n_arg(__isl_keep pet_function_summary
*summary
);
30 __isl_give pet_function_summary
*pet_function_summary_set_int(
31 __isl_take pet_function_summary
*summary
, int pos
,
32 __isl_take isl_id
*id
);
33 __isl_give pet_function_summary
*pet_function_summary_set_array(
34 __isl_take pet_function_summary
*summary
, int pos
,
35 __isl_take isl_union_set
*may_read
, __isl_take isl_union_set
*may_write
,
36 __isl_take isl_union_set
*must_write
);
38 int pet_function_summary_arg_is_int(__isl_keep pet_function_summary
*summary
,
40 int pet_function_summary_arg_is_array(__isl_keep pet_function_summary
*summary
,
42 __isl_give isl_union_map
*pet_function_summary_arg_get_access(
43 __isl_keep pet_function_summary
*summary
, int pos
,
44 enum pet_expr_access_type type
);
46 void pet_function_summary_dump_with_indent(
47 __isl_keep pet_function_summary
*summary
, int indent
);
48 void pet_function_summary_dump(__isl_keep pet_function_summary
*summary
);
50 #if defined(__cplusplus)