25 #include "pips_config.h"
59 #define REGION_BUFFER_SIZE 2048
60 #define REGION_FORESYS_PREFIX "C$REG"
61 #define PIPS_NORMAL_PREFIX "C"
77 #define append(s) add_to_current_line(line_buffer, s, str_prefix, t_reg)
84 string str_prefix = foresys?
96 user_log(
"[text_region] unexpected effect undefined\n");
109 if (!foresys)
append(
" <");
153 if (!foresys)
append(
">");
253 char *file_resource_name;
256 pips_debug(4,
"module %s resource %s file extn %s\n",
259 file_resource_name = DBR_ALIAS_FILE;
277 debug_on(
"ALIAS_PAIRS_DEBUG_LEVEL");
293 debug_on(
"ALIAS_PAIRS_DEBUG_LEVEL");
308 debug_on(
"ALIAS_LISTS_DEBUG_LEVEL");
323 debug_on(
"ALIAS_CLASSES_DEBUG_LEVEL");
void user_log(const char *format,...)
sentence make_sentence(enum sentence_utype tag, void *val)
bool print_alias_lists(const char *module_name)
#define REGION_FORESYS_PREFIX
bool print_alias_classes(const char *module_name)
bool print_out_alias_pairs(const char *module_name)
static text text_region_no_action(effect reg)
bool print_in_alias_pairs(const char *module_name)
prettyprint.c
#define append(s)
text text_region_no_action(effect reg) input : a region output : a text consisting of several lines o...
static text aliases_text(const char *module_name, string resource_name)
static bool print_aliases(const char *module_name, string resource_name, string file_extn)
bool alias_lists(const string)
alias_lists.c
void system_sorted_text_format(string line, string prefix, text txt, Psysteme ps, string(*variable_name)(Variable), bool(*put_first)(Pvecteur), bool a_la_fortran)
lower level hook for regions.
#define region_system(reg)
Pbase region_sorted_base_dup(effect)
void region_sc_sort(Psysteme, Pbase)
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_any_reference(e)
FI: cannot be used as a left hand side.
list effect_words_reference(reference obj)
made from words_reference this function can print entity_name instead of entity_local_name,...
const char * pips_region_user_name(entity ent)
char * pips_region_user_name(entity ent) output : the name of entity.
bool vect_contains_phi_p(Pvecteur)
bool vect_contains_phi_p(Pvecteur v) input : a vector output : true if v contains a PHI variable,...
#define effect_undefined_p(x)
#define EFFECTS(x)
EFFECTS.
#define approximation_may_p(x)
#define effects_effects(x)
#define effects_classes_classes(x)
#define effect_approximation(x)
const char * module_name(const char *s)
Return the module part of an entity name.
bool get_bool_property(const string)
FC 2015-07-20: yuk, moved out to prevent an include cycle dependency include "properties....
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)
void gen_map(gen_iter_func_t fp, const list l)
#define CONS(_t_, _i_, _l_)
List element cell constructor (insert an element at the beginning of a list)
void gen_free_list(list l)
free the spine of the list
#define list_undefined
Undefined list definition :-)
#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 pips_debug
these macros use the GNU extensions that allow variadic macros, including with an empty list.
string concatenate(const char *,...)
Return the concatenation of the given strings.
#define HASH_UNDEFINED_VALUE
value returned by hash_get() when the key is not found; could also be called HASH_KEY_NOT_FOUND,...
string get_comment_sentinel()
Start a single line comment.
string get_comment_continuation()
Start a single line comment with continuation (blank spaces)
list Words_Reference(reference obj)
bool make_text_resource(const char *, const char *, const char *, text)
print.c
static int * line_buffer
le buffer contenant la ligne que l'on doit lire en avance pour se rendre compte qu'on a finit de lire...
entity local_name_to_top_level_entity(const char *n)
This function try to find a top-level entity from a local name.
void sc_rm(Psysteme ps)
void sc_rm(Psysteme ps): liberation de l'espace memoire occupe par le systeme de contraintes ps;
Psysteme sc_dup(Psysteme ps)
Psysteme sc_dup(Psysteme ps): should becomes a link.
void module_to_value_mappings(entity m)
void module_to_value_mappings(entity m): build hash tables between variables and values (old,...
le type des coefficients dans les vecteurs: Value est defini dans le package arithmetique
The structure used to build lists in NewGen.
#define FORESYS_CONTINUATION_PREFIX
#define MERGE_TEXTS(r, t)
#define ADD_SENTENCE_TO_TEXT(t, p)
#define MAX_LINE_LENGTH
maximum length of a line when prettyprinting...
void close_current_line(string, text, string)
#define SENTENCE(x)
newgen_unformatted_domain_defined
char *(* get_variable_name_t)(Variable)