PIPS
|
#include "genC.h"
#include "linear.h"
#include "misc.h"
#include "ri.h"
#include "effects.h"
#include "ri-util.h"
#include "prettyprint.h"
#include "effects-util.h"
#include "text-util.h"
#include "effects-simple.h"
#include "pips-libs.h"
#include "transformer.h"
#include "semantics.h"
Go to the source code of this file.
Macros | |
#define | unsigned_char 11 |
#define | unsigned_short_int 12 |
#define | unsigned_int 14 |
#define | unsigned_long_int 16 |
#define | unsigned_long_long_int 18 |
Functions | |
static void | add_type_information (transformer tf) |
Add some of the constraints linked to the type of a variable. More... | |
void | transformer_add_type_information (transformer tf) |
type.c More... | |
void | transformer_add_variable_type_information (transformer tf, entity v) |
|
static |
Add some of the constraints linked to the type of a variable.
lb = 0
We assume exists lambda s.t. e = ep + period*lambda
Compute the value of lambda
Now we must get rid of lambda and e and possibly e's old value
Transformer projection removes variables from the argument list as well as from the contraint system.
Now we must substitute ep by e
Definition at line 61 of file type.c.
References base_contains_variable_p(), BASE_NULLE, BASE_NULLE_P, basic_int, CONS, ENTITY, entity_basic_concrete_type(), entity_is_argument_p(), entity_to_old_value(), eq, gen_copy_seq(), gen_free_list(), intptr_t, local_old_value_entity_p(), make_local_temporary_integer_value_entity(), make_local_temporary_value_entity(), NIL, pips_assert, precondition_minmax_of_value(), predicate_system, safe_transformer_projection(), TCST, transformer_add_equality_with_integer_constant(), transformer_add_inequality_with_integer_constraint(), transformer_arguments, transformer_equality_add(), transformer_relation, transformer_value_substitute(), type_variable, unsigned_char, unsigned_int, unsigned_long_int, unsigned_long_long_int, unsigned_short_int, unsigned_type_p(), VALUE_MONE, VALUE_ONE, value_to_variable(), VALUE_ZERO, variable_basic, vect_copy(), vect_make(), vect_new(), vect_rm(), vecteur_succ, and vecteur_var.
Referenced by transformer_add_type_information().
void transformer_add_type_information | ( | transformer | tf | ) |
type.c
tf | f |
Definition at line 162 of file type.c.
References add_type_information().
Referenced by module_name_to_preconditions(), precondition_add_type_information(), statement_to_postcondition(), statement_to_transformer(), and transformer_add_variable_type_information().
void transformer_add_variable_type_information | ( | transformer | tf, |
entity | v | ||
) |
tf | f |
Definition at line 168 of file type.c.
References add_value_to_transformer_space(), entity_has_values_p(), entity_to_new_value(), pips_assert, transformer_add_type_information(), and value_belongs_to_transformer_space().
Referenced by declaration_to_transformer().