PIPS
|
#include <stdio.h>
#include <ctype.h>
#include "genC.h"
#include "linear.h"
#include "pipsdbm.h"
#include "misc.h"
#include "properties.h"
#include "text.h"
#include "effects.h"
#include "ri.h"
#include "ri-util.h"
#include "text-util.h"
#include "control.h"
#include "effects-util.h"
#include "transformer.h"
#include "prettyprint.h"
#include "dg.h"
#include "graph.h"
#include "rice.h"
#include "ricedg.h"
#include "effects-convex.h"
#include "effects-generic.h"
#include "effects-simple.h"
#include "complexity_ri.h"
#include "complexity.h"
#include "semantics.h"
#include "modeling.h"
Go to the source code of this file.
Data Structures | |
struct | expression_ctxt |
struct | Spattern |
struct | callst |
struct | alias_in_args |
Macros | |
#define | DEBUG_XML 1 |
#define | COMMA "," |
#define | EMPTY "" |
#define | NL "\n" |
#define | TAB " " |
#define | SEMICOLON ";" NL |
#define | SPACE " " |
#define | OPENBRACKET "[" |
#define | CLOSEBRACKET "]" |
#define | OPENPAREN "(" |
#define | CLOSEPAREN ")" |
#define | OPENBRACE "{" |
#define | CLOSEBRACE "}" |
#define | OPENANGLE "<" |
#define | CLOSEANGLE ">" |
#define | SLASH "/" |
#define | SHARPDEF "#define" |
#define | COMMENT "//" SPACE |
#define | QUOTE "\"" |
#define | XML_TASK_PREFIX "T_" |
#define | XML_MOTIF_PREFIX "M_" |
#define | XML_ARRAY_PREFIX "A_" |
#define | XML_RL NL,TAB,TAB |
#define | code_is_a_box 0 |
#define | code_is_a_te 1 |
#define | code_is_a_main 2 |
#define | USER_MAIN "main" |
#define | BL " " |
#define | TB1 "\t" |
#define | MEM_PREFIX "-MEM:" |
#define | current_module_is_a_function() (entity_function_p(get_current_module_entity())) |
#define | RESULT_NAME "result" |
#define | ITEM_NOT_IN_ARRAY -1 |
#define | XML_ARRAY_PREFIX "A_" |
#define | MONMAX(a, b) ((a<b)?b:a) |
Typedefs | |
typedef dg_arc_label | arc_label |
typedef dg_vertex_label | vertex_label |
typedef struct Spattern | Spattern |
typedef struct Spattern * | Ppattern |
typedef struct callst | callst |
typedef struct callst * | Pcallst |
Functions | |
static void | def_to_task_init (void) |
static void | def_to_task_set (entity_to_entity mapping) |
static void | def_to_task_reset (void) |
static void | def_to_task_store (entity var, entity fun) |
static entity | def_to_task_get (entity var) |
static bool | variable_p (entity e) |
static string | xml_entity_local_name (entity var) |
static string | xml_expression (expression) |
forward declaration More... | |
static string | xml_reference_with_explicit_motif (reference r) |
Attention with Fortran: the indices are reversed. More... | |
static int | gen_array_index (gen_array_t ar, string item) |
static string | xml_dim_string (list ldim, string name) |
static string | this_entity_xmldeclaration (entity var) |
static string | xml_declarations_with_explicit_motif (entity module, bool(*consider_this_entity)(entity), string separator, bool lastsep) |
static string | xml_array_in_task (reference r, bool first, int task_number) |
static string | xml_call_from_assignation (call c, int task_number, bool *input_provided) |
static void | xml_call_from_indice (call c, string *offset_array, string paving_array[], string fitting_array[]) |
static string | xml_call_from_loopnest (call c, int task_number) |
static call | sequence_call (sequence seq) |
static loop | sequence_loop (sequence seq) |
static call | xml_loop_from_loop (loop l, string *result, int task_number) |
static string | xml_loop_from_sequence (loop l, int task_number) |
We enter a loop nest. More... | |
static string | xml_statement_from_sequence (statement s, int task_number) |
We are here at the highest level of statements. More... | |
static string | xml_sequence_from_task (sequence seq) |
Concatentates each task to the final result. More... | |
static string | xml_tasks_with_motif (statement stat) |
Manages tasks. More... | |
static string | xml_code_string (entity module, statement stat) |
Creates string for xml pretty printer. More... | |
bool | print_xml_code_with_explicit_motif (const char *module_name) |
Initiates xml pretty print modules. More... | |
static bool | print_full_name_p () |
======================================================= More... | |
static bool | print_name_1_level_p () |
static void | xml_declarations (entity module, string_buffer result) |
static void | push_current_statement (statement s, nest_context_p nest) |
static void | pop_current_statement (statement s __attribute__((unused)), nest_context_p nest) |
static void | push_loop (loop l, nest_context_p nest) |
static void | pop_loop (_UNUSED_ loop l, nest_context_p nest) |
static void | push_if (_UNUSED_ test l, nest_context_p nest) |
static void | pop_if (test l __attribute__((unused)), nest_context_p nest) |
static void | search_1r_function_call (call c) |
static bool | call_selection (call c, nest_context_p nest __attribute__((unused))) |
static void | store_call_context (call c __attribute__((unused)), nest_context_p nest) |
static bool | push_test (test t __attribute__((unused)), nest_context_p nest __attribute__((unused))) |
static void | pop_test (test t __attribute__((unused)), nest_context_p nest __attribute__((unused))) |
static void | search_nested_loops_and_calls (statement stmp, nest_context_p nest) |
static void | __attribute__ ((unused)) |
static expression | expression_plusplus (expression e) |
static void | xml_loop (stack st, string_buffer result) |
static void | xml_reference (int taskNumber __attribute__((unused)), reference r, bool wmode, string_buffer result) |
static void | find_motif (Psysteme ps, Pvecteur nested_indices, int dim, int nb_dim __attribute__((unused)), Pcontrainte *bound_inf, Pcontrainte *bound_sup, Pcontrainte *iterator, int *motif_up_bound, int *lowerbound, int *upperbound) |
static void | xml_tiling (int taskNumber, reference ref, region reg, stack indices, string_buffer result) |
static void | xml_references (int taskNumber, list l_regions, stack indices, string_buffer result) |
static void | xml_data (int taskNumber, statement s, stack indices, string_buffer result) |
static string | task_complexity (statement s) |
static void | xml_task (int taskNumber, nest_context_p nest, string_buffer result) |
static void | xml_tasks (statement stat, string_buffer result) |
static string | xml_code (entity module, statement stat) |
Creates string for xml pretty printer. More... | |
static bool | valid_specification_p (entity module __attribute__((unused)), statement stat __attribute__((unused))) |
bool | print_xml_code (const char *module_name) |
Initiates xml pretty print modules. More... | |
static string | vect_to_string (Pvecteur pv) |
static void | type_and_size_of_var (entity var, const char **datatype, int *size) |
UNUSED static bool vect_one_p(Pvecteur v) { return (!VECTEUR_NUL_P(v) && vect_size(v) == 1 && vect_coeff(TCST, v) ==1); }. More... | |
static void | add_margin (int gm, string_buffer sb_result) |
static void | string_buffer_append_word (string str, string_buffer sb_result) |
static void | string_buffer_append_symbolic (string str, string_buffer sb_result) |
static void | two_string_buffer_append_symbolic (string str1, string str2, string_buffer sb_result) |
static void | string_buffer_append_numeric (string str, string_buffer sb_result) |
static void | find_loops_and_calls_in_box (statement stmp, nest_context_p nest) |
static void | xml_Library (string_buffer sb_result) |
static void | xml_Returns (string_buffer sb_result __attribute__((unused))) |
static void | xml_Timecosts (string_buffer sb_result __attribute__((unused))) |
static void | xml_AccessFunction (string_buffer sb_result __attribute__((unused))) |
static void | xml_Regions (string_buffer sb_result __attribute__((unused))) |
static void | xml_CodeSize (string_buffer sb_result) |
static bool | entity_xml_parameter_p (entity e) |
static void | choose_pattern (Ppattern *patt) |
static void | find_pattern (Psysteme ps, Pvecteur paving_indices, Pvecteur formal_parameters, int dim, Ppattern *patt) |
static void | xml_Pattern_Paving (region reg, entity var, bool effet_read, Pvecteur formal_parameters, Pvecteur paving_indices, string_buffer sb_result) |
static void | vars_read_and_written (list effects_list, Pvecteur *vr, Pvecteur *vw) |
UNUSED static void array_vars_read_or_written(list effects_list, Pvecteur *vl) { Pvecteur vin=VECTEUR_NUL; Pvecteur vout = VECTEUR_NUL; list pc; for (pc= effects_list;pc != NIL; pc = CDR(pc)){ effect e = EFFECT(CAR(pc)); reference r = effect_any_reference(e); if (store_effect_p(e) && array_entity_p(reference_variable(r))) { entity v = reference_variable(r); if (effect_read_p(e)) vect_add_elem(&vin,v,1); else vect_add_elem(&vout,v,1); } } vin = base_normalize(vin); vout = base_normalize(vout); vl = vect_substract(vin,vout); vl= base_normalize(*vl); vect_rm(vin); vect_rm(vout); }. More... | |
static void | xml_Region_Range (region reg, string_buffer sb_result) |
static bool | region_range_nul_p (region reg, Variable phi) |
tatic bool string_in_list_p(string ts,list lr){ bool trouve=false; MAPL(tt, {trouve= trouve || strcmp(STRING(CAR(tt)),ts) == 0;}, lr); return trouve; } More... | |
char * | str_sub (const char *s, int start, int end) |
char * | pointer_to_initial_name (char *ts, _UNUSED_ char *ste) |
static const char * | words_points_to_reference (reference rv, bool suffix_only_p, region reg) |
static void | xml_Full_Type (type pt, int max_step, string_buffer type_result) |
static void | xml_Type_Entity (entity vv, string_buffer type_buffer) |
static void | xml_Region_Parameter (list pattern_region, string_buffer sb_result) |
static int | find_effect_actions_for_entity (list leff, effect *effr, effect *effw, entity e) |
static void | same_entities (reference r, expression_ctxt *ctxt) |
static bool | entity_in_expression_p (expression exp, entity e) |
static void | xml_ParameterUseToArrayBound (entity var, string_buffer sb_result) |
static bool | same_callst_p (Pcallst c1, Pcallst c2) |
static void | update_def_into_tasks_table (entity v, Pcallst c1) |
static void | add_def_into_tasks_table (entity v, Pcallst c1) |
static void | xml_TaskReturnParameter (entity function, _UNUSED_ int statnb, string_buffer sb_result) |
static void | xml_TaskParameter (bool assign_function, _UNUSED_ entity function, int statnb, bool is_not_main_p, entity var, Pvecteur formal_parameters, list pattern_region, Pvecteur paving_indices, string_buffer sb_result, string_buffer buffer_assign) |
static void | cumul_and_update_effects_of_statement (statement s) |
static void | cumul_effects_of_statement (statement s) |
static void | xml_TaskParameters (statement stat, bool assign_function, int code_tag, entity module, list pattern_region, Pvecteur paving_indices, string_buffer sb_result) |
bool | eval_linear_expression (expression exp, transformer ps, int *val, int *min, int *max) |
static void | xml_Bounds (expression elow, expression eup, transformer t, _UNUSED_ Psysteme prec, bool formal_p, string_buffer sb_result) |
UNUSED static bool eval_linear_expression2( expression exp, Psysteme ps, int *val, int *min, int *max) { normalized norm= normalized_undefined; Pvecteur vexp,pv; bool result = true,result_exact = true,min_exact=true,max_exact=true; val = 0; min=0; max=0;. More... | |
static void | xml_Bounds_and_Stride (expression elow, expression eup, expression stride, transformer t, Psysteme prec, bool formal_p, string_buffer sb_result) |
static void | find_memory_comment_on_array (statement s) |
static string | memory_location_for_array_p (const char *sa) |
static void | xml_Array (entity var, transformer t, Psysteme prec, bool formal_p, string_buffer sb_result) |
static void | xml_Scalar (entity var, _UNUSED_ Psysteme prec, string_buffer sb_result) |
static void | xml_GlobalVariables (transformer t, Psysteme prec, bool printp, string_buffer sb_result) |
static void | store_local_array_declaration (statement s) |
static void | xml_LocalVariables (entity module, transformer t, Psysteme prec, string_buffer sb_result) |
static void | xml_FormalVariables (entity module, transformer t, Psysteme prec, string_buffer sb_result) |
static bool | pragma_motif_p (statement s) |
static void | motif_in_statement (statement s) |
static void | box_in_statement (statement s) |
currently unused static void motif_in_statement2(statement s) { string comm = statement_comments(s); if (!string_undefined_p(comm) && strstr(comm,"MOTIF")!=NULL) motif_in_statement_p= true; } More... | |
static bool | string_parameter_p (entity e) |
static void | xml_Loop (statement s, string_buffer sb_result) |
static void | xml_Loops (stack st, bool call_external_loop_p, list *pattern_region, Pvecteur *paving_indices, Pvecteur *pattern_indices, bool motif_in_te_p, string_buffer sb_result) |
static transformer | first_precondition_of_module (const char *module_name __attribute__((unused)), Psysteme *ps) |
static void | matrix_init (Pmatrix mat, int n, int m) |
static void | xml_Matrix (Pmatrix mat, int n, int m, string_buffer sb_result) |
static int | int_compare (void const *a, void const *b) |
static void | tri_abc (int a[12], int dim, int result[12]) |
static void | xml_Transposed_Matrix2D (Pmatrix mat) |
static void | xml_Transposed_Matrix3_5D (Pmatrix mat, int a[12], int ArrayDim1, _UNUSED_ int ArrayDim2) |
static expression | skip_cast_expression (expression exp) |
static expression | skip_field_and_cast_expression (expression exp) |
static expression | skip_cast_and_addop_expression (expression exp) |
static void | xml_Transposition (statement s, call c, int d, string_buffer sb_result, int version) |
static void | xml_Task (const char *module_name, int code_tag, string_buffer sb_result) |
static void | xml_Connection (list ActualArrayInd, int ActualArrayDim, int FormalArrayDim, string_buffer sb_result) |
static void | xml_LoopOffset (list ActualArrayInd, int ActualArrayDim, Pvecteur loop_indices, string_buffer sb_result) |
static void | xml_ConstOffset (list ActualArrayInd, int ActualArrayDim, string_buffer sb_result) |
static int | check_alias_args (reference r, alias_in_args *p) |
static bool | aliasing_p (call c, reference refname) |
static void | xml_Argument (statement s, entity function, int statnb, bool assign_func, expression exp0, entity FormalName, Pvecteur loop_indices, transformer t, _UNUSED_ Psysteme prec, string_buffer sb_result) |
static void | xml_AssignArgument (_UNUSED_ statement s, entity function, int statnb, bool assign_func, expression exp, entity FormalName, Pvecteur loop_indices, transformer t, _UNUSED_ Psysteme prec, string_buffer sb_result) |
static void | xml_Arguments (statement s, entity function, int statnb, bool assign_func, Pvecteur loop_indices, transformer t, Psysteme prec, string_buffer sb_result) |
static void | statement_in_truebranch (statement s) |
static bool | logic_condition_filter (statement s1, statement sx, entity *cond, expression *lhs, expression *rhs) |
static void | dependencies_filter (statement s1, int *k1) |
static bool | indice_p (stack indices, entity v) |
static void | xml_Chain_Graph (entity module, statement mod_stat, graph mod_graph, nest_context_p nest, string_buffer sb_result) |
static void | xml_Chains (entity module, const char *mod_name, statement mod_stat, nest_context_p nest, string_buffer sb_result) |
static void | print_call_precondition (Psysteme prec, string_buffer sb_result) |
static void | xml_Call (entity module, int code_tag, int taskNumber, nest_context_p nest, string_buffer sb_result) |
static void | xml_Compute_and_Need (entity func, list effects_list, Pvecteur vargs, string_buffer sb_result) |
static int | find_code_status (const char *module_name) |
static void | xml_Boxes (const char *module_name, int code_tag, string_buffer sb_result) |
static void | xml_Application (const char *module_name, int code_tag, string_buffer sb_result) |
static bool | generic_print_xml_application (const char *module_name, bool is_app) |
bool | print_xml_application_with_points_to (const char *module_name) |
bool | print_xml_application (const char *module_name) |
bool | print_xml_application_main (const char *module_name) |
bool | print_xml_application_main_with_points_to (const char *module_name) |
#define BL " " |
Definition at line 116 of file xml_prettyprinter.c.
#define CLOSEANGLE ">" |
Definition at line 85 of file xml_prettyprinter.c.
#define CLOSEBRACE "}" |
Definition at line 82 of file xml_prettyprinter.c.
#define CLOSEBRACKET "]" |
Definition at line 76 of file xml_prettyprinter.c.
#define CLOSEPAREN ")" |
Definition at line 79 of file xml_prettyprinter.c.
#define code_is_a_box 0 |
Definition at line 99 of file xml_prettyprinter.c.
#define code_is_a_main 2 |
Definition at line 101 of file xml_prettyprinter.c.
#define code_is_a_te 1 |
Definition at line 100 of file xml_prettyprinter.c.
#define COMMA "," |
Definition at line 68 of file xml_prettyprinter.c.
#define COMMENT "//" SPACE |
Definition at line 89 of file xml_prettyprinter.c.
#define current_module_is_a_function | ( | ) | (entity_function_p(get_current_module_entity())) |
Definition at line 184 of file xml_prettyprinter.c.
#define DEBUG_XML 1 |
Definition at line 30 of file xml_prettyprinter.c.
#define EMPTY "" |
Definition at line 69 of file xml_prettyprinter.c.
#define ITEM_NOT_IN_ARRAY -1 |
Definition at line 296 of file xml_prettyprinter.c.
#define MEM_PREFIX "-MEM:" |
Definition at line 133 of file xml_prettyprinter.c.
#define MONMAX | ( | a, | |
b | |||
) | ((a<b)?b:a) |
#define NL "\n" |
Definition at line 70 of file xml_prettyprinter.c.
#define OPENANGLE "<" |
Definition at line 84 of file xml_prettyprinter.c.
#define OPENBRACE "{" |
Definition at line 81 of file xml_prettyprinter.c.
#define OPENBRACKET "[" |
Definition at line 75 of file xml_prettyprinter.c.
#define OPENPAREN "(" |
Definition at line 78 of file xml_prettyprinter.c.
#define QUOTE "\"" |
Definition at line 90 of file xml_prettyprinter.c.
#define RESULT_NAME "result" |
Definition at line 195 of file xml_prettyprinter.c.
#define SEMICOLON ";" NL |
Definition at line 72 of file xml_prettyprinter.c.
#define SHARPDEF "#define" |
Definition at line 88 of file xml_prettyprinter.c.
#define SLASH "/" |
Definition at line 86 of file xml_prettyprinter.c.
#define SPACE " " |
Definition at line 73 of file xml_prettyprinter.c.
#define TAB " " |
Definition at line 71 of file xml_prettyprinter.c.
#define TB1 "\t" |
Definition at line 117 of file xml_prettyprinter.c.
#define USER_MAIN "main" |
Definition at line 102 of file xml_prettyprinter.c.
#define XML_ARRAY_PREFIX "A_" |
Definition at line 559 of file xml_prettyprinter.c.
#define XML_ARRAY_PREFIX "A_" |
Definition at line 559 of file xml_prettyprinter.c.
#define XML_MOTIF_PREFIX "M_" |
Definition at line 94 of file xml_prettyprinter.c.
Definition at line 97 of file xml_prettyprinter.c.
#define XML_TASK_PREFIX "T_" |
Definition at line 93 of file xml_prettyprinter.c.
typedef dg_arc_label arc_label |
Definition at line 54 of file xml_prettyprinter.c.
typedef dg_vertex_label vertex_label |
Definition at line 55 of file xml_prettyprinter.c.
|
static |
print_statement(s); stack_map( st, print_statement);
Definition at line 1392 of file xml_prettyprinter.c.
References gen_array_nitems(), int, and nest_context_t::nested_call.
Definition at line 3178 of file xml_prettyprinter.c.
References hash_entity_def_into_tasks, hash_get(), hash_put(), and HASH_UNDEFINED_VALUE.
Referenced by cumul_and_update_effects_of_statement().
|
static |
Definition at line 1981 of file xml_prettyprinter.c.
References string_buffer_append().
Referenced by print_call_precondition(), string_buffer_append_numeric(), string_buffer_append_symbolic(), string_buffer_append_word(), two_string_buffer_append_symbolic(), xml_Application(), xml_Argument(), xml_Array(), xml_AssignArgument(), xml_Bounds(), xml_Boxes(), xml_Call(), xml_Chain_Graph(), xml_Compute_and_Need(), xml_Full_Type(), xml_Loop(), xml_Matrix(), xml_ParameterUseToArrayBound(), xml_Pattern_Paving(), xml_Region_Parameter(), xml_Scalar(), xml_Task(), xml_TaskParameter(), xml_TaskReturnParameter(), xml_Transposition(), and xml_Type_Entity().
Definition at line 4519 of file xml_prettyprinter.c.
References alias_in_args::alias_arg_p, call_arguments, check_alias_args(), exp, EXPRESSION, FOREACH, gen_context_recurse, gen_null2(), and reference_domain.
Referenced by xml_Argument().
|
static |
currently unused static void motif_in_statement2(statement s) { string comm = statement_comments(s); if (!string_undefined_p(comm) && strstr(comm,"MOTIF")!=NULL) motif_in_statement_p= true; }
Definition at line 3989 of file xml_prettyprinter.c.
References box_in_statement_p, statement_comments, and string_undefined_p.
Referenced by find_code_status().
|
static |
CA il faut implemeter un choix judicieux ... distribution ou encapsulation
pour le moment distribution systematique de tout call
il faut recuperer les appels de fonction value_code_p(entity_initial(f)
Definition at line 1338 of file xml_prettyprinter.c.
References call_function, ENTITY_ASSIGN_P, entity_function_p(), entity_subroutine_p(), and f().
Referenced by find_loops_and_calls_in_box(), and search_nested_loops_and_calls().
|
static |
Definition at line 4513 of file xml_prettyprinter.c.
References alias_in_args::alias_arg_p, reference_equal_p(), and alias_in_args::rf.
Referenced by aliasing_p().
|
static |
Definition at line 2107 of file xml_prettyprinter.c.
References Spattern::diff, Spattern::next, Svecteur::succ, TCST, Svecteur::val, Svecteur::var, vect_dimension(), and vect_size().
Referenced by find_pattern().
|
static |
Definition at line 3357 of file xml_prettyprinter.c.
References action_write_p, add_def_into_tasks_table(), CAR, CDR, cumulated_list, EFFECT, effect_action, effect_any_reference, effects_package_entity_p(), ENDP, entity_static_variable_p(), entity_undefined, callst::func, gen_append(), list_undefined_p, load_proper_rw_effects_list(), malloc(), NIL, reference_variable, callst::stat_nb, statement_number, std_file_entity_p(), store_effect_p(), callst::succ, and top_level_entity_p().
Referenced by xml_Chain_Graph().
|
static |
Definition at line 3383 of file xml_prettyprinter.c.
References cumulated_list, ENDP, gen_append(), list_undefined_p, and load_proper_rw_effects_list().
Referenced by xml_Application(), and xml_GlobalVariables().
Definition at line 176 of file xml_prettyprinter.c.
References apply_entity_to_entity(), bound_entity_to_entity_p(), and def_to_task_mapping.
Referenced by xml_Compute_and_Need().
|
static |
Definition at line 147 of file xml_prettyprinter.c.
References def_to_task_mapping, entity_to_entity_undefined_p, make_entity_to_entity(), and pips_assert.
Referenced by generic_print_xml_application().
|
static |
Definition at line 161 of file xml_prettyprinter.c.
References def_to_task_mapping, entity_to_entity_undefined, entity_to_entity_undefined_p, and pips_assert.
Referenced by generic_print_xml_application().
|
static |
Definition at line 154 of file xml_prettyprinter.c.
References def_to_task_mapping, entity_to_entity_undefined_p, and pips_assert.
Referenced by generic_print_xml_application().
Definition at line 168 of file xml_prettyprinter.c.
References bound_entity_to_entity_p(), def_to_task_mapping, extend_entity_to_entity(), and update_entity_to_entity().
Referenced by xml_Chain_Graph(), and xml_Compute_and_Need().
Definition at line 4897 of file xml_prettyprinter.c.
References call_function, declaration_statement_p(), ENTITY_ASSIGN_P, entity_undefined, instruction_call, instruction_tag, is_instruction_call, is_instruction_test, k1, s1, and statement_instruction.
Referenced by xml_Chain_Graph().
|
static |
Definition at line 3101 of file xml_prettyprinter.c.
References expression_ctxt::entity_in_p, exp, gen_context_recurse, gen_true2(), reference_domain, and same_entities().
Referenced by xml_ParameterUseToArrayBound().
Definition at line 2079 of file xml_prettyprinter.c.
References entity_local_name().
Referenced by xml_Array(), xml_Region_Parameter(), xml_Scalar(), and xml_TaskParameter().
bool eval_linear_expression | ( | expression | exp, |
transformer | ps, | ||
int * | val, | ||
int * | min, | ||
int * | max | ||
) |
printf("Eval expression :\n"); print_expression(exp); Psysteme prec = sc_dup((Psysteme) predicate_system(transformer_relation(ps))); printf("In context :\n"); sc_print(prec, (get_variable_name_t) entity_local_name);
exp | xp |
ps | s |
val | al |
min | in |
max | ax |
Definition at line 3469 of file xml_prettyprinter.c.
References compute_basic_concrete_type(), exp, expression_to_type(), free_transformer(), integer_expression_and_precondition_to_integer_interval(), integer_type_p(), max, min, reset_analyzed_types(), set_analyzed_types(), transformer_is_rn_p(), transformer_range(), and transformer_undefined_p.
Referenced by xml_Argument(), xml_AssignArgument(), xml_Bounds(), and xml_Bounds_and_Stride().
|
static |
Definition at line 1406 of file xml_prettyprinter.c.
References CONS, entity_intrinsic(), EXPRESSION, expression_constant_p(), expression_to_int(), int_to_expression(), make_call_expression(), NIL, and PLUS_OPERATOR_NAME.
Referenced by xml_loop().
|
static |
Definition at line 5922 of file xml_prettyprinter.c.
References box_in_statement(), box_in_statement_p, code_is_a_box, code_is_a_main, code_is_a_te, db_get_memory_resource(), gen_recurse, gen_true(), get_string_property(), module_name(), motif_in_statement(), motif_in_statement_p, same_string_p, and statement_domain.
Referenced by generic_print_xml_application().
|
static |
Definition at line 3071 of file xml_prettyprinter.c.
References action_read_p, CAR, CDR, EFFECT, effect_action, effect_any_reference, ENDP, environment_effect_p(), NIL, ref, reference_variable, same_entity_p(), and store_effect_p().
Referenced by xml_Argument(), and xml_TaskParameter().
|
static |
Definition at line 2030 of file xml_prettyprinter.c.
References call_domain, call_selection(), gen_context_multi_recurse(), loop_domain, pop_current_statement(), pop_if(), pop_loop(), push_current_statement(), push_if(), push_loop(), statement_domain, store_call_context(), and test_domain.
Referenced by xml_Boxes(), and xml_Task().
|
static |
Definition at line 3674 of file xml_prettyprinter.c.
References array_location_string, array_mem_string, statement_comments, and string_undefined_p.
Referenced by memory_location_for_array_p().
|
static |
elimination des variables autres de les phi et les indices de boucles englobants copie de la base + mise a zero des indices englobants + projection selon les elem de ce vecteur
printf("Base des variables :\n"); vect_print(vars_to_eliminate, entity_local_name);
printf("Elimination des variables :\n"); vect_print(vars_to_eliminate, entity_local_name);
printf("Tri de la contrainte :\n"); vect_print(c->vecteur, entity_local_name);
printf(" bornes inf avec indices de boucles englobants :\n"); vect_print(bounds[upper][nb_indices+1]->vecteur, entity_local_name);
printf(" bornes inf avec indices de boucles englobants :\n"); vect_print(bounds[lower][nb_indices+1]->vecteur, entity_local_name);
printf(" indices contenus dans la contrainte :\n"); vect_print(bounds[ind][nb_indices+1]->vecteur, entity_local_name);
printf("Nb borne inf = %d, Nb borne sup = %d ;\n",nb_lower,nb_upper);
case with 1 loop index in the loop bound constraints
printf("Tests de la negation des contraintes :\n"); vect_print(cl->vecteur, entity_local_name); vect_print(cu->vecteur, entity_local_name);
case where loop bounds are numeric
Only bounds with several loop indices
printf("PB - Only bounds with several loop indices\n");
Definition at line 1461 of file xml_prettyprinter.c.
References Ssysteme::base, BASE_NULLE, contrainte_dup(), contrainte_make(), CONTRAINTE_UNDEFINED, CONTRAINTE_UNDEFINED_P, make_phi_entity(), NO_OFL_CTRL, Scontrainte::succ, Svecteur::succ, TCST, upperbound(), value_neg_p, value_pos_p, var_of, vect_add_elem(), vect_coeff(), vect_copy(), vect_erase_var(), vect_opposite_except(), vect_rm(), vect_size(), Scontrainte::vecteur, VECTEUR_NUL, and VECTEUR_NUL_P.
Referenced by xml_tiling().
|
static |
Liste des variables a eliminer autres de les phi et les indices de boucles englobants et les parametres formels de la fonction. copie de la base + mise a zero des indices englobants
on classe toutes les contraintes ayant plus de 2 indices de boucles externes ensemble
case with 1 loop index in the loop bound constraints than 0
DEBUG printf("Liste des contraintes ajoutees PHI-%d: \n",dim); for (pt=*patt; pt != NULL; pt=pt->next) { vect_fprint(stdout, pt->diff, (char * (*)(Variable)) entity_local_name); vect_fprint(stdout, pt->lower, (char * (*)(Variable)) entity_local_name); vect_fprint(stdout, pt->upper, (char * (*)(Variable)) entity_local_name); vect_fprint(stdout, pt->lind, (char * (*)(Variable)) entity_local_name); fprintf(stdout,"mult = %d\n", pt->cl_coeff); }
DEBUG pt =*patt; if (patt != NULL && pt != NULL) { printf("Pattern choisi : \n"); vect_fprint(stdout, pt->diff, (char * (*)(Variable)) entity_local_name); vect_fprint(stdout, pt->lower, (char * (*)(Variable)) entity_local_name); vect_fprint(stdout, pt->upper, (char * (*)(Variable)) entity_local_name); vect_fprint(stdout, pt->lind, (char * (*)(Variable)) entity_local_name); fprintf(stdout,"mult = %d\n", pt->cl_coeff); }
Definition at line 2139 of file xml_prettyprinter.c.
References Ssysteme::base, BASE_NULLE, base_rm, choose_pattern(), Spattern::cl_coeff, contrainte_make(), CONTRAINTE_UNDEFINED, CONTRAINTE_UNDEFINED_P, Spattern::diff, int, Spattern::lind, Spattern::lower, make_phi_entity(), malloc(), Spattern::next, NO_OFL_CTRL, sc_dup(), sc_rm(), Scontrainte::succ, Svecteur::succ, TCST, Spattern::unitp, Spattern::upper, value_abs, value_neg_p, value_pos_p, var_of, vect_add(), vect_add_elem(), vect_chg_sgn(), vect_cl2(), vect_coeff(), vect_copy(), vect_dimension(), vect_dup(), vect_erase_var(), vect_rm(), vect_size(), Scontrainte::vecteur, VECTEUR_NUL, and VECTEUR_NUL_P.
Referenced by xml_Pattern_Paving().
|
static |
Definition at line 4090 of file xml_prettyprinter.c.
References CAR, get_current_module_statement(), instruction_sequence, instruction_tag, is_instruction_sequence, load_statement_precondition(), predicate_system, sc_dup(), sequence_statements, STATEMENT, statement_instruction, statement_undefined, transformer_relation, and transformer_undefined.
Referenced by xml_Application(), xml_Boxes(), and xml_Task().
|
static |
Definition at line 298 of file xml_prettyprinter.c.
References gen_array_item(), gen_array_nitems(), int, ITEM_NOT_IN_ARRAY, and same_string_p.
Referenced by xml_array_in_task(), xml_call_from_assignation(), xml_call_from_indice(), and xml_call_from_loopnest().
Get the READ and WRITE regions of the module
Definition at line 6118 of file xml_prettyprinter.c.
References code_is_a_box, code_is_a_main, code_is_a_te, concatenate(), db_build_file_resource_name(), db_get_current_workspace_directory(), db_get_memory_resource(), DB_PUT_FILE_RESOURCE, DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, def_to_task_init(), def_to_task_mapping, def_to_task_reset(), def_to_task_set(), find_code_status(), fortran_appli, fortran_module_p(), fprintf(), free(), free_statement_global_stack(), free_value_mappings(), get_current_module_entity(), hash_entity_def_into_tasks, hash_pointer, hash_table_free(), hash_table_make(), init_cost_table(), make_statement_global_stack(), module, module_name(), module_name_to_entity(), module_to_value_mappings(), out, pips_assert, pips_debug, pips_internal_error, reset_complexity_map(), reset_cumulated_rw_effects(), reset_current_module_entity(), reset_current_module_statement(), reset_precondition_map(), reset_proper_rw_effects(), reset_rw_effects(), safe_fclose(), safe_fopen(), set_cumulated_rw_effects(), set_current_module_entity(), set_current_module_statement(), set_precondition_map(), set_proper_rw_effects(), set_rw_effects(), statement_undefined_p, strdup(), string_buffer_free(), string_buffer_make(), string_buffer_to_string(), xml_Application(), xml_Boxes(), and xml_Task().
Referenced by print_xml_application(), print_xml_application_main(), print_xml_application_main_with_points_to(), and print_xml_application_with_points_to().
Definition at line 4922 of file xml_prettyprinter.c.
References indices, same_entity_p(), and STACK_MAP_X.
Referenced by xml_Chain_Graph().
|
static |
Definition at line 4162 of file xml_prettyprinter.c.
Referenced by tri_abc().
|
static |
Definition at line 4867 of file xml_prettyprinter.c.
References call_arguments, call_function, CAR, CDR, ENTITY_LOGICAL_OPERATOR_P, exp, EXPRESSION, expression_syntax, gen_length(), instruction_test, instruction_test_p, s1, spear_warning, statement_instruction, statement_undefined_p, syntax_call, syntax_call_p, and test_condition.
Referenced by xml_Call(), and xml_Chain_Graph().
Definition at line 4117 of file xml_prettyprinter.c.
References MATRIX_ELEM.
Referenced by xml_Connection(), xml_ConstOffset(), xml_LoopOffset(), and xml_Transposition().
|
static |
Definition at line 3684 of file xml_prettyprinter.c.
References array_location_string, array_mem_string, find_memory_comment_on_array(), free(), gen_recurse, gen_true(), get_current_module_statement(), malloc(), MEM_PREFIX, and statement_domain.
Referenced by xml_Array().
|
static |
Definition at line 3977 of file xml_prettyprinter.c.
References motif_in_statement_p, and pragma_motif_p().
Referenced by find_code_status(), xml_Loops(), and xml_Task().
char* pointer_to_initial_name | ( | char * | ts, |
_UNUSED_ char * | ste | ||
) |
Prefix extraction int nbpref= strcspn(ste, ts); string pref_ts= malloc (sizeof (char) * (nbpref+1)); pref_ts = strncpy(pref_ts,ste,(int)nbpref); pref_ts[nbpref]='\0'; fprintf(stdout,"Prefix for %s in %s is %s\n",ts, ste,pref_ts );
Search entity to determine its type string newst = malloc (sizeof (char) * (nbpref+strlen(initial_ts))); newst = strcat(pref_ts,initial_ts); entity newent=gen_find_entity(newst);
Definition at line 2690 of file xml_prettyprinter.c.
References reduction_p(), and str_sub().
Referenced by words_points_to_reference().
|
static |
if (debug) print_statement(s);
Definition at line 1287 of file xml_prettyprinter.c.
References nest_context_t::current_stat, and stack_pop().
Referenced by find_loops_and_calls_in_box(), and search_nested_loops_and_calls().
|
static |
Definition at line 1319 of file xml_prettyprinter.c.
References stack_pop(), and nest_context_t::testif.
Referenced by find_loops_and_calls_in_box().
|
static |
Definition at line 1304 of file xml_prettyprinter.c.
References nest_context_t::loop_indices, nest_context_t::loops_for_call, and stack_pop().
Referenced by find_loops_and_calls_in_box(), and search_nested_loops_and_calls().
|
static |
encapsulation de l'ensemble des instructions appartenant au test
Definition at line 1374 of file xml_prettyprinter.c.
Referenced by search_nested_loops_and_calls().
Definition at line 3959 of file xml_prettyprinter.c.
References EXTENSION, extension_pragma, extension_pragma_p, extensions_extension, FOREACH, pragma_string, pragma_string_p, same_string_p, and statement_extensions.
Referenced by motif_in_statement(), and xml_Loops().
|
static |
Definition at line 5609 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), contrainte_vecteur, Ssysteme::egalites, entity_initial, entity_user_name(), global_margin, if(), Ssysteme::inegalites, int2a(), NL, old_value_entity_p(), OPENANGLE, QUOTE, reference_variable, region, region_undefined, SLASH, string_buffer_append(), string_buffer_append_word(), Scontrainte::succ, TCST, Svecteur::val, value_reference, value_reference_p, value_to_variable(), value_undefined_p, Svecteur::var, vect_chg_coeff(), vect_coeff(), vect_copy(), vect_dimension(), vect_rm(), vect_size(), VECTEUR_NUL_P, VECTEUR_UNDEFINED_P, and words_points_to_reference().
Referenced by xml_Call().
|
static |
=======================================================
Definition at line 1214 of file xml_prettyprinter.c.
Referenced by xml_Region_Parameter(), and xml_TaskParameter().
|
static |
Definition at line 1221 of file xml_prettyprinter.c.
Referenced by xml_Chain_Graph().
bool print_xml_application | ( | const char * | module_name | ) |
module_name | odule_name |
Definition at line 6243 of file xml_prettyprinter.c.
References generic_print_xml_application(), and module_name().
bool print_xml_application_main | ( | const char * | module_name | ) |
module_name | odule_name |
Definition at line 6249 of file xml_prettyprinter.c.
References generic_print_xml_application(), and module_name().
bool print_xml_application_main_with_points_to | ( | const char * | module_name | ) |
module_name | odule_name |
Definition at line 6254 of file xml_prettyprinter.c.
References db_get_memory_resource(), generic_print_xml_application(), module_name(), reset_pt_to_list(), and set_pt_to_list().
bool print_xml_application_with_points_to | ( | const char * | module_name | ) |
module_name | odule_name |
Definition at line 6234 of file xml_prettyprinter.c.
References db_get_memory_resource(), generic_print_xml_application(), module_name(), reset_pt_to_list(), and set_pt_to_list().
bool print_xml_code | ( | const char * | module_name | ) |
Initiates xml pretty print modules.
Get the READ and WRITE regions of the module
save to file
module_name | odule_name |
Definition at line 1888 of file xml_prettyprinter.c.
References concatenate(), db_build_file_resource_name(), db_get_current_workspace_directory(), db_get_memory_resource(), DB_PUT_FILE_RESOURCE, debug_off, debug_on, entity_name, fprintf(), free(), init_cost_table(), module, module_name(), module_name_to_entity(), out, pips_debug, pips_internal_error, reset_complexity_map(), reset_current_module_entity(), reset_current_module_statement(), reset_rw_effects(), safe_fclose(), safe_fopen(), set_complexity_map(), set_current_module_entity(), set_current_module_statement(), set_rw_effects(), statement_undefined_p, strdup(), valid_specification_p(), and xml_code().
bool print_xml_code_with_explicit_motif | ( | const char * | module_name | ) |
Initiates xml pretty print modules.
save to file
module_name | odule_name |
Definition at line 1162 of file xml_prettyprinter.c.
References array_dims, array_names, concatenate(), db_build_file_resource_name(), db_get_current_workspace_directory(), db_get_memory_resource(), DB_PUT_FILE_RESOURCE, debug_off, debug_on, entity_name, fprintf(), free(), gen_array_make(), global_module_name, module, module_name(), module_name_to_entity(), out, pips_debug, pips_internal_error, reset_current_module_entity(), reset_current_module_statement(), safe_fclose(), safe_fopen(), set_current_module_entity(), set_current_module_statement(), statement_undefined_p, strdup(), and xml_code_string().
|
static |
Definition at line 1281 of file xml_prettyprinter.c.
References nest_context_t::current_stat, and stack_push().
Referenced by find_loops_and_calls_in_box(), and search_nested_loops_and_calls().
|
static |
on sauve le statement associe au test
Definition at line 1311 of file xml_prettyprinter.c.
References nest_context_t::current_stat, stack_head(), stack_push(), and nest_context_t::testif.
Referenced by find_loops_and_calls_in_box().
|
static |
on sauve le statement associe a la boucle courante
Definition at line 1295 of file xml_prettyprinter.c.
References nest_context_t::current_stat, loop_index, nest_context_t::loop_indices, nest_context_t::loops_for_call, stack_head(), and stack_push().
Referenced by find_loops_and_calls_in_box(), and search_nested_loops_and_calls().
|
static |
encapsulation de l'ensemble des instructions appartenant au test
Definition at line 1366 of file xml_prettyprinter.c.
Referenced by search_nested_loops_and_calls().
tatic bool string_in_list_p(string ts,list lr){ bool trouve=false; MAPL(tt, {trouve= trouve || strcmp(STRING(CAR(tt)),ts) == 0;}, lr); return trouve; }
Definition at line 2650 of file xml_prettyprinter.c.
References array_entity_p(), effect_any_reference, entity_type, gen_length(), ref, reference_variable, region_system, region_undefined, sc_dup(), Scontrainte::succ, type_variable, variable_dimensions, vect_coeff(), vect_size(), and Scontrainte::vecteur.
Referenced by words_points_to_reference().
Definition at line 3154 of file xml_prettyprinter.c.
References callst::func, same_entity_p(), and callst::stat_nb.
Referenced by update_def_into_tasks_table().
|
static |
Definition at line 3095 of file xml_prettyprinter.c.
References expression_ctxt::e, expression_ctxt::entity_in_p, reference_variable, and same_entity_p().
Referenced by entity_in_expression_p().
|
static |
Definition at line 1330 of file xml_prettyprinter.c.
References call_function, call_undefined, encapsulated_call, ENTITY_ASSIGN_P, entity_function_p(), entity_subroutine_p(), and f().
Referenced by xml_Argument(), xml_Arguments(), xml_Call(), xml_Chain_Graph(), and xml_TaskParameters().
|
static |
Definition at line 1383 of file xml_prettyprinter.c.
References call_domain, call_selection(), gen_context_multi_recurse(), loop_domain, pop_current_statement(), pop_loop(), pop_test(), push_current_statement(), push_loop(), push_test(), statement_domain, store_call_context(), and test_domain.
Referenced by xml_tasks().
meaningful call
number of calls
Definition at line 838 of file xml_prettyprinter.c.
References call_undefined, continue_statement_p(), instruction_call, MAP, sequence_statements, STATEMENT, statement_call_p(), and statement_instruction.
Referenced by xml_loop_from_loop(), and xml_loop_from_sequence().
meaningful loop
number of loops
Definition at line 862 of file xml_prettyprinter.c.
References continue_statement_p(), instruction_loop, loop_undefined, MAP, sequence_statements, STATEMENT, statement_instruction, and statement_loop_p().
Referenced by xml_loop_from_loop(), and xml_loop_from_sequence().
|
static |
Definition at line 4228 of file xml_prettyprinter.c.
References ADDRESS_OF_OPERATOR_NAME, call_arguments, call_function, CAR, cast_expression, entity_local_name(), exp, EXPRESSION, expression_syntax, syntax_call, syntax_call_p, syntax_cast, and syntax_cast_p.
Referenced by xml_Argument().
|
static |
Definition at line 4210 of file xml_prettyprinter.c.
References cast_expression, exp, expression_syntax, syntax_cast, and syntax_cast_p.
Referenced by xml_Argument().
|
static |
Definition at line 4218 of file xml_prettyprinter.c.
References call_arguments, CAR, cast_expression, exp, EXPRESSION, expression_call(), expression_field_p(), expression_syntax, syntax_cast, and syntax_cast_p.
Referenced by xml_Call(), and xml_Transposition().
|
static |
Definition at line 4860 of file xml_prettyprinter.c.
References statement_in_truebranch_p, statement_number, and test_statement_of_reference.
Referenced by xml_Call(), and xml_Chain_Graph().
|
static |
on sauve le statement associe au call
Definition at line 1349 of file xml_prettyprinter.c.
References nest_context_t::current_stat, gen_array_append(), nest_context_t::loop_indices, nest_context_t::loops_for_call, nest_context_t::nested_call, nest_context_t::nested_if, nest_context_t::nested_loop_indices, nest_context_t::nested_loops, stack_copy(), stack_head(), and nest_context_t::testif.
Referenced by find_loops_and_calls_in_box(), and search_nested_loops_and_calls().
|
static |
Definition at line 3874 of file xml_prettyprinter.c.
References declaration_statement_p(), gen_append(), local_declaration_list, and statement_declarations.
Referenced by xml_LocalVariables().
start | tart |
end | nd |
Definition at line 2673 of file xml_prettyprinter.c.
References end, malloc(), and start.
Referenced by pointer_to_initial_name().
|
static |
Definition at line 2018 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), global_margin, NL, OPENANGLE, and string_buffer_append().
Referenced by xml_Argument(), xml_AssignArgument(), xml_Bounds(), xml_Bounds_and_Stride(), and xml_Pattern_Paving().
|
static |
Definition at line 1997 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), global_margin, NL, OPENANGLE, string_buffer_append(), and string_buffer_append_xml_text().
Referenced by xml_Bounds(), xml_Bounds_and_Stride(), and xml_Pattern_Paving().
|
static |
Definition at line 1987 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), global_margin, NL, OPENANGLE, string_buffer_append(), and string_buffer_append_xml_text().
Referenced by print_call_precondition(), xml_Application(), xml_Argument(), xml_Arguments(), xml_Array(), xml_AssignArgument(), xml_Bounds(), xml_Bounds_and_Stride(), xml_Boxes(), xml_Call(), xml_Chain_Graph(), xml_CodeSize(), xml_Connection(), xml_ConstOffset(), xml_FormalVariables(), xml_Full_Type(), xml_GlobalVariables(), xml_Library(), xml_LocalVariables(), xml_Loop(), xml_LoopOffset(), xml_Loops(), xml_Matrix(), xml_Pattern_Paving(), xml_Region_Parameter(), xml_Task(), xml_TaskParameter(), xml_TaskParameters(), xml_TaskReturnParameter(), xml_Transposition(), and xml_Type_Entity().
Definition at line 3996 of file xml_prettyprinter.c.
References entity_user_name(), and string_undefined_p.
Referenced by xml_Chain_Graph(), and xml_Compute_and_Need().
Definition at line 1778 of file xml_prettyprinter.c.
References CHAIN_SWORD, complexity_sprint(), complexity_zero_p(), HASH_UNDEFINED_VALUE, int2a(), load_statement_complexity(), NIL, and words_to_string().
Referenced by xml_task().
Many possible combinations
Definition at line 364 of file xml_prettyprinter.c.
References concatenate(), entity_local_name(), entity_name, entity_type, is_type_enum, is_type_struct, is_type_union, is_type_variable, pips_debug, pips_user_error, strdup(), type_tag, type_variable, TYPEDEF_PREFIX, variable_dimensions, and xml_dim_string().
Referenced by xml_declarations_with_explicit_motif().
Definition at line 4169 of file xml_prettyprinter.c.
References int_compare().
Referenced by xml_Transposed_Matrix3_5D().
|
static |
Definition at line 2007 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), global_margin, NL, OPENANGLE, string_buffer_append(), and string_buffer_append_xml_text().
Referenced by xml_Pattern_Paving().
UNUSED static bool vect_one_p(Pvecteur v) { return (!VECTEUR_NUL_P(v) && vect_size(v) == 1 && vect_coeff(TCST, v) ==1); }.
UNUSED static bool vect_zero_p(Pvecteur v) { return (VECTEUR_NUL_P(v) || (!VECTEUR_NUL_P(v) && vect_size(v) == 1 && value_zero_p(vect_coeff(TCST, v)))); }
Definition at line 1965 of file xml_prettyprinter.c.
References basic_to_string(), entity_type, SizeOfElements(), type_variable, type_variable_p, and variable_basic.
Referenced by xml_Array(), xml_Scalar(), and xml_TaskParameter().
Definition at line 3159 of file xml_prettyprinter.c.
References hash_del(), hash_entity_def_into_tasks, hash_get(), hash_put(), HASH_UNDEFINED_VALUE, same_callst_p(), and callst::succ.
Referenced by xml_Argument(), xml_AssignArgument(), and xml_TaskParameter().
|
static |
Definition at line 1878 of file xml_prettyprinter.c.
Referenced by print_xml_code().
Definition at line 187 of file xml_prettyprinter.c.
References entity_storage, entity_type, storage_ram_p, storage_return_p, and type_variable_p.
Referenced by xml_code_string(), and xml_declarations().
UNUSED static void array_vars_read_or_written(list effects_list, Pvecteur *vl) { Pvecteur vin=VECTEUR_NUL; Pvecteur vout = VECTEUR_NUL; list pc; for (pc= effects_list;pc != NIL; pc = CDR(pc)){ effect e = EFFECT(CAR(pc)); reference r = effect_any_reference(e); if (store_effect_p(e) && array_entity_p(reference_variable(r))) { entity v = reference_variable(r); if (effect_read_p(e)) vect_add_elem(&vin,v,1); else vect_add_elem(&vout,v,1); } } vin = base_normalize(vin); vout = base_normalize(vout); vl = vect_substract(vin,vout); vl= base_normalize(*vl); vect_rm(vin); vect_rm(vout); }.
Definition at line 2526 of file xml_prettyprinter.c.
References base_normalize(), CAR, CDR, EFFECT, effect_any_reference, effect_cell, effect_read_p, effect_undefined_p, NIL, reference_variable, store_effect_p(), and vect_add_elem().
Referenced by xml_Chain_Graph(), and xml_Compute_and_Need().
Definition at line 1948 of file xml_prettyprinter.c.
References expression_to_string(), and make_vecteur_expression().
Referenced by xml_Pattern_Paving(), and xml_Region_Range().
|
static |
Definition at line 2720 of file xml_prettyprinter.c.
References array_type_p(), basic_derived, basic_derived_p, basic_pointer, basic_pointer_p, basic_typedef, basic_typedef_p, CAR, CDR, CHAIN_SWORD, compute_basic_concrete_type(), ENTITY, entity_basic_concrete_type(), entity_name, entity_type, entity_undefined, entity_undefined_p, entity_user_name(), exp, EXPRESSION, expression_syntax, expression_to_string(), FOREACH, full_name, gen_length(), gen_nconc(), int, is_type_enum, is_type_struct, is_type_union, is_type_variable, list_to_string(), NIL, pointer_to_initial_name(), printf(), reference_indices, reference_variable, region_range_nul_p(), region_undefined_p, same_entity_p(), strdup(), syntax_reference, syntax_reference_p, type_enum, type_struct, type_tag, type_union, type_variable, variable_basic, and variable_dimensions.
Referenced by print_call_precondition(), xml_Chain_Graph(), xml_Region_Parameter(), and xml_TaskParameter().
|
static |
Definition at line 2059 of file xml_prettyprinter.c.
Referenced by xml_Pattern_Paving().
|
static |
Definition at line 6049 of file xml_prettyprinter.c.
References add_margin(), BL, CLOSEANGLE, code_is_a_main, concatenate(), cumul_effects_of_statement(), cumulated_list, entity_user_name(), first_precondition_of_module(), fortran_appli, gen_recurse, gen_true(), get_current_module_name(), get_current_module_statement(), global_margin, module, module_name(), module_name_to_entity(), NIL, NL, OPENANGLE, pips_assert, QUOTE, sc_free(), statement_domain, string_buffer_append(), string_buffer_append_word(), VECTEUR_NUL, xml_Compute_and_Need(), and xml_GlobalVariables().
Referenced by generic_print_xml_application().
|
static |
Scalar Argument
if (strncmp(aan, "\"", 1) == 0) quote_p = ""; else quote_p = QUOTE;
Array Argument
Save information to generate Task Graph
Definition at line 4529 of file xml_prettyprinter.c.
References add_margin(), aliasing_p(), array_argument_p(), BL, call_domain, call_undefined, CLOSEANGLE, concatenate(), effect_undefined, encapsulated_call, entity_undefined, entity_undefined_p, entity_user_name(), eval_linear_expression(), EvalExpression(), exp, expression_integer_value(), expression_syntax, expression_to_string(), find_effect_actions_for_entity(), free(), callst::func, gen_recurse, gen_true(), global_margin, i2a(), instruction_call, instruction_call_p, int2a(), intptr_t, load_proper_rw_effects_list(), malloc(), max, min, NL, OPENANGLE, pips_internal_error, pop_statement_global_stack(), push_statement_on_statement_global_stack(), QUOTE, reference_indices, reference_undefined, reference_variable, search_1r_function_call(), skip_cast_and_addop_expression(), skip_cast_expression(), spear_warning, callst::stat_nb, statement_instruction, statement_number, strdup(), string_buffer_append(), string_buffer_append_numeric(), string_buffer_append_word(), string_buffer_append_xml_text(), callst::succ, syntax_reference, syntax_reference_p, update_def_into_tasks_table(), value_constant_p, variable_entity_dimension(), Words_Syntax(), words_to_string(), xml_Connection(), xml_ConstOffset(), and xml_LoopOffset().
Referenced by xml_Arguments().
|
static |
Definition at line 4806 of file xml_prettyprinter.c.
References call_arguments, call_domain, call_function, call_undefined, CAR, encapsulated_call, ENTITY_ASSIGN_P, entity_function_p(), entity_subroutine_p(), entity_undefined, exp, EXPRESSION, expression_syntax, find_ith_formal_parameter(), FOREACH, gen_length(), gen_recurse, gen_true(), global_margin, instruction_call, instruction_call_p, intptr_t, io_intrinsic_p(), pips_internal_error, POP, reference_variable, search_1r_function_call(), statement_instruction, statement_number, string_buffer_append_word(), syntax_call, syntax_call_p, syntax_reference, xml_Argument(), and xml_AssignArgument().
Referenced by xml_Call().
|
static |
Print XML Array DATA TYPE and DATA SIZE
Print XML Array Memory Location
Print XML Array DIMENSION
Print XML Array Bound
Print XML Array LAYOUT
Definition at line 3706 of file xml_prettyprinter.c.
References add_margin(), BL, CAR, CDR, CLOSEANGLE, concatenate(), DIMENSION, dimension_lower, dimension_upper, ENDP, entity_type, entity_user_name(), entity_xml_parameter_p(), expression_to_string(), gen_length(), global_margin, heap_area_p(), int, int2a(), memory_location_for_array_p(), NL, OPENANGLE, QUOTE, stack_area_p(), string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), type_and_size_of_var(), type_variable, variable_dimensions, and xml_Bounds().
Referenced by xml_FormalVariables(), xml_GlobalVariables(), and xml_LocalVariables().
XML name of the referenced array
iterator for dimensions of array
number of external loops
number of dimensions of referenced array
(int *) (gen_array_item(array_dims, gen_array_index(array_names, varname))));
number of internal loops
list of offsets for XML code
paving matrix for XML code 1st coeff: array dimension (row index) 2nd coeff: iteration dimension (column index)
fitting matrix for XML code 1st coeff: array dimension 2nd coeff: iteration dimension
initialization of the arrays
XML reference header
Fill in paving, fitting and offset matrices from index expressions.
generate offset list in XML code
fitting header
XML column-major storage of fitting matrix
Generation of paving XML code
Definition of the inner loop nest
FI->IH: if some columns are removed, the effective depth is unkown and must be computed here
result = strdup(concatenate(result, "inLoopNest = LOOPNEST(deep = ", int2a(MONMAX(gen_array_nitems(intern_indices_array), 1)), ",", NL, TAB, TAB, TAB, NULL));
see comment just below about null fitting matrices.
3 cases :
Complete XML reference
Definition at line 561 of file xml_prettyprinter.c.
References concatenate(), depth, EXPRESSION, expression_syntax, extern_indices_array, gen_array_index(), gen_array_item(), gen_array_nitems(), gen_length(), gen_strndup0(), i2a(), indices, int2a(), intern_indices_array, intern_upperbounds_array, is_syntax_call, is_syntax_reference, ITEM_NOT_IN_ARRAY, MAP, NL, pips_user_error, QUOTE, ref, reference_indices, reference_variable, same_string_p, strdup(), syntax_call, syntax_reference, syntax_tag, TAB, XML_ARRAY_PREFIX, xml_call_from_indice(), and xml_entity_local_name().
Referenced by xml_call_from_assignation(), and xml_call_from_loopnest().
|
static |
Scalar Argument
if (strncmp(aan, "\"", 1) == 0) quote_p = ""; else quote_p = QUOTE;
Array Argument
Save information to generate Task Graph
Definition at line 4715 of file xml_prettyprinter.c.
References add_margin(), array_argument_p(), BL, CLOSEANGLE, concatenate(), entity_undefined, entity_undefined_p, entity_user_name(), eval_linear_expression(), EvalExpression(), exp, expression_integer_value(), expression_syntax, expression_to_string(), free(), callst::func, global_margin, i2a(), int2a(), intptr_t, malloc(), max, min, NL, OPENANGLE, printf(), QUOTE, reference_indices, reference_undefined, reference_variable, callst::stat_nb, strdup(), string_buffer_append(), string_buffer_append_numeric(), string_buffer_append_word(), string_buffer_append_xml_text(), callst::succ, syntax_reference, syntax_reference_p, update_def_into_tasks_table(), value_constant_p, variable_entity_dimension(), xml_Connection(), xml_ConstOffset(), and xml_LoopOffset().
Referenced by xml_Arguments().
|
static |
UNUSED static bool eval_linear_expression2( expression exp, Psysteme ps, int *val, int *min, int *max) { normalized norm= normalized_undefined; Pvecteur vexp,pv; bool result = true,result_exact = true,min_exact=true,max_exact=true; val = 0; min=0; max=0;.
fprintf(stdout,"Expression a evaluer : %s",words_to_string(words_expression(exp,NIL)));
if (expression_normalized(exp) == normalized_undefined) expression_normalized(exp)= NormalizeExpression(exp); norm = expression_normalized(exp); if (normalized_linear_p(norm) && !SC_UNDEFINED_P(ps)) { vexp = (Pvecteur)normalized_linear(norm); for (pv= vexp; pv != VECTEUR_NUL; pv=pv->succ) { Variable v = var_of(pv); if (v==TCST) { val += vect_coeff(TCST,vexp); min += vect_coeff(TCST,vexp); max += vect_coeff(TCST,vexp); } else { if(base_contains_variable_p(sc_base(ps), v)) { Value min1, max1; Psysteme ps1 = sc_dup(ps); bool feasible = sc_minmax_of_variable2(ps1, (Variable)v, &min1, &max1); if (feasible) { if (value_eq(min1,max1)) { val += vect_coeff(v,vexp) *min1; min+= vect_coeff(v,vexp) *min1; max+= vect_coeff(v,vexp) *max1; } else { result_exact=false; bool pb = (vect_coeff(v,vexp)>0); if (pb) { if (*min!=INT_MIN && min1!=INT_MIN && min1!=VALUE_MIN) min+= vect_coeff(v,vexp) *min1; else min_exact=false; if (*max!=INT_MAX && max1!=INT_MAX && max1!=VALUE_MAX) max+= vect_coeff(v,vexp) *max1; else max_exact=false; } else { if (*max!=INT_MIN && min1!=INT_MIN && min1!=VALUE_MIN) max+= vect_coeff(v,vexp) *min1; else max_exact=false; if (*min!=INT_MAX && max1!=INT_MAX && max1!=VALUE_MAX) min+= vect_coeff(v,vexp) *max1; else min_exact=false; } } } else // fprintf(stdout,"le systeme est non faisable\n"); result = false,min_exact=false,max_exact=false; } // sc_free(ps1); le systeme est desalloue par sc_minmax_of_variable else result = false,min_exact=false,max_exact=false; } } } else // fprintf(stdout,"Ce n'est pas une expression lineaire\n"); result = false,min_exact=false,max_exact=false; if (!result) *min=INT_MIN,*max =INT_MAX; if (!min_exact) *min=INT_MIN; if (!max_exact) *max=INT_MAX; if (!result_exact) result=false; fprintf(stdout,"Valeur trouvee : %d \n",*val); return result; }
Print XML Array LOWER BOUND
Print XML Array UPPER BOUND
Definition at line 3585 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), eval_linear_expression(), expression_integer_value(), expression_to_string(), global_margin, int2a(), intptr_t, max, min, NL, OPENANGLE, string_buffer_append(), string_buffer_append_numeric(), string_buffer_append_symbolic(), and string_buffer_append_word().
Referenced by xml_Array(), and xml_Bounds_and_Stride().
|
static |
Definition at line 3653 of file xml_prettyprinter.c.
References eval_linear_expression(), expression_integer_value(), expression_to_string(), global_margin, int2a(), intptr_t, max, min, string_buffer_append_numeric(), string_buffer_append_symbolic(), string_buffer_append_word(), and xml_Bounds().
Referenced by xml_Loop().
|
static |
for validation
Search calls in Box
AGGREGATION TRANSFERED TO "tspear"
string_buffer_append_word("Tasks",sb_result); insert_xml_callees(module_name); string_buffer_append_word("/Tasks",sb_result);
Definition at line 5945 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), nest_context_t::current_stat, entity_domain, entity_main_module_p(), find_loops_and_calls_in_box(), first_precondition_of_module(), free(), gen_array_free(), gen_array_item(), gen_array_make(), gen_array_nitems(), get_current_module_statement(), global_application_variables, global_margin, int, local_application_variables, nest_context_t::loop_indices, nest_context_t::loops_for_call, module, module_name(), module_name_to_entity(), nest_context_t::nested_call, nest_context_t::nested_if, nest_context_t::nested_loop_indices, nest_context_t::nested_loops, NL, OPENANGLE, pop_statement_global_stack(), push_statement_on_statement_global_stack(), QUOTE, sc_free(), stack_free(), stack_make(), statement_domain, statement_number, string_buffer_append(), string_buffer_append_word(), string_buffer_make(), string_buffer_to_string(), Svecteur::succ, TCST, nest_context_t::testif, Svecteur::var, vect_erase_var(), VECTEUR_NUL, xml_Call(), xml_Chains(), xml_FormalVariables(), xml_GlobalVariables(), xml_LocalVariables(), and xml_Type_Entity().
Referenced by generic_print_xml_application().
|
static |
Definition at line 5690 of file xml_prettyprinter.c.
References add_margin(), array_argument_p(), BL, call_arguments, call_domain, call_function, call_undefined, CAR, CLOSEANGLE, concatenate(), encapsulated_call, ENTITY_ASSIGN_P, entity_function_p(), entity_subroutine_p(), entity_user_name(), EXPRESSION, expression_syntax, expression_to_string(), FOREACH, gen_array_item(), gen_length(), gen_recurse, gen_true(), global_margin, instruction_call, instruction_call_p, instruction_test, int2a(), load_proper_rw_effects_list(), load_statement_local_regions(), load_statement_precondition(), logic_condition_filter(), module, nest_context_t::nested_call, nest_context_t::nested_if, nest_context_t::nested_loops, NIL, NL, OPENANGLE, pattern_indices, pips_internal_error, POP, pop_statement_global_stack(), predicate_system, print_call_precondition(), push_statement_on_statement_global_stack(), QUOTE, regions_dup(), sc_dup(), sc_free(), search_1r_function_call(), skip_field_and_cast_expression(), spear_warning, STACK_MAP_X, STACK_NULL, statement_domain, statement_in_truebranch(), statement_in_truebranch_p, statement_instruction, statement_number, statement_undefined_p, string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), syntax_call, syntax_call_p, test_statement_of_reference, test_true, transformer_relation, VECTEUR_NUL, xml_Arguments(), xml_Loops(), xml_Region_Parameter(), xml_TaskParameters(), and xml_Transposition().
Referenced by xml_Boxes().
All arguments of this call are in Rmode (inputs of the task)
This function is called recursively
Definition at line 438 of file xml_prettyprinter.c.
References array_names, call_arguments, concatenate(), EXPRESSION, expression_syntax, free(), gen_array_index(), is_syntax_call, is_syntax_reference, ITEM_NOT_IN_ARRAY, MAP, pips_user_error, ref, reference_variable, strdup(), syntax_call, syntax_reference, syntax_tag, xml_array_in_task(), and xml_entity_local_name().
Referenced by xml_call_from_loopnest().
|
static |
Definition at line 471 of file xml_prettyprinter.c.
References call_arguments, call_function, EXPRESSION, expression_syntax, extern_indices_array, gen_array_index(), gen_length(), intern_indices_array, is_syntax_call, is_syntax_reference, ITEM_NOT_IN_ARRAY, MAP, pips_user_error, ref, reference_variable, same_string_p, strdup(), syntax_call, syntax_reference, syntax_tag, and xml_entity_local_name().
Referenced by xml_array_in_task().
Definition at line 776 of file xml_prettyprinter.c.
References array_names, call_arguments, call_function, concatenate(), EXPRESSION, expression_syntax, FOREACH, gen_array_index(), is_syntax_call, is_syntax_reference, ITEM_NOT_IN_ARRAY, NL, pips_internal_error, pips_user_error, reference_variable, same_string_p, strdup(), syntax_call, syntax_reference, syntax_tag, TAB, xml_array_in_task(), xml_call_from_assignation(), and xml_entity_local_name().
Referenced by xml_loop_from_sequence().
|
static |
Definition at line 4932 of file xml_prettyprinter.c.
References action_read_p, action_write_p, add_margin(), array_entity_p(), BL, call_arguments, call_domain, call_function, call_undefined, CAR, CDR, CLOSEANGLE, concatenate(), CONFLICT, conflict_sink, conflict_source, conflicts_sort_callback(), CONS, cumul_and_update_effects_of_statement(), cumulated_list, def_to_task_store(), dependencies_filter(), dg_arc_label_conflicts, EFFECT, effect_action, effect_any_reference, effects_package_entity_p(), encapsulated_call, ENDP, ENTITY_ASSIGN_P, entity_function_p(), entity_local_name(), entity_static_variable_p(), entity_subroutine_p(), entity_undefined, entity_undefined_p, entity_user_name(), EXPRESSION, expression_syntax, expression_to_string(), FOREACH, callst::func, GEN_ARRAY_FOREACH, gen_array_free(), gen_array_item(), gen_array_make(), gen_array_nitems(), gen_array_pointer(), gen_length(), gen_recurse, gen_sort_list(), gen_true(), get_bool_property(), global_margin, graph_vertices, hash_entity_def_into_tasks, hash_get(), HASH_UNDEFINED_VALUE, ifdebug, indice_p(), indices, instruction_call, instruction_call_p, instruction_test, int, int2a(), list_to_array(), list_undefined_p, load_proper_rw_effects_list(), load_statement_local_regions(), logic_condition_filter(), mod_stat, module, nest_context_t::nested_call, nest_context_t::nested_if, nest_context_t::nested_loop_indices, NIL, NL, OPENANGLE, pop_statement_global_stack(), print_name_1_level_p(), print_ordering_to_statement(), print_reference(), push_statement_on_statement_global_stack(), QUOTE, reference_undefined_p, reference_variable, region_undefined, regions_dup(), s1, same_string_p, search_1r_function_call(), spear_warning, STACK_MAP_X, STACK_NULL, callst::stat_nb, statement_domain, statement_in_truebranch(), statement_in_truebranch_p, statement_instruction, statement_number, statement_undefined_p, std_file_entity_p(), store_effect_p(), strdup(), string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), string_buffer_free(), string_buffer_make(), string_buffer_to_string(), string_parameter_p(), callst::succ, SUCCESSOR, successor_arc_label, successor_sort_callback(), successor_vertex, syntax_call, syntax_call_p, TCST, test_statement_of_reference, test_true, top_level_entity_p(), variable_heap_p(), vars_read_and_written(), vect_add_elem(), vect_chg_coeff(), vect_coeff(), vect_new(), vect_rm(), VECTEUR_UNDEFINED, VECTEUR_UNDEFINED_P, VERTEX, vertex_sort_callback(), vertex_successors, vertex_to_statement(), and words_points_to_reference().
Referenced by xml_Chains().
|
static |
Definition at line 5598 of file xml_prettyprinter.c.
References db_get_memory_resource(), dg, mod_stat, module, reset_ordering_to_statement(), set_ordering_to_statement(), and xml_Chain_Graph().
Referenced by xml_Boxes().
Creates string for xml pretty printer.
This string divides in declarations (array decl.) and tasks which are loopnests with an instruction at the core.
ifdebug(2) { printf("%s", result2); }
Definition at line 1860 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), get_current_module_name(), module, NL, OPENANGLE, QUOTE, SLASH, string_buffer_append(), string_buffer_make(), string_buffer_to_string(), xml_declarations(), and xml_tasks().
Referenced by print_xml_code().
Creates string for xml pretty printer.
This string divides in declarations (array decl.) and tasks which are loopnest with an instruction at the core.
Definition at line 1135 of file xml_prettyprinter.c.
References concatenate(), ifdebug, module, NL, print_entities(), print_statement(), printf(), statement_declarations, strdup(), variable_p(), xml_declarations_with_explicit_motif(), and xml_tasks_with_motif().
Referenced by print_xml_code_with_explicit_motif().
|
static |
Definition at line 2071 of file xml_prettyprinter.c.
References string_buffer_append_word().
Referenced by xml_Task().
|
static |
Definition at line 5850 of file xml_prettyprinter.c.
References action_read_p, add_margin(), array_entity_p(), BL, CAR, CDR, CLOSEANGLE, concatenate(), def_to_task_get(), def_to_task_store(), EFFECT, effect_action, effect_any_reference, effects_package_entity_p(), entity_local_name(), entity_static_variable_p(), entity_user_name(), free(), global_margin, NIL, NL, OPENANGLE, QUOTE, reference_variable, std_file_entity_p(), store_effect_p(), string_buffer_append(), string_buffer_append_xml_text(), string_buffer_make(), string_buffer_to_string(), string_parameter_p(), top_level_entity_p(), variable_heap_p(), vars_read_and_written(), vect_chg_coeff(), vect_coeff(), vect_dup(), vect_rm(), and VECTEUR_NUL.
Referenced by xml_Application().
|
static |
Definition at line 4432 of file xml_prettyprinter.c.
References EXPRESSION, expression_normalized, fortran_appli, MAP, MATRIX_ELEM, matrix_init(), matrix_new(), normalized_linear, normalized_undefined, NormalizeExpression(), string_buffer_append_word(), and xml_Matrix().
Referenced by xml_Argument(), and xml_AssignArgument().
|
static |
Definition at line 4486 of file xml_prettyprinter.c.
References EXPRESSION, expression_normalized, MAP, MATRIX_ELEM, matrix_init(), matrix_new(), normalized_linear, normalized_undefined, NormalizeExpression(), string_buffer_append_word(), TCST, vect_coeff(), and xml_Matrix().
Referenced by xml_Argument(), and xml_AssignArgument().
|
static |
Definition at line 1760 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), indices, load_statement_local_regions(), NL, OPENANGLE, regions_dup(), regions_free(), SLASH, SPACE, string_buffer_append(), TAB, and xml_references().
Referenced by xml_task().
|
static |
Definition at line 1227 of file xml_prettyprinter.c.
References CAR, CDR, CLOSEANGLE, code_declarations, concatenate(), DIMENSION, dimension_lower, dimension_upper, ENDP, ENTITY, entity_initial, entity_type, entity_undefined, entity_user_name(), expression_integer_value(), int2a(), intptr_t, module, NL, OPENANGLE, pips_user_error, QUOTE, SLASH, string_buffer_append(), TAB, type_variable, value_code, variable_dimensions, variable_entity_dimension(), variable_p(), XML_ARRAY_PREFIX, and XML_RL.
Referenced by xml_code().
|
static |
Definition at line 407 of file xml_prettyprinter.c.
References code_declarations, concatenate(), debug(), ENTITY, entity_initial, free(), MAP, module, pips_assert, strdup(), this_entity_xmldeclaration(), value_code, value_code_p, and xml_entity_local_name().
Referenced by xml_code_string().
Definition at line 311 of file xml_prettyprinter.c.
References array_dims, array_names, CLOSEPAREN, COMMA, concatenate(), DIMENSION, dimension_lower, dimension_upper, expression_integer_value(), gen_array_append(), int2a(), intptr_t, malloc(), MAP, NL, pips_user_error, QUOTE, strdup(), and TAB.
Referenced by this_entity_xmldeclaration().
Delete all the prefixes
switch to upper cases...
Definition at line 196 of file xml_prettyprinter.c.
References current_module_is_a_function, entity_local_name(), ENUM_PREFIX, get_current_module_entity(), MEMBER_SEP_STRING, RESULT_NAME, same_string_p, strdup(), STRUCT_PREFIX, strupper(), TYPEDEF_PREFIX, and UNION_PREFIX.
Referenced by xml_array_in_task(), xml_call_from_assignation(), xml_call_from_indice(), xml_call_from_loopnest(), xml_declarations_with_explicit_motif(), xml_loop_from_loop(), xml_loop_from_sequence(), and xml_reference_with_explicit_motif().
|
static |
forward declaration
Definition at line 262 of file xml_prettyprinter.c.
References constant_int, constant_int_p, EvalExpression(), expression_syntax, i2a(), is_syntax_call, is_syntax_reference, pips_internal_error, pips_user_error, strdup(), string_undefined, syntax_reference, syntax_tag, value_constant, value_constant_p, and xml_reference_with_explicit_motif().
Referenced by xml_loop_from_loop(), xml_loop_from_sequence(), and xml_reference_with_explicit_motif().
|
static |
Definition at line 3934 of file xml_prettyprinter.c.
References entity_storage, entity_type, entity_undefined, find_ith_formal_parameter(), gen_length(), global_margin, int, module, module_formal_parameters(), storage_formal_p, string_buffer_append_word(), type_variable_p, variable_entity_dimension(), xml_Array(), and xml_Scalar().
Referenced by xml_Boxes(), and xml_Task().
|
static |
Definition at line 2866 of file xml_prettyprinter.c.
References add_margin(), basic_derived, basic_derived_p, basic_pointer, basic_pointer_p, basic_to_string(), basic_typedef, basic_typedef_p, BL, CLOSEANGLE, concatenate(), ENTITY, entity_type, entity_user_name(), FOREACH, gen_length(), global_margin, i2a(), is_type_enum, is_type_struct, is_type_union, is_type_variable, NL, OPENANGLE, QUOTE, string_buffer_append(), string_buffer_append_word(), type_enum, type_struct, type_tag, type_union, type_variable, variable_basic, and variable_dimensions.
Referenced by xml_Type_Entity().
|
static |
Definition at line 3831 of file xml_prettyprinter.c.
References cumul_effects_of_statement(), cumulated_list, EFFECT, effect_any_reference, effects_package_entity_p(), ENTITY, entity_storage, entity_type, gen_length(), gen_recurse, gen_true(), get_current_module_statement(), global_application_variables, global_margin, MAP, NIL, ref, reference_variable, statement_declarations, statement_domain, std_file_entity_p(), storage_formal_p, storage_ram_p, string_buffer_append_word(), top_level_entity_p(), type_variable_p, variable_entity_dimension(), variable_heap_p(), vect_add_elem(), vect_coeff(), vect_copy(), vect_rm(), VECTEUR_NUL, xml_Array(), and xml_Scalar().
Referenced by xml_Application(), xml_Boxes(), and xml_Task().
|
static |
Definition at line 2040 of file xml_prettyprinter.c.
References string_buffer_append_word().
Referenced by xml_Task().
|
static |
Definition at line 3882 of file xml_prettyprinter.c.
References code_declarations, ENTITY, entity_initial, entity_storage, entity_type, fortran_appli, gen_length(), gen_recurse, gen_true(), get_current_module_statement(), global_margin, local_application_variables, local_declaration_list, MAP, module, NIL, statement_declarations, statement_domain, storage_formal_p, store_local_array_declaration(), string_buffer_append_word(), TCST, type_variable_p, value_code, variable_entity_dimension(), vect_add_elem(), vect_coeff(), vect_copy(), vect_new(), vect_rm(), xml_Array(), and xml_Scalar().
Referenced by xml_Boxes(), and xml_Task().
|
static |
Definition at line 1420 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), entity_user_name(), expression_plusplus(), expression_to_string(), instruction_loop, loop_index, loop_range, NL, OPENANGLE, QUOTE, range_lower, range_upper, SLASH, SPACE, STACK_MAP_X, statement_instruction, string_buffer_append(), and TAB.
Referenced by xml_task().
|
static |
Definition at line 4004 of file xml_prettyprinter.c.
References add_margin(), BL, CLOSEANGLE, concatenate(), entity_user_name(), execution_parallel_p, global_margin, instruction_loop, load_statement_precondition(), loop_execution, loop_index, loop_range, NL, OPENANGLE, pop_statement_global_stack(), predicate_system, push_statement_on_statement_global_stack(), QUOTE, range_increment, range_lower, range_upper, sc_dup(), sc_free(), statement_instruction, string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), transformer_relation, and xml_Bounds_and_Stride().
Referenced by xml_Loops().
printf("%i %i\n", u, low);
Definition at line 886 of file xml_prettyprinter.c.
References call_function, call_undefined, call_undefined_p, entity_local_name(), expression_syntax, extern_indices_array, extern_upperbounds_array, gen_array_append(), instruction_call, instruction_loop, instruction_sequence, instruction_tag, int2a(), intern_indices_array, intern_upperbounds_array, is_instruction_call, is_instruction_loop, is_instruction_sequence, loop_body, loop_index, loop_range, loop_undefined_p, malloc(), pips_user_error, range_increment, range_lower, range_upper, sequence_call(), sequence_loop(), statement_instruction, strdup(), syntax_call, syntax_call_p, xml_entity_local_name(), and xml_expression().
Referenced by xml_loop_from_sequence().
We enter a loop nest.
The first loop must be an extern loop.
Initialize result string with the declaration of the task
(re-)initialize task-scoped arrays
The sequence should contain only one meaningful call
External loop nest depth
add external upperbounds
add external indices names
Definition at line 944 of file xml_prettyprinter.c.
References call_function, call_undefined, call_undefined_p, concatenate(), entity_local_name(), expression_syntax, extern_indices_array, extern_upperbounds_array, gen_array_append(), gen_array_free(), gen_array_item(), gen_array_make(), gen_array_nitems(), instruction_call, instruction_loop, instruction_sequence, instruction_tag, int, int2a(), intern_indices_array, intern_upperbounds_array, is_instruction_call, is_instruction_loop, is_instruction_sequence, loop_body, loop_index, loop_range, loop_undefined_p, malloc(), NL, pips_user_error, QUOTE, range_increment, range_lower, range_upper, sequence_call(), sequence_loop(), statement_instruction, strdup(), syntax_call, syntax_call_p, TAB, tasks_names, xml_call_from_loopnest(), xml_entity_local_name(), xml_expression(), and xml_loop_from_loop().
Referenced by xml_statement_from_sequence().
|
static |
Definition at line 4461 of file xml_prettyprinter.c.
References EXPRESSION, expression_normalized, MAP, MATRIX_ELEM, matrix_init(), matrix_new(), normalized_linear, string_buffer_append_word(), Svecteur::succ, Svecteur::var, vect_coeff(), vect_reversal(), vect_size(), VECTEUR_NUL_P, and xml_Matrix().
Referenced by xml_Argument(), and xml_AssignArgument().
|
static |
Definition at line 4031 of file xml_prettyprinter.c.
References gen_recurse, gen_true(), global_margin, instruction_loop, load_statement_local_regions(), loop_body, loop_index, motif_in_statement(), motif_in_statement_p, pattern_indices, pop_statement_global_stack(), pragma_motif_p(), push_statement_on_statement_global_stack(), regions_dup(), STACK_MAP_X, STACK_NULL, statement_domain, statement_instruction, string_buffer_append_word(), VALUE_ONE, vect_add_elem(), and xml_Loop().
Referenced by xml_Call(), and xml_Task().
|
static |
Definition at line 4127 of file xml_prettyprinter.c.
References add_margin(), BL, CLOSEANGLE, concatenate(), global_margin, i2a(), MATRIX_ELEM, NL, OPENANGLE, QUOTE, strdup(), string_buffer_append(), and string_buffer_append_word().
Referenced by xml_Connection(), xml_ConstOffset(), xml_LoopOffset(), and xml_Transposition().
|
static |
Definition at line 3109 of file xml_prettyprinter.c.
References add_margin(), BL, CAR, CDR, CLOSEANGLE, concatenate(), DIMENSION, dimension_lower, dimension_upper, ENDP, entity_in_expression_p(), entity_type, entity_user_name(), find_ith_formal_parameter(), gen_length(), get_current_module_entity(), global_margin, i2a(), int, module_formal_parameters(), NL, OPENANGLE, QUOTE, strdup(), string_buffer_append(), string_buffer_append_xml_text(), type_variable, type_variable_p, variable_dimensions, and variable_entity_dimension().
Referenced by xml_TaskParameter().
|
static |
phi = (Variable) make_phi_entity(i); if(!SC_UNDEFINED_P(ps_reg) && base_contains_variable_p(sc_base(ps_reg),phi)) { ps1 = sc_dup(ps_reg); feasible = sc_minmax_of_variable(ps1, (Variable)phi, &min, &max); if (feasible){ if (min!=VALUE_MIN) voffset = vect_new(TCST,min); if (min==max) uniqp=1; } }
PRINT PATTERN and PAVING
Definition at line 2316 of file xml_prettyprinter.c.
References add_margin(), array_entity_p(), BL, Spattern::cl_coeff, CLOSEANGLE, concatenate(), Spattern::diff, dimension_undefined, dimension_upper, effect_any_reference, entity_type, entity_user_name(), expression_to_string(), find_ith_dimension(), find_pattern(), free(), gen_length(), global_margin, i2a(), int, int2a(), Spattern::lind, Spattern::lower, NL, NORMALIZE_EXPRESSION, normalized_linear, OPENANGLE, QUOTE, ref, reference_variable, region_read_p, region_system, region_undefined, same_entity_p(), sc_dup(), sc_free(), sc_transform_eg_in_ineg(), string_buffer_append(), string_buffer_append_numeric(), string_buffer_append_symbolic(), string_buffer_append_word(), string_buffer_append_xml_text(), string_buffer_make(), string_buffer_to_string(), Svecteur::succ, TCST, two_string_buffer_append_symbolic(), type_variable, Spattern::unitp, var_of, variable_dimensions, vect_add_elem(), vect_coeff(), vect_dimension(), vect_dup(), vect_new(), vect_to_string(), VECTEUR_NUL, VECTEUR_NUL_P, VECTEUR_UNDEFINED_P, and xml_AccessFunction().
Referenced by xml_TaskParameter().
|
static |
Definition at line 1449 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), entity_user_name(), NL, QUOTE, reference_variable, SPACE, string_buffer_append(), and XML_ARRAY_PREFIX.
Referenced by xml_references().
Attention with Fortran: the indices are reversed.
Definition at line 242 of file xml_prettyprinter.c.
References CLOSEBRACKET, concatenate(), EMPTY, EXPRESSION, free(), MAP, OPENBRACKET, reference_indices, reference_variable, strdup(), xml_entity_local_name(), and xml_expression().
Referenced by xml_expression().
|
static |
Read array references first
Definition at line 1725 of file xml_prettyprinter.c.
References array_entity_p(), CAR, CDR, concatenate(), effect_any_reference, ENDP, indices, NL, OPENANGLE, ref, reference_variable, region, REGION, region_read_p, region_write_p, SPACE, string_buffer_append(), TAB, xml_reference(), and xml_tiling().
Referenced by xml_data().
|
static |
Definition at line 3013 of file xml_prettyprinter.c.
References add_margin(), array_entity_p(), BL, CAR, CDR, CLOSEANGLE, concatenate(), CONS, effect_any_reference, ENDP, entity_static_variable_p(), entity_user_name(), entity_xml_parameter_p(), gen_free_list(), gen_nconc(), global_margin, NIL, NL, OPENANGLE, print_full_name_p(), QUOTE, ref, reference_undefined_p, reference_variable, region, REGION, region_read_p, store_effect_p(), strdup(), STRING, string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), top_level_entity_p(), variable_heap_p(), words_points_to_reference(), and xml_Region_Range().
Referenced by xml_Call(), and xml_Task().
|
static |
on peut ameliorer les resultats en projetant les egalites portant sur les variables autres que les PHI
Definition at line 2543 of file xml_prettyprinter.c.
References array_entity_p(), concatenate(), effect_any_reference, entity_type, gen_length(), i2a(), int, make_phi_entity(), ref, reference_variable, region_system, region_undefined, sc_dup(), sc_rm(), sc_transform_eg_in_ineg(), strdup(), string_buffer_append(), string_buffer_make(), string_buffer_to_string(), Scontrainte::succ, type_variable, value_neg_p, value_pos_p, variable_dimensions, vect_chg_sgn(), vect_coeff(), vect_dup(), vect_erase_var(), vect_to_string(), and Scontrainte::vecteur.
Referenced by xml_Region_Parameter().
|
static |
Definition at line 2065 of file xml_prettyprinter.c.
Referenced by xml_Task().
|
static |
Definition at line 2046 of file xml_prettyprinter.c.
Referenced by xml_Task().
|
static |
Print XML Array DATA TYPE and DATA SIZE
Definition at line 3806 of file xml_prettyprinter.c.
References add_margin(), BL, CLOSEANGLE, concatenate(), entity_user_name(), entity_xml_parameter_p(), global_margin, heap_area_p(), int2a(), NL, OPENANGLE, QUOTE, stack_area_p(), string_buffer_append(), string_buffer_append_xml_text(), and type_and_size_of_var().
Referenced by xml_FormalVariables(), xml_GlobalVariables(), and xml_LocalVariables().
Concatentates each task to the final result.
The validity of the task is not checked in this function but it is into xml_statementement_from_sequence and subsequent functions.
Definition at line 1076 of file xml_prettyprinter.c.
References concatenate(), current, free(), MAP, sequence_statements, STATEMENT, strdup(), and xml_statement_from_sequence().
Referenced by xml_tasks_with_motif().
We are here at the highest level of statements.
The statements are either loopnests or a RETURN instruction. Any other possibility pips_user_errors the prettyprinter.
RETURN should only be allowed as the last statement in the sequence
Definition at line 1048 of file xml_prettyprinter.c.
References continue_statement_p(), instruction_loop, instruction_tag, is_instruction_call, is_instruction_loop, pips_user_error, return_statement_p(), statement_instruction, and xml_loop_from_sequence().
Referenced by xml_sequence_from_task().
|
static |
On ne traite qu'une TE : un seul nid de boucles
Definition at line 4355 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), nest_context_t::current_stat, db_get_memory_resource(), entity_domain, find_loops_and_calls_in_box(), first_precondition_of_module(), gen_array_free(), gen_array_item(), gen_array_make(), gen_recurse, gen_true(), global_margin, load_statement_local_regions(), nest_context_t::loop_indices, nest_context_t::loops_for_call, module, module_name(), module_name_to_entity(), motif_in_statement(), motif_in_statement_p, nest_context_t::nested_call, nest_context_t::nested_if, nest_context_t::nested_loop_indices, nest_context_t::nested_loops, NIL, NL, OPENANGLE, pattern_indices, pop_current_module_statement(), pop_statement_global_stack(), push_current_module_statement(), push_statement_on_statement_global_stack(), QUOTE, regions_dup(), regions_free(), reset_rw_effects(), sc_rm(), set_rw_effects(), stack_free(), stack_make(), statement_domain, string_buffer_append(), string_buffer_append_word(), nest_context_t::testif, VECTEUR_NUL, xml_CodeSize(), xml_FormalVariables(), xml_GlobalVariables(), xml_Library(), xml_LocalVariables(), xml_Loops(), xml_Region_Parameter(), xml_Regions(), xml_Returns(), xml_TaskParameters(), and xml_Timecosts().
Referenced by generic_print_xml_application().
|
static |
Definition at line 1790 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), gen_array_item(), int2a(), nest_context_t::nested_call, nest_context_t::nested_loop_indices, nest_context_t::nested_loops, NL, OPENANGLE, QUOTE, SLASH, SPACE, string_buffer_append(), TAB, task_complexity(), xml_data(), xml_loop(), and XML_TASK_PREFIX.
Referenced by xml_tasks().
|
static |
Definition at line 3217 of file xml_prettyprinter.c.
References add_margin(), array_entity_p(), ASSIGN_OPERATOR_NAME, BL, CAR, CDR, CLOSEANGLE, concatenate(), cumulated_list, EFFECT, effect_any_reference, effect_read_p, entity_domain, entity_undefined, entity_user_name(), entity_xml_parameter_p(), find_effect_actions_for_entity(), callst::func, gen_find_tabulated(), gen_length(), global_margin, list_undefined, make_entity_fullname(), malloc(), NIL, NL, OPENANGLE, print_full_name_p(), QUOTE, ref, reference_undefined, reference_undefined_p, reference_variable, region, REGION, region_read_p, region_undefined, same_entity_p(), callst::stat_nb, store_effect_p(), string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), callst::succ, TOP_LEVEL_MODULE_NAME, type_and_size_of_var(), update_def_into_tasks_table(), vect_coeff(), words_points_to_reference(), xml_ParameterUseToArrayBound(), and xml_Pattern_Paving().
Referenced by xml_TaskParameters().
|
static |
Definition at line 3391 of file xml_prettyprinter.c.
References call_arguments, call_domain, call_undefined, CAR, CDR, code_is_a_main, effect_any_reference, effects_package_entity_p(), encapsulated_call, ENDP, entity_undefined, EXPRESSION, expression_syntax, find_ith_formal_parameter(), gen_length(), gen_recurse, gen_true(), global_margin, instruction_call, instruction_call_p, int, module, module_formal_parameters(), NIL, pips_internal_error, reference_variable, REGION, search_1r_function_call(), statement_instruction, statement_number, std_file_entity_p(), store_effect_p(), string_buffer_append(), string_buffer_append_word(), string_buffer_empty_p(), string_buffer_make(), string_buffer_to_string(), syntax_reference, syntax_reference_p, VALUE_ONE, variable_heap_p(), vect_add_elem(), VECTEUR_NUL, xml_TaskParameter(), and xml_TaskReturnParameter().
Referenced by xml_Call(), and xml_Task().
|
static |
Definition at line 3186 of file xml_prettyprinter.c.
References add_margin(), basic_to_string(), BL, CLOSEANGLE, concatenate(), entity_type, functional_result, global_margin, NIL, NL, OPENANGLE, QUOTE, string_buffer_append(), string_buffer_append_word(), type_functional, type_functional_p, type_variable, type_variable_p, variable_basic, and variable_dimensions.
Referenced by xml_TaskParameters().
|
static |
ifdebug(2) print_call_selection(&nest);
Definition at line 1806 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), nest_context_t::current_stat, entity_domain, gen_array_free(), gen_array_make(), gen_array_nitems(), get_current_module_name(), int, int2a(), nest_context_t::loop_indices, nest_context_t::loops_for_call, module_name(), nest_context_t::nested_call, nest_context_t::nested_loop_indices, nest_context_t::nested_loops, NL, OPENANGLE, pips_internal_error, QUOTE, search_nested_loops_and_calls(), SLASH, SPACE, stack_free(), stack_make(), statement_domain, statement_undefined_p, string_buffer_append(), TAB, xml_task(), and XML_TASK_PREFIX.
Referenced by xml_code().
Manages tasks.
The code is very defensive and hangs if sth not predicted happens. Here basically we begin the code in itself and thus $stat is obligatory a sequence.
Definition at line 1101 of file xml_prettyprinter.c.
References concatenate(), gen_array_item(), gen_array_make(), gen_array_nitems(), global_module_name, instruction_sequence, instruction_tag, int, is_instruction_sequence, NL, pips_internal_error, pips_user_error, QUOTE, statement_instruction, statement_undefined_p, strdup(), TAB, tasks_names, and xml_sequence_from_task().
Referenced by xml_code_string().
|
static |
Definition at line 1594 of file xml_prettyprinter.c.
References CLOSEANGLE, concatenate(), CONTRAINTE_UNDEFINED, CONTRAINTE_UNDEFINED_P, entity_type, entity_user_name(), find_motif(), fprintf(), free(), gen_length(), indices, int, int2a(), NL, OPENANGLE, QUOTE, ref, reference_variable, region_system, sc_dup(), sc_transform_eg_in_ineg(), SLASH, SPACE, STACK_MAP_X, stack_size(), string_buffer_append(), string_buffer_make(), string_buffer_to_string(), Svecteur::succ, TAB, TCST, type_variable, upperbound(), VALUE_ONE, var_of, variable_dimensions, vect_add_elem(), vect_coeff(), Scontrainte::vecteur, VECTEUR_NUL, VECTEUR_NUL_P, and XML_MOTIF_PREFIX.
Referenced by xml_references().
|
static |
Definition at line 2052 of file xml_prettyprinter.c.
Referenced by xml_Task().
|
static |
Definition at line 4185 of file xml_prettyprinter.c.
References MATRIX_ELEM.
Referenced by xml_Transposition().
|
static |
Definition at line 4193 of file xml_prettyprinter.c.
References MATRIX_ELEM, and tri_abc().
Referenced by xml_Transposition().
|
static |
Definition at line 4266 of file xml_prettyprinter.c.
References add_margin(), array_argument_p(), BL, call_arguments, call_function, CAR, CLOSEANGLE, concatenate(), constant_int, constant_int_p, entity_user_name(), EvalExpression(), EXPRESSION, expression_syntax, expression_undefined, gen_length(), global_margin, MATRIX_ELEM, matrix_free, matrix_init(), matrix_new(), NL, Pmatrix::number_of_columns, Pmatrix::number_of_lines, OPENANGLE, POP, QUOTE, reference_variable, skip_field_and_cast_expression(), spear_warning, string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), syntax_reference, value_constant, value_constant_p, xml_Matrix(), xml_Transposed_Matrix2D(), and xml_Transposed_Matrix3_5D().
Referenced by xml_Call().
|
static |
Definition at line 2992 of file xml_prettyprinter.c.
References add_margin(), CLOSEANGLE, concatenate(), effects_package_entity_p(), entity_type, entity_user_name(), global_margin, int, maximal_type_depth(), NL, OPENANGLE, QUOTE, std_file_entity_p(), string_buffer_append(), string_buffer_append_word(), string_buffer_append_xml_text(), variable_heap_p(), and xml_Full_Type().
Referenced by xml_Boxes().
|
static |
Definition at line 294 of file xml_prettyprinter.c.
Referenced by print_xml_code_with_explicit_motif(), and xml_dim_string().
|
static |
Definition at line 134 of file xml_prettyprinter.c.
Referenced by find_memory_comment_on_array(), and memory_location_for_array_p().
|
static |
Definition at line 135 of file xml_prettyprinter.c.
Referenced by find_memory_comment_on_array(), and memory_location_for_array_p().
|
static |
Definition at line 293 of file xml_prettyprinter.c.
Referenced by print_xml_code_with_explicit_motif(), xml_call_from_assignation(), xml_call_from_loopnest(), and xml_dim_string().
Definition at line 126 of file xml_prettyprinter.c.
Referenced by box_in_statement(), and find_code_status().
Definition at line 129 of file xml_prettyprinter.c.
Referenced by cumul_and_update_effects_of_statement(), cumul_effects_of_statement(), xml_Application(), xml_Chain_Graph(), xml_GlobalVariables(), and xml_TaskParameter().
|
static |
Definition at line 145 of file xml_prettyprinter.c.
Referenced by def_to_task_get(), def_to_task_init(), def_to_task_reset(), def_to_task_set(), def_to_task_store(), and generic_print_xml_application().
|
static |
Definition at line 132 of file xml_prettyprinter.c.
Referenced by search_1r_function_call(), xml_Argument(), xml_Arguments(), xml_Call(), xml_Chain_Graph(), and xml_TaskParameters().
|
static |
array containing extern loop indices names
Definition at line 105 of file xml_prettyprinter.c.
Referenced by xml_array_in_task(), xml_call_from_indice(), xml_loop_from_loop(), and xml_loop_from_sequence().
|
static |
array containing extern upperbounds
Definition at line 109 of file xml_prettyprinter.c.
Referenced by xml_loop_from_loop(), and xml_loop_from_sequence().
Definition at line 125 of file xml_prettyprinter.c.
Referenced by generic_print_xml_application(), xml_Application(), xml_Connection(), and xml_LocalVariables().
|
static |
Definition at line 136 of file xml_prettyprinter.c.
Referenced by xml_Boxes(), and xml_GlobalVariables().
|
static |
Definition at line 123 of file xml_prettyprinter.c.
Referenced by print_call_precondition(), string_buffer_append_numeric(), string_buffer_append_symbolic(), string_buffer_append_word(), two_string_buffer_append_symbolic(), xml_Application(), xml_Argument(), xml_Arguments(), xml_Array(), xml_AssignArgument(), xml_Bounds(), xml_Bounds_and_Stride(), xml_Boxes(), xml_Call(), xml_Chain_Graph(), xml_Compute_and_Need(), xml_FormalVariables(), xml_Full_Type(), xml_GlobalVariables(), xml_LocalVariables(), xml_Loop(), xml_Loops(), xml_Matrix(), xml_ParameterUseToArrayBound(), xml_Pattern_Paving(), xml_Region_Parameter(), xml_Scalar(), xml_Task(), xml_TaskParameter(), xml_TaskParameters(), xml_TaskReturnParameter(), xml_Transposition(), and xml_Type_Entity().
|
static |
Definition at line 115 of file xml_prettyprinter.c.
Referenced by print_xml_code_with_explicit_motif(), and xml_tasks_with_motif().
|
static |
Definition at line 120 of file xml_prettyprinter.c.
Referenced by add_def_into_tasks_table(), generic_print_xml_application(), update_def_into_tasks_table(), and xml_Chain_Graph().
|
static |
array containing intern loop indices (name : "M_")
Definition at line 107 of file xml_prettyprinter.c.
Referenced by xml_array_in_task(), xml_call_from_indice(), xml_loop_from_loop(), and xml_loop_from_sequence().
|
static |
array containing intern upperbounds
Definition at line 111 of file xml_prettyprinter.c.
Referenced by xml_array_in_task(), xml_loop_from_loop(), and xml_loop_from_sequence().
|
static |
Definition at line 137 of file xml_prettyprinter.c.
Referenced by xml_Boxes(), and xml_LocalVariables().
Definition at line 131 of file xml_prettyprinter.c.
Referenced by store_local_array_declaration(), and xml_LocalVariables().
Definition at line 127 of file xml_prettyprinter.c.
Referenced by find_code_status(), motif_in_statement(), xml_Loops(), and xml_Task().
Definition at line 128 of file xml_prettyprinter.c.
Referenced by statement_in_truebranch(), xml_Call(), and xml_Chain_Graph().
|
static |
array containing the tasks names
Definition at line 113 of file xml_prettyprinter.c.
Referenced by xml_loop_from_sequence(), and xml_tasks_with_motif().
|
static |
Definition at line 130 of file xml_prettyprinter.c.
Referenced by statement_in_truebranch(), xml_Call(), and xml_Chain_Graph().