Mercurial > hg > CbC > CbC_gcc
comparison gcc/tree-chrec.h @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
1 /* Chains of recurrences. | 1 /* Chains of recurrences. |
2 Copyright (C) 2003-2018 Free Software Foundation, Inc. | 2 Copyright (C) 2003-2020 Free Software Foundation, Inc. |
3 Contributed by Sebastian Pop <pop@cri.ensmp.fr> | 3 Contributed by Sebastian Pop <pop@cri.ensmp.fr> |
4 | 4 |
5 This file is part of GCC. | 5 This file is part of GCC. |
6 | 6 |
7 GCC is free software; you can redistribute it and/or modify it under | 7 GCC is free software; you can redistribute it and/or modify it under |
21 #ifndef GCC_TREE_CHREC_H | 21 #ifndef GCC_TREE_CHREC_H |
22 #define GCC_TREE_CHREC_H | 22 #define GCC_TREE_CHREC_H |
23 | 23 |
24 /* The following trees are unique elements. Thus the comparison of another | 24 /* The following trees are unique elements. Thus the comparison of another |
25 element to these elements should be done on the pointer to these trees, | 25 element to these elements should be done on the pointer to these trees, |
26 and not on their value. */ | 26 and not on their value. |
27 | 27 |
28 extern tree chrec_not_analyzed_yet; | 28 extern tree chrec_not_analyzed_yet; |
29 extern GTY(()) tree chrec_dont_know; | 29 extern tree chrec_dont_know; |
30 extern GTY(()) tree chrec_known; | 30 extern tree chrec_known; |
31 | |
32 chrec_not_analyzed_yet is NULL_TREE and the others are defined | |
33 in global_trees[]. */ | |
31 | 34 |
32 /* After having added an automatically generated element, please | 35 /* After having added an automatically generated element, please |
33 include it in the following function. */ | 36 include it in the following function. */ |
34 | 37 |
35 static inline bool | 38 static inline bool |
72 extern tree evolution_part_in_loop_num (tree, unsigned); | 75 extern tree evolution_part_in_loop_num (tree, unsigned); |
73 extern tree hide_evolution_in_other_loops_than_loop (tree, unsigned); | 76 extern tree hide_evolution_in_other_loops_than_loop (tree, unsigned); |
74 extern tree reset_evolution_in_loop (unsigned, tree, tree); | 77 extern tree reset_evolution_in_loop (unsigned, tree, tree); |
75 extern tree chrec_merge (tree, tree); | 78 extern tree chrec_merge (tree, tree); |
76 extern void for_each_scev_op (tree *, bool (*) (tree *, void *), void *); | 79 extern void for_each_scev_op (tree *, bool (*) (tree *, void *), void *); |
77 extern bool convert_affine_scev (struct loop *, tree, tree *, tree *, gimple *, | 80 extern bool convert_affine_scev (class loop *, tree, tree *, tree *, gimple *, |
78 bool, tree = NULL); | 81 bool, tree = NULL); |
79 | 82 |
80 /* Observers. */ | 83 /* Observers. */ |
81 extern bool eq_evolutions_p (const_tree, const_tree); | 84 extern bool eq_evolutions_p (const_tree, const_tree); |
82 extern bool is_multivariate_chrec (const_tree); | 85 extern bool is_multivariate_chrec (const_tree); |
83 extern bool chrec_contains_symbols (const_tree); | 86 extern bool chrec_contains_symbols (const_tree, class loop * = NULL); |
84 extern bool chrec_contains_symbols_defined_in_loop (const_tree, unsigned); | 87 extern bool chrec_contains_symbols_defined_in_loop (const_tree, unsigned); |
85 extern bool chrec_contains_undetermined (const_tree); | 88 extern bool chrec_contains_undetermined (const_tree); |
86 extern bool tree_contains_chrecs (const_tree, int *); | 89 extern bool tree_contains_chrecs (const_tree, int *); |
87 extern bool evolution_function_is_affine_multivariate_p (const_tree, int); | 90 extern bool evolution_function_is_affine_multivariate_p (const_tree, int); |
88 extern bool evolution_function_is_univariate_p (const_tree); | 91 extern bool evolution_function_is_univariate_p (const_tree, int = 0); |
89 extern unsigned nb_vars_in_chrec (tree); | 92 extern unsigned nb_vars_in_chrec (tree); |
90 extern bool evolution_function_is_invariant_p (tree, int); | 93 extern bool evolution_function_is_invariant_p (tree, int); |
91 extern bool scev_is_linear_expression (tree); | 94 extern bool scev_is_linear_expression (tree); |
92 extern bool evolution_function_right_is_integer_cst (const_tree); | 95 extern bool evolution_function_right_is_integer_cst (const_tree); |
93 | 96 |