PIPS
|
#include <stdio.h>
#include "genC.h"
#include "boolean.h"
#include "arithmetique.h"
#include "vecteur.h"
#include "contrainte.h"
#include "ray_dte.h"
#include "sommet.h"
#include "sg.h"
#include "sc.h"
#include "polyedre.h"
#include "union.h"
#include "matrice.h"
#include "matrix.h"
#include "sparse_sc.h"
#include "ri.h"
#include "constants.h"
#include "ri-util.h"
#include "misc.h"
#include "complexity_ri.h"
#include "database.h"
#include "graph.h"
#include "dg.h"
#include "paf_ri.h"
#include "parser_private.h"
#include "property.h"
#include "reduction.h"
#include "text.h"
#include "text-util.h"
#include "tiling.h"
#include "pipsdbm.h"
#include "resources.h"
#include "static_controlize.h"
#include "paf-util.h"
#include "pip.h"
#include "array_dfg.h"
#include "prgm_mapping.h"
#include "conversion.h"
#include "scheduling.h"
#include "reindexing.h"
Go to the source code of this file.
Typedefs | |
typedef dfg_vertex_label | vertex_label |
Local defines. More... | |
typedef dfg_arc_label | arc_label |
Functions | |
static void | rewrite_nothing_call (call c) |
====================================================================== More... | |
static void | rewrite_nothing_ref (reference r) |
static bool | reference_filter (reference r) |
====================================================================== More... | |
static bool | assignation_filter (call c) |
====================================================================== More... | |
list | add_delay_information (hash_table t, list sl) |
====================================================================== More... | |
void | fprint_delay (FILE *fp, graph g, hash_table t) |
====================================================================== More... | |
Variables | |
hash_table | delay_table |
Name : delay.c Package : reindexing Author : Alexis Platonoff Date : March 1995 Historic : More... | |
typedef dfg_arc_label arc_label |
typedef dfg_vertex_label vertex_label |
list add_delay_information | ( | hash_table | t, |
list | sl | ||
) |
======================================================================
list add_delay_information(t, sl): go through the list of new statement and replace each first time dimension by its expression modulo the value of the delay.
AC 94/07/06
Definition at line 200 of file delay.c.
References assignation_filter(), call_domain, gen_recurse, instruction_block, make_instruction_block(), and rewrite_nothing_call().
Referenced by re_do_it().
======================================================================
bool assignation_filter(c): tests if the call is an assignation. This is the filter of the function gen_recurse(). In case of a call we do not want to go down so the bool is always set to false. We test too if the assignation is an instruction and in that case, we treat each reference by calling the function gen_recurse again.
AC 94/07/25
first, test if the expression is an array that is an instruction
Definition at line 172 of file delay.c.
References array_ref_exp_p(), call_arguments, call_function, CAR, ENTITY_ASSIGN_P, exp, EXPRESSION, gen_recurse, lexp, reference_domain, reference_filter(), and rewrite_nothing_ref().
Referenced by add_delay_information().
void fprint_delay | ( | FILE * | fp, |
graph | g, | ||
hash_table | t | ||
) |
======================================================================
void fprint_delay(fp, t): print the hash_table t
AC 94/07/01
Definition at line 221 of file delay.c.
References CAR, delay_table, dfg_vertex_label_statement, ENDP, fprintf(), graph_vertices, hash_get(), int, POP, VERTEX, and vertex_vertex_label.
Referenced by reindexing().
======================================================================
bool reference_filter(r): filter on the reference r.
AC 94/07/28
first we get the number of the instruction
get the delay in the hash table
process the instruction only if the reference is an array.
build the modulo expression
Definition at line 114 of file delay.c.
References CAR, CDR, CONS, delay_table, entity_intrinsic(), exp, EXPRESSION, fprintf(), get_debug_level(), get_number_of_ins(), hash_get(), INFINITY, int, int_to_expression(), is_syntax_call, lexp, make_call(), make_expression(), make_syntax(), MODULO_OPERATOR_NAME, NIL, normalized_undefined, print_reference(), reference_indices, and reference_variable.
Referenced by assignation_filter().
|
static |
======================================================================
void rewrite_nothing(chunk *) {return;}: rewrite nothing, incredible,no?
AC 94/07/25 could use gen_null instead. FC.
Definition at line 104 of file delay.c.
Referenced by add_delay_information().
|
static |
Definition at line 105 of file delay.c.
Referenced by assignation_filter().
|
extern |
Name : delay.c Package : reindexing Author : Alexis Platonoff Date : March 1995 Historic :
Documents: SOON Comments : This file contains the functions dealing with the dealy. Ansi includes
Newgen includes
C3 includes
Pips includes
External variables
Definition at line 109 of file reindexing.c.
Referenced by build_first_comb(), calculate_delay(), fprint_delay(), make_array_bounds(), re_do_it(), reference_filter(), and reindexing().