PIPS
|
#include <stdio.h>
#include <ctype.h>
#include "genC.h"
#include "linear.h"
#include "ri.h"
#include "effects.h"
#include "resources.h"
#include "misc.h"
#include "ri-util.h"
#include "prettyprint.h"
#include "effects-util.h"
#include "pipsdbm.h"
#include "text-util.h"
#include "ray_dte.h"
#include "sommet.h"
#include "sg.h"
#include "polyedre.h"
#include "control.h"
#include "phrase_tools.h"
#include "effects-generic.h"
#include "effects-simple.h"
#include "effects-convex.h"
#include "phrase_distribution.h"
#include "comEngine.h"
#include "phrase.h"
Go to the source code of this file.
Functions | |
static bool | vect_same_variables_p (Pvecteur v1, Pvecteur v2) |
static bool | loop_index_in_several_indices (entity index, reference ref) |
static int | get_const_off (entity index, reference ref) |
static int | get_const_diff (Pvecteur vect1, Pvecteur vect2) |
static bool | write_conf_on_ref (reference ref) |
static void | phrase_check_reference (reference ref) |
static list | create_new_ent_list (int minOff, int maxOff, entity oldEnt) |
static void | replace_ref_by_ent (list lRef, list lNewEnt, entity index, int max) |
static list | make_lInitStats (list lInitStats, reference maxOffRef, list lNewEnt, entity loopInd, expression indInit) |
static list | make_lSwitchStats (list lSwitchStats, reference maxOffRef, list lNewEnt, int diff, entity loopInd) |
static list | remove_write_ref (list lRef) |
static void | phrase_remove_dependences_rwt (statement stat) |
bool | phrase_remove_dependences (const char *module_name) |
phrase_remove_dependences.c More... | |
Variables | |
static hash_table | gRefTolRef |
static entity | gIndex |
static statement | gBody |
static list | gLConflicts |
Definition at line 329 of file phrase_remove_dependences.c.
References AddEntityToCurrentModule(), CONS, ENTITY, entity_basic(), entity_local_name(), gen_nconc(), get_current_module_entity(), make_new_scalar_variable_with_prefix(), and NIL.
Referenced by phrase_remove_dependences_rwt().
Definition at line 155 of file phrase_remove_dependences.c.
References TCST, and vect_coeff().
Referenced by phrase_check_reference().
Definition at line 131 of file phrase_remove_dependences.c.
References EXPRESSION, MAP, norm(), NORMALIZE_EXPRESSION, normalized_linear, normalized_linear_p, ref, reference_indices, TCST, and vect_coeff().
Referenced by phrase_check_reference(), phrase_remove_dependences_rwt(), and replace_ref_by_ent().
Definition at line 95 of file phrase_remove_dependences.c.
References EXPRESSION, MAP, norm(), NORMALIZE_EXPRESSION, normalized_linear, normalized_linear_p, ref, reference_indices, and vect_coeff().
Referenced by phrase_check_reference().
|
static |
Definition at line 391 of file phrase_remove_dependences.c.
References call_to_expression(), comEngine_replace_reference_in_stat(), CONS, copy_expression(), copy_reference(), count, ENTITY, entity_intrinsic(), entity_to_expression(), expression_domain, gen_make_list(), gen_nconc(), int_to_expression(), make_assign_statement(), make_call(), make_reference(), MAP, NIL, PLUS_OPERATOR_NAME, print_reference(), print_statement(), printf(), reference_to_expression(), and STATEMENT.
Referenced by phrase_remove_dependences_rwt().
|
static |
Definition at line 426 of file phrase_remove_dependences.c.
References call_to_expression(), comEngine_replace_reference_in_stat(), CONS, copy_reference(), ENTITY, entity_intrinsic(), entity_to_expression(), expression_domain, gen_make_list(), gen_nconc(), gen_nth(), int_to_expression(), make_assign_statement(), make_call(), make_reference(), NIL, PLUS_OPERATOR_NAME, print_reference(), print_statement(), printf(), reference_to_expression(), and STATEMENT.
Referenced by phrase_remove_dependences_rwt().
|
static |
Definition at line 190 of file phrase_remove_dependences.c.
References CAR, CDR, code_has_write_eff_ref_p(), CONS, EXPRESSION, gBody, gen_free_list(), gen_insert_before(), gen_length(), gen_nconc(), get_const_diff(), get_const_off(), gIndex, gRefTolRef, hash_del(), HASH_MAP, hash_put(), loop_index_in_several_indices(), MAP, NIL, NORMALIZE_EXPRESSION, normalized_linear, normalized_linear_p, ref, REFERENCE, reference_indices, reference_indices_entity_list(), reference_variable, same_entity_p(), and vect_same_variables_p().
Referenced by phrase_remove_dependences_rwt().
bool phrase_remove_dependences | ( | const char * | module_name | ) |
Get the code of the module.
module_name | odule_name |
Definition at line 603 of file phrase_remove_dependences.c.
References CONFLICT, CONS, db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, dg, dg_arc_label_conflicts, gen_recurse, gen_true(), get_current_module_statement(), gLConflicts, graph_vertices, hash_dont_warn_on_redefinition(), hash_warn_on_redefinition(), MAP, module_name(), module_name_to_entity(), module_reorder(), NIL, phrase_remove_dependences_rwt(), pips_assert, reset_cumulated_rw_effects(), reset_current_module_entity(), reset_current_module_statement(), set_cumulated_rw_effects(), set_current_module_entity(), set_current_module_statement(), statement_consistent_p(), statement_domain, SUCCESSOR, successor_arc_label, VERTEX, and vertex_successors.
|
static |
Definition at line 489 of file phrase_remove_dependences.c.
References CAR, CONS, copy_reference(), copy_statement(), create_new_ent_list(), free(), free_instruction(), gBody, gen_free_list(), gen_last(), gen_nconc(), gen_recurse, gen_true(), get_const_off(), gIndex, gRefTolRef, HASH_MAP, hash_pointer, hash_table_free(), hash_table_make(), loop_body, loop_index, loop_range, make_block_statement(), make_instruction_block(), make_lInitStats(), make_lSwitchStats(), MAP, NIL, phrase_check_reference(), print_reference(), print_statement(), printf(), range_lower, REFERENCE, reference_domain, reference_variable, remove_write_ref(), replace_ref_by_ent(), STATEMENT, statement_comments, statement_instruction, statement_loop(), statement_loop_p(), and string_undefined.
Referenced by phrase_remove_dependences().
Definition at line 470 of file phrase_remove_dependences.c.
References CONS, gen_nconc(), MAP, NIL, print_reference(), printf(), REFERENCE, and write_conf_on_ref().
Referenced by phrase_remove_dependences_rwt().
Definition at line 351 of file phrase_remove_dependences.c.
References CAR, count, ENTITY, gen_free_list(), get_const_off(), MAP, MAPL, max, NIL, REFERENCE, reference_indices, and reference_variable.
Referenced by phrase_remove_dependences_rwt().
Definition at line 68 of file phrase_remove_dependences.c.
References Svecteur::succ, TCST, vect_contains_variable_p(), VECTEUR_NUL_P, and vecteur_var.
Referenced by phrase_check_reference().
Definition at line 163 of file phrase_remove_dependences.c.
References CONFLICT, conflict_sink, conflict_source, effect_any_reference, effect_write_p, gLConflicts, MAP, print_reference(), printf(), and ref.
Referenced by remove_write_ref().
|
static |
Definition at line 64 of file phrase_remove_dependences.c.
Referenced by phrase_check_reference(), and phrase_remove_dependences_rwt().
|
static |
Definition at line 63 of file phrase_remove_dependences.c.
Referenced by phrase_check_reference(), and phrase_remove_dependences_rwt().
|
static |
Definition at line 66 of file phrase_remove_dependences.c.
Referenced by phrase_remove_dependences(), and write_conf_on_ref().
|
static |
Definition at line 62 of file phrase_remove_dependences.c.
Referenced by phrase_check_reference(), and phrase_remove_dependences_rwt().