28 #ifdef BUILDER_CAST_AT_CALL_SITES
31 #include "pips_config.h"
56 "CAST_AT_CALL_SITES_DEBUG_LEVEL");
85 for (
list citer = callers, siter = callers_statement; !
ENDP(citer);
POP(citer),
POP(siter))
cast make_cast(type a1, expression a2)
expression make_expression(syntax a1, normalized a2)
type make_type_variable(variable _field_)
type copy_type(type p)
TYPE.
basic make_basic_pointer(type _field_)
variable make_variable(basic a1, list a2, list a3)
syntax make_syntax_cast(cast _field_)
static statement module_statement
list callers_to_call_sites(list callers_statement, entity called_module)
given a list callers_statement of module statements returns a list of calls to module called_module
list callers_to_statements(list callers)
given a list callers of module name calling module called module return a list of their body
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.
#define REFCAR(pc)
Get the adress of the first element of a list.
#define NIL
The empty list (nil in Lisp)
#define CAR(pcons)
Get the value of the first element of a list.
#define FOREACH(_fe_CASTER, _fe_item, _fe_list)
Apply/map an instruction block on all the elements of a list.
#define CDR(pcons)
Get the list less its first element.
#define PIPS_PHASE_POSTLUDE(new_module_statement)
End a transformation phase by putting back into PIPS the (possibly) modified statement.
#define PIPS_PHASE_PRELUDE(module_name, debug_env_var)
Start a phase that use a module CODE.
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.
bool pointer_type_p(type)
Check for scalar pointers.
#define normalized_undefined
#define parameter_type(x)
#define callees_callees(x)
#define type_functional(x)
#define functional_parameters(x)
#define PARAMETER(x)
PARAMETER.
#define variable_dimensions(x)
#define call_arguments(x)
#define STATEMENT(x)
STATEMENT.
The structure used to build lists in NewGen.