25 #include "pips_config.h"
40 #include "constants.h"
62 #include "resources.h"
316 if (!
member(reg,reg_list))
320 new_reg_list = reg_list;
334 list rest_alias_lists, alias_list;
335 region formal_reg_pair, formal_reg_list, actual_reg_pair;
340 formal_reg_pair =
EFFECT(
CAR(alias_pair) );
352 alias_list =
LIST(
CAR(rest_alias_lists) );
353 formal_reg_list =
EFFECT(
CAR(alias_list) );
375 rest_alias_lists =
CDR(rest_alias_lists);
376 }
while (rest_alias_lists !=
NIL && result ==
false);
397 debug_on(
"ALIAS_LISTS_DEBUG_LEVEL");
414 DBR_CUMULATED_EFFECTS,
effects_classes make_effects_classes(list a)
bool in_alias_pairs(const string)
cproto-generated files
bool out_alias_pairs(const char *)
top-level creation of pairs of aliases of OUT regions of the module modifies global vars callee,...
#define region_system(reg)
#define region
simulation of the type region
effect region_dup(effect)
void print_inout_regions(list)
void reset_action_interpretation(void)
void reset_proper_rw_effects(void)
void set_proper_rw_effects(statement_effects)
void set_cumulated_rw_effects(statement_effects)
void set_action_interpretation(string, string)
prettyprint.c
void reset_cumulated_rw_effects(void)
#define effect_approximation_tag(eff)
entity effect_entity(effect)
cproto-generated files
#define effect_undefined_p(x)
#define effects_classes_classes(x)
const char * module_name(const char *s)
Return the module part of an entity name.
void reset_current_module_entity(void)
Reset the current module entity.
void reset_current_module_statement(void)
Reset the current module statement.
statement set_current_module_statement(statement)
Set the current module statement.
entity set_current_module_entity(entity)
static.c
entity get_current_module_entity(void)
Get the entity of the current module.
#define NIL
The empty list (nil in Lisp)
#define CONS(_t_, _i_, _l_)
List element cell constructor (insert an element at the beginning of a list)
list gen_nconc(list cp1, list cp2)
physically concatenates CP1 and CP2 but do not duplicates the elements
#define CAR(pcons)
Get the value of the first element of a list.
#define CDR(pcons)
Get the list less its first element.
#define MAP(_map_CASTER, _map_item, _map_code, _map_list)
Apply/map an instruction block on all the elements of a list (old fashioned)
string db_get_memory_resource(const char *rname, const char *oname, bool pure)
Return the pointer to the resource, whatever it is.
#define DB_PUT_MEMORY_RESOURCE(res_name, own_name, res_val)
conform to old interface.
#define pips_debug
these macros use the GNU extensions that allow variadic macros, including with an empty list.
entity local_name_to_top_level_entity(const char *n)
This function try to find a top-level entity from a local name.
static bool member(region reg, list reg_list)
tests if reg and any member of reg_list are same_reg_ignore_action
bool alias_lists(const char *module_name)
GLOBAL OUT: l_alias_lists.
static list l_alias_lists
static bool add_pair_to_existing_list(list alias_pair)
GLOBAL IN: l_alias_lists GLOBAL OUT: l_alias_lists.
list append_reg_if_not_present(list reg_list, region reg)
adds reg as final element on the end of reg_list unless reg is already present in reg_list
bool same_reg_ignore_action(region reg1, region reg2)
put reg in list of one element for call to alias_pairs
void module_to_value_mappings(entity m)
void module_to_value_mappings(entity m): build hash tables between variables and values (old,...
The structure used to build lists in NewGen.
#define sc_equal_p_ofl(ps1, ps2)