25 #include "pips_config.h"
39 #define STATIC_CONTROLIZE_MODULE_NAME "STATCON"
40 #define NLC_PREFIX "NLC"
41 #define NSP_PREFIX "NSP"
42 #define NUB_PREFIX "NUB"
51 for( ; b != NULL; b = b->
succ)
66 for(el_l = l ; el_l !=
NIL; el_l =
CDR(el_l))
126 debug( 7,
"make_nlc_entity",
"doing\n");
172 debug( 7,
"make_nsp_entity",
"doing\n");
214 debug( 7,
"make_nub_entity",
"doing\n");
255 debug( 7,
"current_module",
"doing\n");
263 #define ADD_ELEMENT_TO_LIST( _list, _type, _element) \
264 (_list = gen_nconc( _list, CONS( _type, _element, NIL)))
278 debug(7,
"undefined_statement_list_p",
"doing\n");
292 return( local_bool );
306 debug( 7,
"expression_int_scalar",
"doing \n");
316 debug( 7,
"expression_int_scalar",
333 debug( 7,
"scalar_assign_call",
"doing \n");
341 debug( 7,
"scalar_assign_call",
"returning : %s \n",
354 list *ell, *etl, *swfl;
358 debug( 7,
"scalar_written_in_call",
"doing\n");
360 && ( (*ell !=
NIL) || (*etl !=
NIL) )
basic make_basic(enum basic_utype tag, void *val)
storage make_storage(enum storage_utype tag, void *val)
ram make_ram(entity a1, entity a2, intptr_t a3, list a4)
value make_value(enum value_utype tag, void *val)
variable make_variable(basic a1, list a2, list a3)
type make_type(enum type_utype tag, void *val)
static entity current_mod
Pbase base_reversal(Pbase b_in)
Pbase base_reversal(Pbase b_in): produces a basis b_out, having the same basis vectors as b_in,...
entity get_current_module_entity(void)
Get the entity of the current module.
#define NIL
The empty list (nil in Lisp)
size_t gen_length(const list l)
#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.
bool continue_statement_p(statement)
Test if a statement is a CONTINUE, that is the FORTRAN nop, the ";" in C or the "pass" in Python....
bool expression_constant_p(expression)
HPFC module by Fabien COELHO.
#define pips_assert(what, predicate)
common macros, two flavors depending on NDEBUG
void debug(const int the_expected_debug_level, const char *calling_function_name, const char *a_message_format,...)
ARARGS0.
int Gcount_nsp
================================================================
list base_to_list(Pbase b)
list base_to_list(Pbase v): translates a Pbase into a list of entities, in the same order.
entity scalar_assign_call(call c)
entity scalar_assign_call((call) c) Detects if the call is an assignement and if the value assigned i...
entity make_nlc_entity(int *Gcount_nlc)
================================================================
entity make_nub_entity()
================================================================
bool undefined_statement_list_p(list l)
=================================================================
entity expression_int_scalar(expression exp)
================================================================
entity make_nsp_entity()
entity make_nsp_entity() Makes a new NSP (for New Structural Parameter) .
Pbase list_to_base(list l)
Pbase list_to_base(list l): returns the Pbase that contains the variables of list "l",...
expression make_max_exp(entity ent, expression exp1, expression exp2)
================================================================
#define ADD_ELEMENT_TO_LIST(_list, _type, _element)
void scalar_written_in_call(call the_call, list *ell, list *etl, list *swfl)
scalar_written_in_call((call) the_call) Detects and puts a scalar written in an assignement call,...
#define STATIC_CONTROLIZE_MODULE_NAME
entity current_module(entity mod)
================================================================
#define DYNAMIC_AREA_LOCAL_NAME
#define MODULE_SEP_STRING
string concatenate(const char *,...)
Return the concatenation of the given strings.
static entity dynamic_area
#define ENTITY_ASSIGN_P(e)
#define make_entity(n, t, s, i)
#define binary_call_lhs(c)
int current_offset_of_area(entity a, entity v)
const char * entity_local_name(entity e)
entity_local_name modified so that it does not core when used in vect_fprint, since someone thought t...
entity FindOrCreateEntity(const char *package, const char *local_name)
Problem: A functional global entity may be referenced without parenthesis or CALL keyword in a functi...
const char * module_local_name(entity e)
Returns the module local user name.
bool entity_module_p(entity e)
int expression_to_int(expression exp)
================================================================
expression MakeBinaryCall(entity f, expression eg, expression ed)
Creates a call expression to a function with 2 arguments.
expression int_to_expression(_int i)
transform an int into an expression and generate the corresponding entity if necessary; it is not cle...
bool entity_integer_scalar_p(entity)
for variables (like I), not constants (like 1)! use integer_constant_p() for constants
#define syntax_reference(x)
#define reference_variable(x)
#define entity_storage(x)
#define expression_syntax(x)
#define statement_undefined
#define STATEMENT(x)
STATEMENT.
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
The structure used to build lists in NewGen.
#define exp
Avoid some warnings from "gcc -Wshadow".
void vect_add_elem(Pvecteur *pvect, Variable var, Value val)
void vect_add_elem(Pvecteur * pvect, Variable var, Value val): addition d'un vecteur colineaire au ve...