32 #include "pips_config.h"
71 for(;!
ENDP(dims1) && !
ENDP(dims2) && c1_pos == 0;
POP(dims1),
POP(dims2))
108 c1_pos = diff==0? 0 : (diff>0?1:-1);
114 c1_pos = strcmp(ch1, ch2);
123 c1_pos = (nb_dims1 < nb_dims2) ? -1 : ( (nb_dims1 > nb_dims2) ? 1 : 0);
132 c1_pos = strcmp(mod1, mod2);
240 result = (n1 || n2)? (n2-n1): strcmp(name1,name2);
263 pips_assert(
"there should not be preference cells in pointer values (ppv1 first) \n",
265 pips_assert(
"there should not be preference cells in pointer values (ppv2 first) \n",
268 pips_assert(
"the first cell must have value_of interpretation (ppv1)\n",
270 pips_assert(
"the first cell must have value_of interpretation (ppv2)\n",
281 ppv1_pos = (ppv1_second_value_of_p == ppv2_second_value_of_p) ? 0 :
282 (ppv1_second_value_of_p ? -1 : 1);
289 ppv1_pos =
cell_compare(&ppv1_second_c, &ppv2_second_c);
struct _newgen_struct_entity_ * entity
static entity current_mod
int cell_compare(cell *c1, cell *c2)
int is_inferior_cell_descriptor_pvarval(Pvecteur *pvarval1, Pvecteur *pvarval2)
weight function for Pvecteur passed as argument to sc_lexicographic_sort in prettyprint functions inv...
int compare_effect_reference(effect *e1, effect *e2)
int compare_effect_reference(e1, e2):
int effect_compare(effect *peff1, effect *peff2)
Compares two effects for sorting.
int compare_effect_reference_in_common(effect *e1, effect *e2)
int compare_effect_reference_in_common(e1, e2):
int pointer_value_compare(cell_relation *ppv1, cell_relation *ppv2)
Compares two pointer values for sorting.
int cell_reference_compare(reference *pr1, reference *pr2)
compare.c
#define effect_any_reference(e)
FI: cannot be used as a left hand side.
#define cell_relation_second_cell(cr)
#define effect_read_p(eff)
#define effect_scalar_p(eff) entity_scalar_p(effect_entity(eff))
#define cell_relation_second_value_of_p(cr)
#define cell_relation_first_cell(cr)
#define variable_phi_p(e)
true if e is a phi variable PHI entities have a name like: REGIONS:PHI#, where # is a number.
#define cell_relation_first_value_of_p(cr)
#define cell_reference(x)
#define cell_preference_p(x)
entity get_current_module_entity(void)
Get the entity of the current module.
#define ENDP(l)
Test if a list is empty.
#define POP(l)
Modify a list pointer to point on the next element of the list.
size_t gen_length(const list l)
#define CAR(pcons)
Get the value of the first element of a list.
#define pips_assert(what, predicate)
common macros, two flavors depending on NDEBUG
string expression_to_string(expression e)
const char * entity_user_name(entity e)
Since entity_local_name may contain PIPS special characters such as prefixes (label,...
bool same_entity_p(entity e1, entity e2)
predicates on entities
const char * module_local_name(entity e)
Returns the module local user name.
bool top_level_entity_p(entity e)
Check if the scope of entity e is global.
const char * entity_module_name(entity e)
See comments about module_name().
const char * entity_and_common_name(entity e)
See next function!
bool entity_in_common_p(entity e)
bool expression_integer_value(expression e, intptr_t *pval)
bool unbounded_expression_p(expression e)
#define syntax_reference_p(x)
#define syntax_reference(x)
#define reference_variable(x)
#define EXPRESSION(x)
EXPRESSION.
#define reference_indices(x)
#define expression_syntax(x)
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
The structure used to build lists in NewGen.