25 #include "pips_config.h"
137 list callee_alias_list)
159 if (
same_reg(formal_reg,alias_list_reg) )
218 if (
same_reg(formal_reg,alias_list_reg) )
234 },rest_unmatched_alias_pairs);
252 list callee_alias_lists;
256 pips_debug(4,
"begin for callee %s\n",callee_name);
265 list callee_alias_list =
274 if (callee_alias_list !=
NIL)
290 },callee_alias_lists);
336 debug_on(
"ALIAS_LISTS_DEBUG_LEVEL");
353 DBR_CUMULATED_EFFECTS,
358 DBR_CUMULATED_EFFECTS,
effects_classes make_effects_classes(list a)
effects make_effects(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,...
static bool same_reg(region reg1, region reg2)
tests if reg1 and reg2 are the same, including same action_tags (IN/OUT) and precision (may/exact)
bool alias_lists(const string module_name)
modifies global variables: matched_alias_pairs, unmatched_alias_pairs, l_alias_lists
static void add_alias_lists_callee(string callee_name)
global variables IN: matched_alias_pairs, unmatched_alias_pairs, l_alias_lists modifies global variab...
static list l_alias_lists
static void add_alias_lists_callees(const char *module_name)
global variables IN: unmatched_alias_pairs, l_alias_lists modifies global variables: matched_alias_pa...
static void add_unmatched_alias_pairs()
global variables IN: unmatched_alias_pairs, l_alias_lists modifies global variable: l_alias_lists
static bool compare_matched_alias_pairs(bool result, region alias_list_reg, list callee_alias_list)
global variables IN: matched_alias_pairs, l_alias_lists modifies global variable: l_alias_lists
static list unmatched_alias_pairs
static list matched_alias_pairs
static bool compare_unmatched_alias_pairs(region alias_list_reg, list callee_alias_list)
global variables IN: matched_alias_pairs, unmatched_alias_pairs, l_alias_lists modifies global variab...
#define region_system(reg)
#define region
simulation of the type region
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)
#define effect_action_tag(eff)
entity effect_entity(effect)
cproto-generated files
#define effect_undefined_p(x)
#define EFFECTS(x)
EFFECTS.
#define effects_effects(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.
list gen_last(list l)
Return the last 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.
struct _newgen_struct_callees_ * callees
#define callees_callees(x)
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)