PIPS
|
Go to the source code of this file.
Macros | |
#define | __PHRASEC_LOCAL_H__ |
Warning! Do not modify this file that is automatically generated! More... | |
Typedefs | |
typedef dg_arc_label | arc_label |
typedef dg_vertex_label | vertex_label |
#define __PHRASEC_LOCAL_H__ |
Warning! Do not modify this file that is automatically generated!
Modify src/Libs/phrase/phrase-local.h instead, to add your own modifications. header file built by cproto phrase-local.h
typedef dg_arc_label arc_label |
typedef dg_vertex_label vertex_label |
curLoop | urLoop |
lStats | Stats |
Definition at line 1129 of file comEngine_generate_procCode.c.
References CONS, copy_expression(), entity_to_expression(), gen_nconc(), loop_index, loop_range, make_assign_statement(), NIL, range_upper, and STATEMENT.
Referenced by generate_code_loop().
void add_parameter_variable_to_module | ( | reference | ref, |
entity | module, | ||
statement | stat, | ||
string | new_module_name, | ||
int | param_nb | ||
) |
Declare in the newly created module a new variable (which will be a parameter of the module), and replace all occurences to the old variable by the new created.
Assert that entity represent a value code
Get the variable name
trdup("")
ref | ef |
module | odule |
stat | tat |
new_module_name | ew_module_name |
param_nb | aram_nb |
Definition at line 633 of file phrase_distributor.c.
References code_declarations, CONS, create_parameter_variable_for_new_module(), ENTITY, entity_initial, entity_local_name(), entity_module_p(), entity_type, functional_parameters, get_externalized_function_param_name(), make_dummy_identifier(), make_mode_reference(), make_parameter(), module, module_declarations(), new_variable, PARAMETER, pips_assert, pips_debug, ref, reference_variable, replace_reference(), type_functional, value_code, and variable_name().
Referenced by create_module_with_statement().
void add_private_variable_to_module | ( | reference | ref, |
entity | module, | ||
statement | stat, | ||
string | new_module_name | ||
) |
Declare in the newly created module a new variable (which will be a private to the module), and replace all occurences to the old variable by the new created.
Assert that entity represent a value code
Get the variable name
Creates the variable
ref | ef |
module | odule |
stat | tat |
new_module_name | ew_module_name |
Definition at line 683 of file phrase_distributor.c.
References code_declarations, CONS, create_private_variable_for_new_module(), ENTITY, entity_initial, entity_local_name(), entity_module_p(), get_externalized_function_private_param_name(), module, module_declarations(), new_variable, pips_assert, pips_debug, ref, reference_variable, replace_reference(), value_code, and variable_name().
Referenced by create_module_with_statement().
Special function made for Ronan Keryell who likes a lot when a integer number is coded on 3 bits :-)
an_ordering | n_ordering |
Definition at line 407 of file phrase_tools.c.
Referenced by entry_state_variable_value_for_unstructured(), and make_transition_statement().
void clean_statement_from_tags | ( | const char * | comment_portion, |
statement | stat | ||
) |
comment_portion | omment_portion |
stat | tat |
Definition at line 414 of file phrase_tools.c.
References concatenate(), empty_comments, statement_comments, statement_with_empty_comment_p(), and strdup().
Referenced by remove_begin_tag(), and remove_end_tag().
entity clone_variable_with_new_name | ( | entity | a_variable, |
const char * | new_name, | ||
const char * | module_name | ||
) |
This function build and return new variable from a variable a_variable, with name new_name.
If an entity called new_name already exists, return NULL. New variable is added to declarations
Assert that module represent a value code
This entity does not exist, we can safely create it
new_variable = copy_entity (a_variable); entity_name(new_variable) = strdup(concatenate(module_name, MODULE_SEP_STRING, new_name, NULL));
ew_variable = find_or_create_scalar_entity (strdup(concatenate(module_name, MODULE_SEP_STRING, new_name, NULL)),module_name, is_basic_int);
This entity already exist, we return null
a_variable | _variable |
new_name | ew_name |
module_name | odule_name |
Definition at line 269 of file phrase_tools.c.
ref | ef |
stat | tat |
Definition at line 563 of file comEngine_feasability.c.
References action_write_p, EFFECT, effect_action, effect_entity(), f(), lLoop, load_cumulated_rw_effects_list(), loop_index, MAP, ref, reference_variable, same_entity_p(), STATEMENT, and statement_loop().
Referenced by check_loop_distribution_feasability(), phrase_check_reference(), and process_ref_list().
module_name | odule_name |
module_stat | odule_stat |
module | odule |
Definition at line 469 of file comEngine_distribute.c.
References comEngine_distribute_code(), compute_distribution_context(), db_get_memory_resource(), dg, hash_get(), HASH_MAP, hash_table_free(), identify_analyzed_statements_to_distribute(), module, and module_name().
Referenced by phrase_comEngine_distributor().
list comEngine_expression_to_reference_list | ( | expression | e, |
list | lr | ||
) |
references to functions and constants (which are encoded as null-ary functions) are not recorded
lr | r |
Definition at line 100 of file comEngine_feasability.c.
References expression_syntax, and local_syntax_to_reference_list().
Referenced by check_call_distribution_feasability(), check_test_distribution_feasability(), fill_gRefToEncLoop_call(), fill_gRefToEncLoop_test(), generate_code_call(), HRE_distribute_call(), HRE_distribute_test(), local_syntax_to_reference_list(), and reference_indices_entity_list().
externalized_code | xternalized_code |
dg | g |
Definition at line 1177 of file comEngine_feasability.c.
References check_distribution_feasability(), dg, fill_gRefToEncLoop(), g_externalized_code, gDg, gen_free_list(), gIfCount, glIndUsed, gRefToEncLoop, hash_dont_warn_on_redefinition(), HASH_MAP, hash_pointer, hash_table_free(), hash_table_make(), hash_warn_on_redefinition(), lLoop, NIL, and pips_assert.
Referenced by comEngine_distribute_code().
stat | tat |
Definition at line 1187 of file comEngine_generate_code.c.
References COM_OPT, CONS, gen_nconc(), generate_code_function(), gExecPut, gHtCurNewInd, glCurLoop, glCurRep, gLoopToOpt, gLoopToOuterInd, glOutEffStats, glToggleInitStats, hash_pointer, hash_table_free(), hash_table_make(), make_block_statement(), NIL, process_code_seq(), STATEMENT, statement_block_p, and statement_undefined.
Referenced by comEngine_generate_HRECode(), and comEngine_generate_procCode().
statement comEngine_generate_HRECode | ( | statement | , |
string | , | ||
list | , | ||
list | , | ||
list | , | ||
list | , | ||
const char * | , | ||
int | |||
) |
prefix | refix |
bas | as |
Definition at line 94 of file comEngine_generate_code.c.
References AddEntityToCurrentModule(), entity_undefined, get_current_module_entity(), make_new_scalar_variable_with_prefix(), and prefix.
Referenced by comEngine_generate_procCode(), fill_gLoopToToggleEnt(), generate_code_loop(), regenerate_toggles(), and usual_loop_tiling().
stat | tat |
innerStat | nnerStat |
newInd | ewInd |
Definition at line 411 of file comEngine_optimization_function.c.
References CONS, free_statement(), gen_free_list(), gen_nconc(), gLoopToOpt, glSeqs, glStats, hash_get(), HASH_UNDEFINED_VALUE, intptr_t, LIST, loop_body, make_block_statement(), make_loopPattern(), make_seqStat(), MAP, NIL, opt_loop_interchange_fill_lists(), pips_assert, print_statement(), printf(), STATEMENT, statement_block_p, statement_loop(), statement_loop_p(), and statement_undefined.
Referenced by usual_loop_tiling().
void comEngine_replace_reference_in_stat | ( | statement | stat, |
reference | ref, | ||
expression | new | ||
) |
stat | tat |
ref | ef |
new | ew |
Definition at line 871 of file comEngine_generate_procCode.c.
References comEngine_replace_reference_in_stat_rwt(), expression_domain, gen_context_recurse, gen_true2(), gRefToReplace, and ref.
Referenced by generate_code_loop(), make_lInitStats(), make_lSwitchStats(), make_mmcd_stats_from_ref(), process_innerStat1_proc(), regenerate_toggles(), replace_array_ref_with_fifos(), and replace_array_ref_with_fifos2().
bool compute_distribution_context | ( | list | l_stats, |
statement | module_stat, | ||
entity | module, | ||
hash_table * | ht_stats, | ||
hash_table * | ht_params, | ||
hash_table * | ht_private, | ||
hash_table * | ht_in_regions, | ||
hash_table * | ht_out_regions | ||
) |
The goal here is to compute the context of the distribution from a given list of statements (after distribution initialization). Those results are stored in following hashtable:
HT_STATS: This hashtable stores the statement (values) associated to names (keys) of externalized function.
HT_PARAMS: This hashtable stores the list of regions (values) associated to names (keys) of externalized function. Those regions are computed as union of IN and OUT regions of specified statement. If two or more regions refer to the same variable (entity), those regions are transformed into ONE region (which could be converted to a MAY region). This hashtable is used to compute the parameters of specified externalized function.
HT_PRIVATE: This hashtable stores the list of privates regions (values) associated to names (keys) of externalized function. This hashtable is used to compute the private working area in specified externalized function.
HT_IN_REGIONS: This hashtable stores the list of IN regions (values) associated to names (keys) of externalized function. This hashtable is used to compute OUTPUT communication after externalized function execution.
HT_OUT_REGIONS: This hashtable stores the list of OUT regions (values) associated to names (keys) of externalized function. This hashtable is used to compute OUTPUT communication after externalized function execution.
Return true if everything is OK
NB: All lists are sorted using externalized fonction name
lazy init
lazy init
lazy init
lazy init
lazy init
Register new externalized function
l_stats | _stats |
module_stat | odule_stat |
module | odule |
ht_stats | t_stats |
ht_params | t_params |
ht_private | t_private |
ht_in_regions | t_in_regions |
ht_out_regions | t_out_regions |
Definition at line 113 of file distribution_context.c.
bool compute_distribution_controlization_context | ( | list | l_calls, |
statement | module_stat, | ||
entity | module, | ||
hash_table * | ht_calls, | ||
hash_table * | ht_params, | ||
hash_table * | ht_private, | ||
hash_table * | ht_in_regions, | ||
hash_table * | ht_out_regions | ||
) |
This function is called during PHRASE distribution controlization.
The goal here is to compute the context of the distribution from a given list of call statements (after distribution). Those results are stored in following hashtable:
HT_CALLS: This hashtable stores the list of call statements (values) associated to entity representing the external function (keys). This is a list because a same function can be called from multiple points of original program
HT_PARAMS: This hashtable stores the list of regions (values) associated to entity representing the external function (keys). Those regions are computed as union of IN and OUT regions of specified statement. If two or more regions refer to the same variable (entity), those regions are transformed into ONE region (which could be converted to a MAY region). This hashtable is used to compute the parameters of specified externalized function.
HT_PRIVATE: This hashtable stores the list of privates regions (values) associated to entity representing the external function (keys). This hashtable is used to compute the private working area in specified externalized function.
HT_IN_REGIONS: This hashtable stores the list of IN regions (values) associated to entity representing the external function (keys). This hashtable is used to compute OUTPUT communication after externalized function execution.
HT_OUT_REGIONS: This hashtable stores the list of OUT regions (values) associated to entity representing the external function (keys). This hashtable is used to compute OUTPUT communication after externalized function execution.
Return true if everything is OK
NB: All lists are sorted using externalized fonction name
lazy init
lazy init
lazy init
lazy init
lazy init
Register new externalized function
This function has NOT been already defined, Register it
This function has already been defined, add this statement to the list
Check that IN and OUT regions match !
NOT IMPLEMENTED Yet !
l_calls | _calls |
module_stat | odule_stat |
module | odule |
ht_calls | t_calls |
ht_params | t_params |
ht_private | t_private |
ht_in_regions | t_in_regions |
ht_out_regions | t_out_regions |
Definition at line 216 of file distribution_context.c.
Compute union of exact regions.
l_in | _in |
l_out | _out |
Definition at line 291 of file distribution_context.c.
References CONS, entity_local_name(), gen_copy_seq(), gen_length(), gen_nth(), gen_remove(), MAP, pips_debug, pips_internal_error, print_region, print_regions(), region, REGION, region_entity, region_must_union(), region_scalar_p, and same_entity_p().
Referenced by internal_compute_distribution_context().
void create_HRE_module | ( | const char * | new_module_name, |
const char * | module_name, | ||
statement | stat, | ||
entity | new_fun | ||
) |
builds some kind of module / statement for the clone.
add some comments before the code.
give the clonee a user file.
new_module_name | ew_module_name |
module_name | odule_name |
stat | tat |
new_fun | ew_fun |
Definition at line 283 of file comEngine_distribute.c.
References ALL_DECLS, concatenate(), CONS, db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, entity_local_name(), free_statement(), get_bool_property(), get_current_module_entity(), is_sentence_formatted, make_sentence(), make_text_resource_and_free(), module_name(), module_name_to_entity(), move_declarations(), reset_current_module_entity(), SENTENCE, set_bool_property(), set_current_module_entity(), STAT_ORDER, strdup(), text_named_module(), and text_sentences.
Referenced by comEngine_generate_HRECode(), and fill_HRE_module().
entity create_integer_parameter_for_new_module | ( | const char * | parameter_name, |
const char * | module_name, | ||
entity | module, | ||
int | param_nb | ||
) |
Create new integer variable parameter for a newly created module.
parameter_name | arameter_name |
module_name | odule_name |
module | odule |
param_nb | aram_nb |
Definition at line 126 of file phrase_distributor_control_code.c.
References create_parameter_for_new_module(), is_basic_int, make_variable(), MakeBasic(), module, module_name(), and NIL.
Referenced by make_array_communication_module(), make_scalar_communication_module(), make_start_ru_module(), and make_wait_ru_module().
Creates and declares a new variable for a newly created common.
gen_nreverse(CONS(ENTITY,e,old_layout));
name | ame |
module | odule |
common | ommon |
var | ar |
Definition at line 194 of file phrase_distributor_control_code.c.
References AddEntityToDeclarations(), area_layout, area_size, concatenate(), CONS, ENTITY, entity_storage, entity_type, gen_nconc(), is_storage_ram, is_type_variable, make_entity, make_ram(), make_storage(), make_type(), make_value_unknown(), module, module_local_name(), MODULE_SEP_STRING, NIL, pips_debug, storage_space_of_variable(), storage_undefined, strdup(), and type_area.
Referenced by create_externalized_function_common(), and create_new_scalar_common_variable().
Creates and declares a new integer scalar variable for a newly created common.
name | ame |
module | odule |
common | ommon |
Definition at line 228 of file phrase_distributor_control_code.c.
References create_new_scalar_common_variable(), is_basic_int, MakeBasic(), and module.
Referenced by make_global_common_and_initialize().
Creates and declares a new scalar variable for a newly created common.
name | ame |
module | odule |
common | ommon |
Definition at line 220 of file phrase_distributor_control_code.c.
References create_new_common_variable(), make_variable(), module, and NIL.
Referenced by create_new_integer_scalar_common_variable().
entity create_parameter_for_new_module | ( | variable | var, |
const char * | parameter_name, | ||
const char * | module_name, | ||
entity | module, | ||
int | param_nb | ||
) |
phrase_distributor_control_code.c
phrase_distributor_control_code.c
This entity does not exist, we can safely create it
G used to be strdup("")
var | ar |
parameter_name | arameter_name |
module_name | odule_name |
module | odule |
param_nb | aram_nb |
Definition at line 74 of file phrase_distributor_control_code.c.
References code_declarations, concatenate(), CONS, copy_variable(), ENTITY, entity_domain, entity_initial, entity_type, entity_undefined, functional_parameters, gen_find_tabulated(), make_dummy_identifier(), make_entity, make_formal(), make_mode_reference(), make_parameter(), make_storage_formal(), make_type_variable(), make_value_unknown(), module, module_declarations(), module_name(), MODULE_SEP_STRING, new_variable, PARAMETER, pips_internal_error, strdup(), type_functional, and value_code.
Referenced by make_array_communication_module(), and make_scalar_communication_module().
entity create_private_integer_variable_for_new_module | ( | string | new_name, |
const char * | new_module_name, | ||
entity | module | ||
) |
Creates an integer variable in specified module.
This entity does not exist, we can safely create it
Add to declarations....
new_name | ew_name |
new_module_name | ew_module_name |
module | odule |
Definition at line 775 of file phrase_distributor_communication.c.
References add_variable_to_area(), AddEntityToDeclarations(), base, basic_tag, concatenate(), DYNAMIC_AREA_LOCAL_NAME, entity_domain, entity_global_name(), entity_storage, entity_type, entity_undefined, FindEntity(), gen_find_tabulated(), is_basic_int, is_basic_overloaded, is_storage_ram, make_entity, make_ram(), make_storage(), MakeBasic(), MakeTypeVariable(), module, MODULE_SEP_STRING, new_variable, NIL, pips_debug, pips_internal_error, storage_undefined, strdup(), type_variable, value_undefined, and variable_basic.
Referenced by make_array_communication_module().
entity create_private_variable_for_new_module | ( | entity | a_variable, |
const char * | new_name, | ||
const char * | new_module_name, | ||
entity | module | ||
) |
Creates a private variable in specified module.
This entity does not exist, we can safely create it
a_variable | _variable |
new_name | ew_name |
new_module_name | ew_module_name |
module | odule |
Definition at line 586 of file phrase_distributor.c.
References a_variable, add_variable_to_area(), base, basic_tag, concatenate(), copy_type(), copy_value(), DYNAMIC_AREA_LOCAL_NAME, entity_domain, entity_global_name(), entity_initial, entity_storage, entity_type, entity_undefined, FindEntity(), gen_find_tabulated(), is_basic_overloaded, is_storage_ram, make_entity, make_ram(), make_storage(), module, MODULE_SEP_STRING, new_variable, NIL, pips_debug, pips_internal_error, storage_undefined, strdup(), type_variable, and variable_basic.
stat | tat |
lRef | Ref |
Definition at line 1210 of file comEngine_generate_procCode.c.
References CONS, gen_free_list(), get_realFifoNum(), gRefToEff, gRefToFifo, gRefToFifoOff, hash_get(), hash_put(), HASH_UNDEFINED_VALUE, intptr_t, MAP, NIL, pips_assert, print_reference(), printf(), REFERENCE, and reference_equal_p().
Referenced by generate_code_loop().
This function creates (and add declaration) state variable.
The name of this variable is obtained by the concatenation of string STATE_VARIABLE_NAME and name identifier. If the variable doesn't exist with this name, then the variable is created, added to declarations, and returned. If this variable exists, then this functions search a new name by incrementing the integer name_identifier
Assert that module represent a value code
This variable doesn't exist
module_name | odule_name |
name_identifier | ame_identifier |
Definition at line 84 of file fsm_tools.c.
Referenced by create_state_variable(), and fsmize_statement().
DEBUG FUNCTION: print debugging informations for a control a_control.
comments | omments |
a_control | _control |
debug_level | ebug_level |
Definition at line 134 of file phrase_tools.c.
References control_predecessors, control_statement, control_successors, debug_statement(), gen_length(), and pips_debug.
Referenced by flatten_unstructured(), full_spaghettify_module(), and make_transition_statement().
DEBUG FUNCTION: print debugging informations for a statement stat.
comments | omments |
stat | tat |
debug_level | ebug_level |
Definition at line 111 of file phrase_tools.c.
References ifdebug, pips_debug, print_statement(), statement_comments, statement_domain_number, statement_number, statement_ordering, statement_type_as_string(), and statement_with_empty_comment_p().
Referenced by full_spaghettify_statement().
void debug_unstructured | ( | unstructured | an_unstructured, |
int | debug_level | ||
) |
DEBUG FUNCTION: print debugging informations for an unstructured an_unstructured.
f (ordering > 65535) ordering = ordering >> 16;
f (ordering > 65535) ordering = ordering >> 16;
f (ordering > 65535) ordering = ordering >> 16;
an_unstructured | n_unstructured |
debug_level | ebug_level |
Definition at line 146 of file phrase_tools.c.
References asprintf, beautify_ordering(), concatenate(), CONTROL, CONTROL_MAP, control_predecessors, control_statement, control_successors, free(), gen_length(), gen_nth(), ifdebug, line, NIL, pips_debug, predecessors(), print_statement(), statement_ordering, strdup(), successors(), and unstructured_entry.
Creates all the things that need to be created in order to declare common in module (all the variable are created)
Compute the primary variables
We iterate on the primary variables declared in the common and create a new variable mapping the one declared in common
Creates the name for the new variable
Copy type of variable
Create storage for new variable
Copy initial value of variable
Build the new variable
Mark for addition
Add to declarations....
Add those new variable to common layout
common | ommon |
module | odule |
Definition at line 237 of file phrase_distributor_control_code.c.
References AddEntityToDeclarations(), area_layout, concatenate(), CONS, copy_type(), copy_value(), ENTITY, entity_global_name(), entity_initial, entity_local_name(), entity_storage, entity_type, gen_nconc(), gen_nreverse(), ifdebug, is_storage_ram, make_entity, make_ram(), make_storage(), MAP, module, module_local_name(), MODULE_SEP_STRING, new_variable, NIL, offset, pips_debug, ram_offset, storage_ram, strdup(), and type_area.
Referenced by make_array_communication_module(), make_scalar_communication_module(), make_start_ru_module(), and make_wait_ru_module().
Return entity named name in specified module.
Is it the main module ?
name | ame |
module | odule |
Definition at line 434 of file phrase_distributor_control_code.c.
References entity_local_name(), FindEntity(), and module.
Referenced by controlize_distribution(), make_array_communication_statement(), make_communication_statement(), make_scalar_communication_module(), and make_start_ru_module().
Return the state variable value corresponding to the entry in a unstructured statement.
stat | tat |
Definition at line 162 of file fsm_tools.c.
Referenced by make_reset_state_variable_statement().
Return the state variable value corresponding to the exit in a unstructured statement NB: always return 0.
stat | tat |
Definition at line 180 of file fsm_tools.c.
Referenced by make_fsm_from_statement(), and make_transition_statement().
bool fsm_generation | ( | const char * | module_name | ) |
get the resources
dependence_graph = (graph) db_get_memory_resource(DBR_DG, module_name, true);
Now do the job
If property FSMIZE_WITH_GLOBAL_VARIABLE is set to true, we declare here the state variable which will be used in the whole module
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 103 of file fsm_generation.c.
References compute_callees(), create_state_variable(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, fsmize_statement(), get_bool_property(), module_name(), module_name_to_entity(), module_reorder(), pips_assert, reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), and statement_consistent_p().
bool fsm_merge_states | ( | const char * | module_name | ) |
get the resources
Now do the job
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 54 of file fsm_merge_states.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, module_name(), module_name_to_entity(), module_reorder(), pips_assert, reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), and statement_consistent_p().
bool fsm_split_state | ( | const char * | module_name | ) |
get the resources
Now do the job
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 54 of file fsm_split_state.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, module_name(), module_name_to_entity(), module_reorder(), pips_assert, reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), and statement_consistent_p().
This function is recursively called during FSMization.
It takes the statement to fsmize stat as parameter, while module_name is the name of the module where FSMization is applied. If global variable is used for the whole module, state_variable contains this element. If state_variable is null, then new state_variable is created for this statement.
= beautify_ordering (statement_ordering(stat));
stat | tat |
state_variable | tate_variable |
module_name | odule_name |
Definition at line 536 of file fsm_tools.c.
Referenced by fsmize_statement(), and make_transition_statement().
bool full_fsm_generation | ( | const char * | module_name | ) |
get the resources
Now do the job
In fact, there is nothing to do because this phase is the succession of the two phases FULL_SPAGHETTIFY and FSM_GENERATION
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 64 of file full_fsm_generation.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, module_name(), module_name_to_entity(), module_reorder(), pips_assert, reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), and statement_consistent_p().
bool full_spaghettify | ( | const char * | module_name | ) |
get the resources
Now do the job
Reorder the module, because new statements have been added
Restructure the module
Reorder the module, because new statements have been added
ATTENTION after simple_restructure_statement, statement stat is not longer a unstructured, but may be a sequence !!!
update/release resources
module_name | odule_name |
Definition at line 603 of file full_spaghettify.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, full_spaghettify_module(), ifdebug, module_name(), module_name_to_entity(), module_reorder(), pips_assert, pips_debug, print_statement(), reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), simple_restructure_statement(), statement_consistent_p(), statement_unstructured(), and unstructured_consistent_p().
stat | tat |
bCalledFromSeq | CalledFromSeq |
Definition at line 1137 of file comEngine_generate_code.c.
References generate_code_call(), generate_code_loop(), generate_code_seq(), generate_code_test_HRE(), generate_code_test_proc(), gGenHRE, instruction_tag, is_instruction_call, is_instruction_loop, is_instruction_sequence, is_instruction_test, pips_assert, statement_instruction, and statement_undefined.
Referenced by comEngine_generate_code(), generate_code_loop(), generate_code_seq(), generate_code_test_HRE(), and generate_code_test_proc().
stat | tat |
Definition at line 547 of file comEngine_generate_HRECode.c.
References expression_undefined, free_statement(), generate_code_function(), generate_stat_from_ref_list_HRE(), get_call_stat_HRE(), gStatToRef, hash_get(), HASH_UNDEFINED_VALUE, make_empty_statement, process_replacement_HRE(), statement_test(), statement_undefined, test_false, and test_true.
Referenced by generate_code_function().
stat | tat |
Definition at line 1142 of file comEngine_generate_procCode.c.
References CONS, gen_nconc(), generate_code_function(), generate_stat_from_ref_list_proc(), get_call_stat_proc(), gStatToRef, hash_get(), HASH_UNDEFINED_VALUE, make_block_statement(), NIL, print_statement(), printf(), STATEMENT, statement_test(), statement_undefined, test_false, and test_true.
Referenced by generate_code_function().
curRef | urRef |
bRead | Read |
Definition at line 336 of file comEngine_HRE_distribute.c.
References CONS, entity_to_expression(), entity_undefined, expression_undefined, get_fifo_from_ref(), get_fifoExp_from_ref(), get_HRE_buff_ent_from_ref(), get_indExp_from_ref(), glReadStats, glWriteStats, gRefToInd, gRefToToggle, make_read_write_fifo_stat(), pips_assert, READ_FIFO, STATEMENT, statement_undefined, strdup(), and WRITE_FIFO.
Referenced by generate_fifo_stats2().
lRef | Ref |
lReadStats | ReadStats |
lWriteStats | WriteStats |
Definition at line 432 of file comEngine_HRE_distribute.c.
References CONS, gen_free_list(), gen_nconc(), generate_fifo_stat2(), gRefToEff, hash_get(), HASH_UNDEFINED_VALUE, MAP, NIL, pips_assert, R_EFFECT, REFERENCE, reference_equal_p(), STATEMENT, and statement_undefined.
Referenced by replace_array_ref_with_fifos2().
oldInd | ldInd |
newInd | ewInd |
bRead | Read |
Definition at line 396 of file comEngine_HRE_distribute.c.
References entity_to_expression(), gEntToHREFifo, gIndToNum, hash_get(), HASH_UNDEFINED_VALUE, int_to_expression(), intptr_t, make_read_write_fifo_stat(), pips_assert, READ_FIFO, statement_undefined, strdup(), and WRITE_FIFO.
Referenced by add_index_statements().
lRef | Ref |
stat | tat |
Definition at line 382 of file comEngine_generate_HRECode.c.
References CONS, copy_statement(), free_statement(), gen_nconc(), gRefToEff, hash_get(), HASH_UNDEFINED_VALUE, make_block_statement(), make_wait_step_statement(), MAP, NIL, pips_assert, REFERENCE, STATEMENT, statement_undefined, and W_EFFECT.
Referenced by generate_code_call(), generate_code_loop(), generate_code_test_HRE(), process_code_seq(), and usual_loop_tiling().
lRef | Ref |
lInStats | InStats |
Definition at line 425 of file comEngine_generate_HRECode.c.
References CONS, copy_statement(), free_statement(), gen_nconc(), gRefToEff, hash_get(), HASH_UNDEFINED_VALUE, make_wait_step_statement(), MAP, NIL, pips_assert, REFERENCE, STATEMENT, and W_EFFECT.
Referenced by generate_code_loop().
lRef | Ref |
lToggleEnt | ToggleEnt |
stat | tat |
Definition at line 989 of file comEngine_generate_procCode.c.
References CONS, gen_nconc(), generate_mmcd_stats_from_ref(), int_to_expression(), make_block_statement(), make_step_inc_statement(), NIL, STATEMENT, and statement_undefined.
Referenced by generate_code_call(), generate_code_loop(), generate_code_test_proc(), process_code_seq(), and usual_loop_tiling().
lRef | Ref |
lInStats | InStats |
Definition at line 1025 of file comEngine_generate_procCode.c.
References CONS, gen_nconc(), generate_mmcd_stats_from_ref(), int_to_expression(), make_step_inc_statement(), NIL, and STATEMENT.
Referenced by generate_code_loop().
stat | tat |
Definition at line 513 of file comEngine_generate_HRECode.c.
References copy_statement(), statement_comments, and string_undefined.
Referenced by generate_code_call(), and generate_code_test_HRE().
function | unction |
Definition at line 391 of file phrase_distributor_control_code.c.
References asprintf, buffer, COMMON_PARAM_NAME, entity_local_name(), and strdup().
Referenced by make_array_communication_statement(), make_communication_statement(), and make_start_ru_module().
function | unction |
Definition at line 329 of file phrase_distributor_control_code.c.
References asprintf, buffer, CONTROLIZED_STATEMENT_COMMENT, and entity_local_name().
Referenced by controlize_distribution().
Return DYN_VAR_PARAM_NAME name for a dynamic variable.
dynamic_variable | ynamic_variable |
Definition at line 501 of file phrase_distributor_communication.c.
References asprintf, buffer, DYN_VAR_PARAM_NAME, and entity_local_name().
Referenced by make_array_communication_module(), and make_array_communication_statement().
Return the identified function name of the externalized portion of code by searching comment matching tag EXTERNALIZED_CODE_PRAGMA_BEGIN.
stat | tat |
Definition at line 449 of file distribution_context.c.
Return the identified function name of the externalized portion of code by searching comment matching tags EXTERNALIZED_CODE_PRAGMA_ANALYZED Sets the number of statements of this externalizable statement.
stat | tat |
stats_nb | tats_nb |
Definition at line 470 of file distribution_context.c.
Return the identified function name of the externalized portion of code by searching comment matching tag EXTERNALIZED_CODE_PRAGMA_CALL.
stat | tat |
Definition at line 459 of file distribution_context.c.
expression get_fifo_from_ref | ( | reference | ref | ) |
ref | ef |
Definition at line 74 of file comEngine_generate_HRECode.c.
References expression_undefined, gRefToHREFifo, hash_get(), HASH_UNDEFINED_VALUE, int_to_expression(), intptr_t, and ref.
Referenced by generate_fifo_stat(), and generate_fifo_stat2().
expression get_fifoExp_from_ref | ( | reference | curRef, |
expression | buffExp, | ||
hash_table | ht | ||
) |
curRef | urRef |
buffExp | uffExp |
ht | t |
Definition at line 260 of file comEngine_HRE_distribute.c.
References call_to_expression(), entity_intrinsic(), entity_to_expression(), entity_undefined, expression_domain, find_or_create_newInd(), gen_make_list(), HASH_MAP, make_call(), PLUS_OPERATOR_NAME, and reference_equal_p().
Referenced by generate_fifo_stat2().
function | unction |
Definition at line 367 of file phrase_distributor_control_code.c.
References asprintf, buffer, entity_local_name(), FUNCTION_ID_NAME, and strdup().
Referenced by make_scalar_communication_module(), and make_start_ru_module().
stat | tat |
tag | ag |
Definition at line 82 of file phrase_distributor.c.
References gen_nth(), ifdebug, instruction_sequence, instruction_tag, is_instruction_sequence, malloc(), pips_debug, print_statement(), sequence_statements, STATEMENT, statement_comments, statement_instruction, statement_with_empty_comment_p(), and strdup().
Referenced by get_externalizable_function_name(), and get_externalized_function_name().
ref | ef |
Definition at line 91 of file comEngine_generate_HRECode.c.
References entity_undefined, gRefToHREVar, HASH_MAP, ref, and reference_equal_p().
Referenced by generate_fifo_stat(), generate_fifo_stat2(), replace_array_ref_with_fifos(), and replace_array_ref_with_fifos2().
function | unction |
Definition at line 341 of file phrase_distributor_control_code.c.
References asprintf, buffer, entity_local_name(), and IN_PARAM_ID_NAME.
Referenced by make_scalar_communication_module().
function | unction |
Definition at line 354 of file phrase_distributor_control_code.c.
References asprintf, buffer, entity_local_name(), and OUT_PARAM_ID_NAME.
Referenced by make_scalar_communication_module().
var | ar |
Definition at line 424 of file phrase_distributor_control_code.c.
References asprintf, buffer, RECEIVE_PARAMETER_MODULE_NAME, strdup(), and variable_to_string().
Referenced by get_receive_param_module_name(), and make_scalar_communication_modules().
Return REF_VAR_PARAM_NAME name for a dynamic variable.
reference_param | eference_param |
Definition at line 513 of file phrase_distributor_communication.c.
References asprintf, buffer, entity_local_name(), and REF_VAR_PARAM_NAME.
Referenced by make_array_communication_module(), and make_array_communication_statement().
var | ar |
Definition at line 414 of file phrase_distributor_control_code.c.
References asprintf, buffer, SEND_PARAMETER_MODULE_NAME, strdup(), and variable_to_string().
Referenced by get_send_param_module_name(), and make_scalar_communication_modules().
First, set searched_string (we remove format information)
Reset list
fdebug(5) { pips_debug(5, "Searching statements with comments: %s\n", context.searched_string);
pips_debug(5, "In statement:\n");
print_statement(stat); }
comment_portion | omment_portion |
stat | tat |
Definition at line 481 of file phrase_tools.c.
References check_if_statement_contains_comment(), gen_context_recurse, gen_true2(), NIL, statement_domain, and strdup().
Referenced by controlize_distribution(), identify_analyzed_statements_to_distribute(), and identify_statements_to_distribute().
stat | tat |
lSupportedRef | SupportedRef |
lUnSupportedRef | UnSupportedRef |
Definition at line 467 of file comEngine_generate_HRECode.c.
References gLoopToSupRef, gLoopToUnSupRef, hash_get(), HASH_UNDEFINED_VALUE, and pips_assert.
Referenced by generate_code_loop().
void get_supportedRef_proc | ( | statement | stat, |
hash_table | htOffset, | ||
list * | lSupportedRef, | ||
list * | lUnSupportedRef | ||
) |
stat | tat |
htOffset | tOffset |
lSupportedRef | SupportedRef |
lUnSupportedRef | UnSupportedRef |
Definition at line 1077 of file comEngine_generate_procCode.c.
References CONS, gen_nconc(), gLoopToRef, gLoopToSupRef, gLoopToUnSupRef, hash_get(), hash_put(), HASH_UNDEFINED_VALUE, loop_index, MAP, NIL, REFERENCE, statement_loop(), and supported_ref_p().
Referenced by do_HRE_memory_mapping_loop().
stat | tat |
Definition at line 260 of file comEngine_generate_procCode.c.
References gen_context_recurse, has_call_stat_inside_flt(), has_call_stat_inside_rwt(), and statement_domain.
stat | tat |
new_module_name | ew_module_name |
module_name | odule_name |
Definition at line 955 of file comEngine_HRE_distribute.c.
References entity_undefined, g_module_name, g_new_module_name, gCurStats, gIfCount, gIsIndex, glCurLoop, glCurRep, glReadStats, glWriteStats, gNewInd, gOldIndToNewInd, hash_pointer, hash_table_free(), hash_table_make(), HRE_distribute_stat(), loop_enter(), make_block_statement(), module_name(), NIL, print_statement(), and printf().
Referenced by comEngine_generate_HRECode().
This function return a list of statements that were previously marked for externalization during phase PHRASE_DISTRIBUTOR_INIT.
We identify all the statement containing an analyzed tag
stat | tat |
Definition at line 288 of file phrase_distributor.c.
References EXTERNALIZED_CODE_PRAGMA_ANALYZED, and get_statements_with_comments_containing().
Referenced by comEngine_distribute(), and distribute().
bool internal_compute_distribution_context | ( | statement | externalized_code, |
hash_table * | ht_params, | ||
hash_table * | ht_private, | ||
hash_table * | ht_in_regions, | ||
hash_table * | ht_out_regions, | ||
void * | key_value | ||
) |
Internally used to compute distribution context for statement externalized_code.
Storing results in hash_tables
externalized_code | xternalized_code |
ht_params | t_params |
ht_private | t_private |
ht_in_regions | t_in_regions |
ht_out_regions | t_out_regions |
key_value | ey_value |
Definition at line 346 of file distribution_context.c.
References compare_effect_reference(), compute_regions_union(), gen_sort_list(), hash_defined_p(), hash_put(), ifdebug, load_statement_in_regions(), load_statement_local_regions(), load_statement_out_regions(), NIL, pips_debug, pips_user_warning, print_regions(), regions_dup(), regions_read_regions(), regions_write_regions(), RegionsEntitiesInfDifference(), w_r_combinable_p(), and w_w_combinable_p().
Referenced by compute_distribution_context(), and compute_distribution_controlization_context().
statement make_assignement_statement | ( | entity | a_variable, |
expression | an_expression, | ||
statement | stat | ||
) |
Build and return new statement which is a assignement of variable a_variable with expression an_expression, with empty label, statement number and ordering of statement stat, and empty comments.
a_variable | _variable |
an_expression | n_expression |
stat | tat |
Definition at line 392 of file phrase_tools.c.
References a_variable, ASSIGN_OPERATOR_NAME, entity_to_expression(), and make_binary_call_statement().
Referenced by make_body_from_loop(), make_global_common_and_initialize(), and make_initialization_from_loop().
statement make_binary_call_statement | ( | const char * | operator_name, |
expression | expression1, | ||
expression | expression2, | ||
statement | stat | ||
) |
Build and return new statement which is a binary call with the 2 expressions expression1 and expression2, with empty label, statement number and ordering of statement stat, and empty comments.
operator_name | perator_name |
expression1 | xpression1 |
expression2 | xpression2 |
stat | tat |
Definition at line 354 of file phrase_tools.c.
References CONS, empty_comments, empty_extensions(), entity_empty_label(), entity_intrinsic(), EXPRESSION, is_instruction_call, make_call(), make_instruction(), make_statement(), make_synchronization_none(), NIL, statement_extensions, statement_number, STATEMENT_NUMBER_UNDEFINED, statement_ordering, and STATEMENT_ORDERING_UNDEFINED.
Referenced by make_array_communication_statement(), and make_communication_statement().
statement make_exec_mmcd | ( | void | ) |
Definition at line 967 of file comEngine_generate_procCode.c.
References call_to_statement, entity_to_expression(), expression_domain, gen_make_list(), gStepEnt, int_to_expression(), make_call(), module_name_to_runtime_entity(), and strdup().
Referenced by add_exec_mmcd().
expression make_expression_with_state_variable | ( | entity | state_variable, |
int | value, | ||
string | intrinsic_name | ||
) |
state = 23), given an entity state_variable, an int value value, and an intrinsic name
state_variable | tate_variable |
intrinsic_name | ntrinsic_name |
Definition at line 66 of file fsm_tools.c.
Referenced by make_fsm_from_statement(), and make_transition_statement().
statement make_fsm_from_statement | ( | statement | stat, |
entity | state_variable, | ||
const char * | module_name | ||
) |
This function build and return a statement representing the FSM code equivalent to the given unstructured statement stat.
tring comment; char buffer[256];
Assert that given stat is UNSTRUCTURED
Create loop condition: state variable is not equal to exit value
Evaluation is done BEFORE to enter the loop
No label for loop
Computes the statement representing the transitions
Build the loop
printf (buffer, FSM_BEGIN_COMMENT, entity_local_name(state_variable)); comment = strdup(buffer);
tatement_instruction(loop_body) = make_instruction_block(CONS(STATEMENT,returned_statement,NIL));
stat | tat |
state_variable | tate_variable |
module_name | odule_name |
Definition at line 447 of file fsm_tools.c.
Referenced by fsmize_statement().
statement make_fsm_transitions_statement | ( | statement | stat, |
entity | state_variable, | ||
const char * | module_name | ||
) |
This function build and return a statement representing the transitions computation in the FSM, given the UNSTRUCTURED statement stat.
en_recurse(unstructured_entry(nodes_graph), control_domain, transitions_filter, transitions_statements);
stat | tat |
state_variable | tate_variable |
module_name | odule_name |
Definition at line 400 of file fsm_tools.c.
Referenced by make_fsm_from_statement().
stat | tat |
newInd | ewInd |
Definition at line 701 of file comEngine_generate_procCode.c.
References entity_to_expression(), find_or_create_slot(), GEN_LOAD_MMCD, gLoopToUnSupRef, has_loop_inside(), hash_get(), HASH_UNDEFINED_VALUE, int_to_expression(), loop_body, loop_index, make_mmcd_load_store_stat(), NIL, pips_assert, statement_loop(), statement_undefined, and strdup().
Referenced by add_toggle_inc_statements().
list make_loop_lStats_HRE | ( | statement | , |
entity | , | ||
statement | , | ||
entity | , | ||
list | , | ||
hash_table | , | ||
expression | |||
) |
list make_loop_lStats_proc | ( | statement | stat, |
entity | transferSize, | ||
statement | innerStat, | ||
entity | newOuterInd, | ||
list | lSupportedRef, | ||
hash_table | htOffset, | ||
expression | bufferSizeExp | ||
) |
stat | tat |
transferSize | ransferSize |
innerStat | nnerStat |
newOuterInd | ewOuterInd |
lSupportedRef | SupportedRef |
htOffset | tOffset |
bufferSizeExp | ufferSizeExp |
Definition at line 1114 of file comEngine_generate_procCode.c.
References make_lStats().
Referenced by make_loopStat1().
stat | tat |
newOuterInd | ewOuterInd |
Definition at line 554 of file comEngine_generate_procCode.c.
References C_GREATER_THAN_OPERATOR_NAME, call_to_expression(), copy_expression(), empty_comments, empty_extensions(), entity_empty_label(), entity_intrinsic(), entity_to_expression(), expression_domain, gen_make_list(), gGenHRE, is_instruction_test, loop_range, make_call(), make_empty_statement, make_instruction(), make_statement(), make_step_inc_statement(), make_synchronization_none(), make_test(), make_wait_step_statement(), NIL, range_lower, statement_loop(), STATEMENT_NUMBER_UNDEFINED, and STATEMENT_ORDERING_UNDEFINED.
list make_receive_array_params_modules | ( | entity | function, |
list | l_regions, | ||
entity | global_common, | ||
entity | externalized_fonction_common, | ||
int | number_of_deployment_units | ||
) |
Make all RECEIVE_PARAM communication modules for non-scalar regions for a given function.
function | unction |
l_regions | _regions |
global_common | lobal_common |
externalized_fonction_common | xternalized_fonction_common |
number_of_deployment_units | umber_of_deployment_units |
Definition at line 961 of file phrase_distributor_communication.c.
References make_array_communication_modules().
Referenced by controlize_distribution().
list make_receive_scalar_params_modules | ( | hash_table | ht_out_communications, |
int | number_of_deployment_units, | ||
entity | global_common, | ||
list | l_commons | ||
) |
Build and return list of modules used for OUTPUT communications (RECEIVE_PARAMETERS...)
ht_out_communications | t_out_communications |
number_of_deployment_units | umber_of_deployment_units |
global_common | lobal_common |
l_commons | _commons |
Definition at line 609 of file phrase_distributor_communication.c.
References l_commons, and make_scalar_communication_modules().
Referenced by controlize_distribution().
This function build and return a statement representing the initial assigment of the state_variable, given the UNSTRUCTURED statement stat.
stat | tat |
state_variable | tate_variable |
Definition at line 194 of file fsm_tools.c.
Referenced by make_fsm_from_statement().
list make_send_array_params_modules | ( | entity | function, |
list | l_regions, | ||
entity | global_common, | ||
entity | externalized_fonction_common, | ||
int | number_of_deployment_units | ||
) |
Make all SEND_PARAM communication modules for non-scalar regions for a given function.
function | unction |
l_regions | _regions |
global_common | lobal_common |
externalized_fonction_common | xternalized_fonction_common |
number_of_deployment_units | umber_of_deployment_units |
Definition at line 943 of file phrase_distributor_communication.c.
References make_array_communication_modules().
Referenced by controlize_distribution().
list make_send_scalar_params_modules | ( | hash_table | ht_in_communications, |
int | number_of_deployment_units, | ||
entity | global_common, | ||
list | l_commons | ||
) |
Build and return list of modules used for INPUT communications (SEND_PARAMETERS...)
ht_in_communications | t_in_communications |
number_of_deployment_units | umber_of_deployment_units |
global_common | lobal_common |
l_commons | _commons |
Definition at line 593 of file phrase_distributor_communication.c.
References l_commons, and make_scalar_communication_modules().
Referenced by controlize_distribution().
entity make_start_ru_module | ( | hash_table | ht_params, |
statement * | module_statement, | ||
int | number_of_deployment_units, | ||
entity | global_common, | ||
list | l_commons | ||
) |
phrase_distributor_communication.c
phrase_distributor_communication.c
Build and store new module START_RU. Create statement module_statement
Declare CONTROL_DATA common to be visible here
Declare commons for all externalized functions to be visible here
Compute the parameters of call function
Processing PARAMS regions
Make the CALL statement
ht_params | t_params |
module_statement | odule_statement |
number_of_deployment_units | umber_of_deployment_units |
global_common | lobal_common |
l_commons | _commons |
Definition at line 71 of file phrase_distributor_communication.c.
References CONS, create_integer_parameter_for_new_module(), db_get_memory_resource(), declare_common_variables_in_module(), DIMENSION, dimension_lower, effect_any_reference, empty_comments, empty_extensions(), ENTITY, entity_empty_label(), entity_global_name(), entity_in_module(), entity_intrinsic(), entity_local_name(), entity_to_expression(), entity_type, entity_undefined, EQUAL_OPERATOR_NAME, EXPRESSION, fprint_environment(), gen_list_patch(), gen_nreverse(), get_common_param_name(), get_current_module_entity(), get_function_id_name(), HASH_MAP, ifdebug, indices, is_instruction_call, is_instruction_sequence, is_instruction_test, l_commons, local_name_to_top_level_entity(), make_call(), make_continue_statement(), make_empty_subroutine(), make_entity_expression(), make_instruction(), make_language_unknown(), make_return_statement(), make_sequence(), make_statement(), make_synchronization_none(), make_test(), MakeBinaryCall(), MAP, module_statement, new_param(), NIL, pips_debug, ref, reference_variable, REGION, reset_current_module_entity(), set_current_module_entity(), START_RU_MODULE_NAME, START_RU_PARAM1_NAME, START_RU_PARAM2_NAME, STATEMENT, STATEMENT_NUMBER_UNDEFINED, STATEMENT_ORDERING_UNDEFINED, store_new_module(), strdup(), test_condition, type_variable, and variable_dimensions.
Referenced by controlize_distribution().
statement make_state_variable_assignement_statement | ( | statement | stat, |
entity | state_variable, | ||
int | assignement_value | ||
) |
This function build and return a statement representing the initial assigment of the state_variable, given the UNSTRUCTURED statement stat.
tatement_label(stat),
stat | tat |
state_variable | tate_variable |
assignement_value | ssignement_value |
Definition at line 129 of file fsm_tools.c.
Referenced by make_reset_state_variable_statement(), and make_transition_statement().
incNum | ncNum |
Definition at line 537 of file comEngine_generate_procCode.c.
References call_to_expression(), entity_intrinsic(), entity_to_expression(), expression_domain, gen_make_list(), gStepEnt, int_to_expression(), make_assign_statement(), make_call(), and PLUS_OPERATOR_NAME.
Referenced by add_exec_mmcd(), generate_code_call(), generate_stat_from_ref_list_proc(), generate_stat_from_ref_list_proc_list(), make_loop_step_stat(), and process_gLoopToSync_proc().
toggleEnt | oggleEnt |
val | al |
Definition at line 222 of file comEngine_generate_code.c.
References C_MODULO_OPERATOR_NAME, call_to_expression(), entity_intrinsic(), entity_to_expression(), expression_domain, gen_make_list(), int_to_expression(), make_assign_statement(), and make_call().
Referenced by add_toggle_inc_statements(), and regenerate_toggles().
toggleEnt | oggleEnt |
Definition at line 189 of file comEngine_generate_code.c.
References entity_to_expression(), int_to_expression(), and make_assign_statement().
Referenced by regenerate_toggles(), and update_toggle_init_stats_list().
ent | nt |
Definition at line 668 of file comEngine_generate_procCode.c.
References alloc_new_slot(), entity_to_expression(), GEN_LOAD_MMCD, int_to_expression(), make_mmcd_load_store_stat(), and strdup().
Referenced by add_toggle_inc_statements(), and regenerate_toggles().
statement make_transition_statement | ( | control | current_node, |
statement | root_statement, | ||
entity | state_variable, | ||
const char * | module_name | ||
) |
This function build a transition statement (a TEST statement) corresponding to the current control current_node and the root_statement root_statement.
This TEST statement takes a condition on the state_variable having the value matching the statement ordering value, and the control statement for the test_true value. The test_false value is set with a continue statement, before to be eventually replaced in next control node by a new statement.
tring comment; char buffer[50];
This is the exit node, or a non-test statement
This is the exit node, just generate exit code for state_variable
successors_nb == 1
This is a "normal" node, ie not a TEST statement, just add assignement for state_variable with new value
NULL here because we will generate a new state variable, since the potential other FSMs are deeper
This is a "test" node, ie with a TEST statement, just add assignement for state_variable with new value after each statement in TEST
:-)
printf (buffer, FSM_TRANSITION_COMMENT, entity_local_name(state_variable), current_transition_number); comment = strdup(buffer);
tatement_label(root_statement),
current_node | urrent_node |
root_statement | oot_statement |
state_variable | tate_variable |
module_name | odule_name |
Definition at line 212 of file fsm_tools.c.
Referenced by make_fsm_transitions_statement().
statement make_transStat | ( | statement | stat, |
entity | newOuterInd, | ||
entity | transferSize, | ||
expression | bufferSizeExp | ||
) |
tatement stepStat = make_loop_step_stat(stat, newOuterInd);
newStat = make_block_statement(gen_nconc(CONS(STATEMENT, stepStat, NIL), CONS(STATEMENT, newStat, NIL)));
f(!gGenHRE) { statement indStat = make_init_newInd_stat(stat, newOuterInd);
if(indStat != statement_undefined) { newStat = make_block_statement(gen_nconc(CONS(STATEMENT, newStat, NIL), CONS(STATEMENT, indStat, NIL))); } }
stat | tat |
newOuterInd | ewOuterInd |
transferSize | ransferSize |
bufferSizeExp | ufferSizeExp |
Definition at line 733 of file comEngine_generate_procCode.c.
References C_LESS_OR_EQUAL_OPERATOR_NAME, C_MODULO_OPERATOR_NAME, call_to_expression(), copy_expression(), DIVIDE_OPERATOR_NAME, empty_comments, empty_extensions(), entity_empty_label(), entity_intrinsic(), entity_to_expression(), expression_domain, expression_integer_value(), free_expression(), free_statement(), gen_make_list(), int_to_expression(), intptr_t, is_instruction_test, loop_range, make_assign_statement(), make_call(), make_instruction(), make_statement(), make_synchronization_none(), make_test(), MULTIPLY_OPERATOR_NAME, NIL, PLUS_C_OPERATOR_NAME, range_upper, statement_loop(), STATEMENT_NUMBER_UNDEFINED, STATEMENT_ORDERING_UNDEFINED, and statement_undefined.
Referenced by make_loop_lStats_HRE(), and make_lStats().
entity make_variable_from_name_and_entity | ( | entity | cloned_variable, |
const char * | base_name, | ||
statement | stat, | ||
const char * | module_name | ||
) |
Build and return new entity obtained by cloning variable cloned_variable, with a name obtained by the concatenation of base_name and the statement ordering of statement stat.
If such entity already exist, increment statement ordering to get first free name. We assume then that created entity's name is unique.
cloned_variable | loned_variable |
base_name | ase_name |
stat | tat |
module_name | odule_name |
Definition at line 325 of file phrase_tools.c.
References asprintf, clone_variable_with_new_name(), module_name(), statement_ordering, and variable_name().
Referenced by make_begin_variable(), make_end_variable(), make_increment_variable(), and make_index_variable().
statement make_wait_step_statement | ( | void | ) |
Definition at line 113 of file comEngine_generate_HRECode.c.
References call_to_statement, make_call(), module_name_to_runtime_entity(), NIL, statement_undefined, and WAIT_FOR_NEXT_STEP.
Referenced by generate_code_call(), generate_stat_from_ref_list_HRE(), generate_stat_from_ref_list_HRE_list(), make_loop_step_stat(), and process_gLoopToSync_HRE().
bool phrase_comEngine_distributor | ( | const char * | module_name | ) |
module_name | odule_name |
Definition at line 511 of file comEngine_distribute.c.
References comEngine_distribute(), compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, dynamic_area, DYNAMIC_AREA_LOCAL_NAME, entity_undefined, entity_undefined_p, FindOrCreateEntity(), free_value_mappings(), gen_consistent_p(), get_regions_properties(), module, module_local_name(), module_name(), module_name_to_entity(), module_reorder(), module_to_value_mappings(), pips_assert, pips_debug, reset_cumulated_rw_effects(), reset_current_module_entity(), reset_current_module_statement(), reset_in_effects(), reset_out_effects(), reset_proper_rw_effects(), reset_rw_effects(), set_bool_property(), set_cumulated_rw_effects(), set_current_module_entity(), set_current_module_statement(), set_in_effects(), set_out_effects(), set_proper_rw_effects(), set_rw_effects(), and statement_consistent_p().
bool phrase_distributor | ( | const char * | module_name | ) |
set and get the current properties concerning regions
get the resources
sets dynamic_area
Get the READ, WRITE, IN and OUT regions of the module
Now do the job
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 816 of file phrase_distributor.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, distribute(), dynamic_area, DYNAMIC_AREA_LOCAL_NAME, entity_undefined, entity_undefined_p, FindOrCreateEntity(), free_value_mappings(), gen_consistent_p(), get_regions_properties(), module, module_local_name(), module_name(), module_name_to_entity(), module_reorder(), module_to_value_mappings(), pips_assert, pips_debug, reset_cumulated_rw_effects(), reset_current_module_entity(), reset_current_module_statement(), reset_in_effects(), reset_out_effects(), reset_proper_rw_effects(), reset_rw_effects(), set_bool_property(), set_cumulated_rw_effects(), set_current_module_entity(), set_current_module_statement(), set_in_effects(), set_out_effects(), set_proper_rw_effects(), set_rw_effects(), and statement_consistent_p().
bool phrase_distributor_control_code | ( | const char * | module_name | ) |
set and get the current properties concerning regions
get the resources
sets dynamic_area
Get the READ, WRITE, IN and OUT regions of the module
Now do the job
Display the statement before to check consistency
Check the coherency of data
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 1039 of file phrase_distributor_control_code.c.
References compute_callees(), controlize_distribution(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, dynamic_area, DYNAMIC_AREA_LOCAL_NAME, entity_undefined, entity_undefined_p, FindOrCreateEntity(), free_value_mappings(), gen_consistent_p(), get_regions_properties(), ifdebug, module, module_local_name(), module_name(), module_name_to_entity(), module_reorder(), module_to_value_mappings(), pips_assert, pips_debug, print_statement(), reset_cumulated_rw_effects(), reset_current_module_entity(), reset_current_module_statement(), reset_in_effects(), reset_out_effects(), reset_proper_rw_effects(), reset_rw_effects(), set_bool_property(), set_cumulated_rw_effects(), set_current_module_entity(), set_current_module_statement(), set_in_effects(), set_out_effects(), set_proper_rw_effects(), set_rw_effects(), and statement_consistent_p().
bool phrase_distributor_init | ( | const char * | module_name | ) |
get the resources
Now do the job
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 768 of file phrase_distributor.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, gen_consistent_p(), module_name(), module_name_to_entity(), module_reorder(), pips_assert, pips_debug, prepare_distribute(), reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), and statement_consistent_p().
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.
bool print_code_smalltalk | ( | const char * | module_name | ) |
We first build the future resource file, with a .st
save to file
module_name | odule_name |
Definition at line 1670 of file print_code_smalltalk.c.
References concatenate(), db_build_file_resource_name(), db_get_current_workspace_directory(), db_get_memory_resource(), DB_PUT_FILE_RESOURCE, debug_on, entity_name, fprintf(), free(), module, module_name(), module_name_to_entity(), out, pips_debug, s_ppt::ppt, reset_current_module_entity(), reset_current_module_statement(), safe_fclose(), safe_fopen(), set_current_module_entity(), set_current_module_statement(), smalltalk_code_string(), STPRETTY, and strdup().
stat | tat |
lInStats | InStats |
Definition at line 613 of file comEngine_generate_HRECode.c.
References CONS, copy_statement(), gen_nconc(), gLoopToSync, hash_get(), HASH_UNDEFINED_VALUE, intptr_t, make_wait_step_statement(), NIL, and STATEMENT.
Referenced by generate_code_loop().
stat | tat |
lInStats | InStats |
Definition at line 1188 of file comEngine_generate_procCode.c.
References CONS, gen_nconc(), gLoopToSync, hash_get(), HASH_UNDEFINED_VALUE, intptr_t, make_step_inc_statement(), NIL, and STATEMENT.
Referenced by generate_code_loop().
void process_innerStat1_proc | ( | statement | stat, |
entity | oldInd, | ||
entity | newOuterInd, | ||
entity | newInnerInd | ||
) |
stat | tat |
oldInd | ldInd |
newOuterInd | ewOuterInd |
newInnerInd | ewInnerInd |
Definition at line 1057 of file comEngine_generate_procCode.c.
References call_to_expression(), comEngine_replace_reference_in_stat(), entity_intrinsic(), entity_to_expression(), expression_domain, gen_make_list(), make_call(), make_reference(), NIL, and PLUS_OPERATOR_NAME.
Referenced by usual_loop_tiling().
void process_replacement_HRE | ( | list | lRef, |
expression | buffIndExp, | ||
statement * | stat | ||
) |
lRef | Ref |
buffIndExp | uffIndExp |
stat | tat |
Definition at line 483 of file comEngine_generate_HRECode.c.
References entity_undefined, and replace_array_ref_with_fifos().
Referenced by generate_code_call(), generate_code_loop(), generate_code_test_HRE(), make_loopStat1(), process_code_seq(), process_opt_replace(), and usual_loop_tiling().
lRef | Ref |
lStats | Stats |
Definition at line 493 of file comEngine_generate_HRECode.c.
References CAR, CDR, CONS, entity_undefined, expression_undefined, gen_free_list(), gen_nconc(), NIL, replace_array_ref_with_fifos(), and STATEMENT.
Referenced by generate_code_loop().
ref | ef |
Definition at line 603 of file comEngine_feasability.c.
References comEngine_expression_to_reference_list(), EXPRESSION, gen_concatenate(), gen_free_list(), MAP, NIL, ref, and reference_indices.
Referenced by phrase_check_reference(), and process_ref_list().
Return a list of references corresponding to a list of regions.
l_regions | _regions |
Definition at line 603 of file phrase_tools.c.
References CONS, EFFECT, effect_any_reference, entity_local_name(), MAP, NIL, pips_debug, print_reference(), ref, REFERENCE, and reference_variable.
Referenced by create_module_with_statement(), and distribute_code().
void register_scalar_communications | ( | hash_table * | ht_communications, |
entity | function, | ||
list | l_regions | ||
) |
Build an HASHTABLE where keys are VARIABLE and values are HASHTABLE where keys are modules or externalized function (ENTITY) and values are list of regions.
Iterate on all regions of the given list
Get the variable type
Look if this variable is already registered
ht_communications | t_communications |
function | unction |
l_regions | _regions |
Definition at line 538 of file distribution_context.c.
void replace_array_ref_with_fifos | ( | list | lRef, |
expression | buffIndExp, | ||
entity | ind, | ||
statement * | newStat | ||
) |
lRef | Ref |
buffIndExp | uffIndExp |
ind | nd |
newStat | ewStat |
Definition at line 286 of file comEngine_generate_HRECode.c.
References comEngine_replace_reference_in_stat(), CONS, entity_undefined, gen_nconc(), generate_fifo_stats(), get_HRE_buff_ent_from_ref(), make_block_statement(), make_reference(), MAP, NIL, pips_assert, REFERENCE, reference_to_expression(), STATEMENT, and statement_undefined.
Referenced by process_replacement_HRE(), and process_replacement_HRE_OutRef().
void replace_in_sequence_statement_with | ( | statement | old_stat, |
statement | new_stat, | ||
statement | root_stat | ||
) |
Replace statement old_stat by statement new_stat, asserting that this statement is contained in a sequence.
en_insert_after (new_stat, old_stat, stats_list); gen_remove (&stats_list, old_stat);
old_stat | ld_stat |
new_stat | ew_stat |
root_stat | oot_stat |
Definition at line 554 of file phrase_tools.c.
References CONS, gen_nreverse(), ifdebug, instruction_sequence, MAP, NIL, pips_assert, pips_debug, print_statement(), sequence_statement_containing(), sequence_statements, STATEMENT, and statement_instruction.
Referenced by distribute_code().
root_statement | oot_statement |
searched_stat | earched_stat |
Definition at line 536 of file phrase_tools.c.
References gen_context_recurse, gen_true2(), search_sequence_containing(), and statement_domain.
Referenced by compute_distribution_context(), and identify_statements_to_distribute().
void short_debug_unstructured | ( | unstructured | an_unstructured, |
int | debug_level | ||
) |
DEBUG FUNCTION: print debugging informations for an unstructured an_unstructured (short version)
an_unstructured | n_unstructured |
debug_level | ebug_level |
Definition at line 213 of file phrase_tools.c.
References asprintf, concatenate(), CONTROL, CONTROL_MAP, control_predecessors, control_successors, free(), ifdebug, MAP, NIL, pips_debug, strdup(), unstructured_entry, and unstructured_exit.
Referenced by flatten_unstructured().
bool spaghettify | ( | const char * | module_name | ) |
get the resources
Now do the job
Reorder the module, because new statements have been added
update/release resources
module_name | odule_name |
Definition at line 173 of file spaghettify.c.
References compute_callees(), db_get_memory_resource(), DB_PUT_MEMORY_RESOURCE, debug_off, debug_on, local_name_to_top_level_entity(), module_name(), module_reorder(), pips_assert, reset_current_module_entity(), reset_current_module_statement(), set_current_module_entity(), set_current_module_statement(), spaghettify_statement(), and statement_consistent_p().
stat | tat |
module_name | odule_name |
Definition at line 135 of file forloop_spaghettify.c.
stat | tat |
module_name | odule_name |
Definition at line 391 of file loop_spaghettify.c.
This phase transforms structured code portions (eg. loops) in unstructured statements.
To add flexibility, the behavior of \texttt{spaghettifier} is controlled by the properties
spaghettify > MODULE.code < PROGRAM.entities < MODULE.code This function is recursively called during spaghettization. It takes the statement stat as parameter and return a new spaghettized statement (or the same if nothing has been done). Spaguettization is done:
stat | tat |
module_name | odule_name |
Definition at line 85 of file spaghettify.c.
References gen_list_patch(), get_bool_property(), ifdebug, instruction_sequence, instruction_tag, is_instruction_call, is_instruction_forloop, is_instruction_goto, is_instruction_loop, is_instruction_sequence, is_instruction_test, is_instruction_unstructured, is_instruction_whileloop, MAP, module_name(), pips_debug, print_statement(), sequence_statements, spaghettify_forloop(), spaghettify_loop(), spaghettify_statement(), spaghettify_test(), spaghettify_whileloop(), STATEMENT, statement_comments, statement_domain_number, statement_instruction, statement_number, statement_ordering, statement_type_as_string(), and statement_with_empty_comment_p().
Referenced by make_body_from_forloop(), make_body_from_loop(), make_body_from_whileloop(), make_if_false_from_test(), and make_if_true_from_test().
stat | tat |
module_name | odule_name |
Definition at line 142 of file test_spaghettify.c.
References instruction_tag, instruction_test, is_instruction_test, is_instruction_unstructured, make_instruction(), make_unstructured_from_test(), module_name(), pips_assert, pips_debug, and statement_instruction.
Referenced by full_spaghettify_statement(), and spaghettify_statement().
stat | tat |
module_name | odule_name |
Definition at line 142 of file whileloop_spaghettify.c.
References instruction_tag, instruction_whileloop, is_instruction_unstructured, is_instruction_whileloop, make_instruction(), make_unstructured_from_whileloop(), module_name(), pips_assert, pips_debug, and statement_instruction.
Referenced by full_spaghettify_statement(), and spaghettify_statement().
root_statement | oot_statement |
searched_stat | earched_stat |
Definition at line 507 of file phrase_tools.c.
References sequence_statement_containing().
Referenced by identify_statements_to_distribute().
stat | tat |
Definition at line 65 of file phrase_tools.c.
References instruction_tag, is_instruction_call, is_instruction_forloop, is_instruction_goto, is_instruction_loop, is_instruction_sequence, is_instruction_test, is_instruction_unstructured, is_instruction_whileloop, statement_instruction, and strdup().
Referenced by fsmize_statement(), and spaghettify_statement().
Store (PIPDBM) newly created module module with module_statement as USER_FILE by saving pretty printing.
module_name | odule_name |
module | odule |
module_statement | odule_statement |
Definition at line 143 of file phrase_distributor_control_code.c.
References close_prettyprint(), code_declarations, db_build_file_resource_name(), DB_PUT_NEW_FILE_RESOURCE, empty_text(), ENTITY, entity_global_name(), entity_initial, fprint_environment(), get_current_module_entity(), ifdebug, init_prettyprint(), make_text_resource(), MAP, module, module_name(), module_statement, pips_debug, print_statement(), reset_current_module_entity(), set_current_module_entity(), text_module(), and value_code.
Referenced by make_array_communication_module(), make_scalar_communication_module(), make_start_ru_module(), and make_wait_ru_module().
Return a unique (regarding variable_equal_p(var1,var2)) string representation of a variable var.
var | ar |
Definition at line 511 of file distribution_context.c.
|
extern |
Definition at line 74 of file comEngine_distribute.c.
Referenced by compute_HRE_memory_mapping().
|
extern |
Definition at line 73 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), compute_HRE_memory_mapping(), generate_code(), and generate_code_loop().
|
extern |
Definition at line 83 of file comEngine_distribute.c.
Referenced by alloc_new_slot(), comEngine_distribute_code(), find_or_create_slot(), and generate_ind_fifo_stat2().
|
extern |
Definition at line 70 of file comEngine_generate_code.c.
Referenced by comEngine_generate_HRECode(), comEngine_generate_procCode(), generate_code_call(), generate_code_function(), generate_code_loop(), generate_code_seq(), make_loop_step_stat(), make_loopStat1(), process_code_seq(), and usual_loop_tiling().
|
extern |
Definition at line 72 of file comEngine_distribute.c.
|
extern |
Definition at line 80 of file comEngine_distribute.c.
Referenced by alloc_new_slot(), comEngine_distribute_code(), and generate_ind_fifo_stat2().
|
extern |
Definition at line 86 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), generate_code_loop(), make_seqStat(), and opt_loop_interchange_fill_lists().
|
extern |
cproto-generated files
comEngine_optimization_function.c
Definition at line 59 of file comEngine_optimization_function.c.
Referenced by comEngine_generate_code(), comEngine_opt_loop_interchange(), fill_gLoopToOpt(), and generate_code_loop().
|
extern |
Definition at line 66 of file comEngine_generate_code.c.
Referenced by comEngine_generate_code(), and generate_code_loop().
|
extern |
Definition at line 66 of file comEngine_distribute.c.
Referenced by attach_ref_to_loop(), comEngine_distribute_code(), generate_code_loop(), and get_supportedRef_proc().
|
extern |
Definition at line 70 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), get_supportedRef_HRE(), get_supportedRef_proc(), and process_ref_lists().
|
extern |
Definition at line 69 of file comEngine_distribute.c.
Referenced by check_for_conflict(), comEngine_distribute_code(), process_gLoopToSync_HRE(), and process_gLoopToSync_proc().
|
extern |
Definition at line 82 of file comEngine_distribute.c.
Referenced by add_toggle_inc_statements(), comEngine_distribute_code(), fill_gLoopToToggleEnt(), generate_code_loop(), make_mmcd_stats_from_ref(), regenerate_toggles(), update_toggle_init_stats_list(), and usual_loop_tiling().
|
extern |
Definition at line 71 of file comEngine_distribute.c.
Referenced by add_exec_mmcd(), comEngine_distribute_code(), find_or_create_newInd(), get_supportedRef_HRE(), get_supportedRef_proc(), and make_init_newInd_stat().
|
extern |
Definition at line 89 of file comEngine_generate_code.c.
Referenced by comEngine_generate_code(), regenerate_toggles(), and update_toggle_init_stats_list().
|
extern |
Definition at line 79 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), and update_HRE_mapping_from_list().
|
extern |
Definition at line 68 of file comEngine_distribute.c.
Referenced by attach_ref_to_stat(), comEngine_distribute_code(), create_realFifo_proc(), generate_fifo_stats(), generate_fifo_stats2(), generate_mmcd_stats_from_ref(), generate_stat_from_ref_list_HRE(), and generate_stat_from_ref_list_HRE_list().
|
extern |
Definition at line 75 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), compute_fifo_from_ref(), create_realFifo_proc(), fill_gLoopToToggleEnt(), generate_mmcd_stat_from_ref(), and get_toggleEnt_from_ref().
|
extern |
Definition at line 76 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), create_realFifo_proc(), fill_gLoopToToggleEnt(), get_realFifoNum(), and get_toggleEnt_from_ref().
|
extern |
Definition at line 77 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), comEngine_generate_procCode(), compute_fifo_from_ref(), generate_scalar_variables(), get_fifo_from_ref(), and get_realFifoNum().
|
extern |
Definition at line 68 of file comEngine_generate_HRECode.c.
Referenced by comEngine_generate_HRECode(), generate_code(), generate_scalar_variables(), generate_scalar_variables_from_list(), and get_HRE_buff_ent_from_ref().
|
extern |
Definition at line 81 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), generate_fifo_stat2(), and make_mmcd_stats_from_ref().
|
extern |
Definition at line 84 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), generate_fifo_stat2(), make_mmcd_stats_from_ref(), and regenerate_toggles().
|
extern |
Definition at line 78 of file comEngine_distribute.c.
Referenced by comEngine_distribute_code(), do_HRE_memory_mapping_loop(), and generate_code_loop().
|
extern |
Definition at line 67 of file comEngine_distribute.c.
Referenced by attach_ref_to_loop(), check_loop_distribution_feasability(), comEngine_distribute_code(), do_HRE_memory_mapping_stat(), generate_code_call(), generate_code_loop(), generate_code_test_HRE(), generate_code_test_proc(), process_code_seq(), and process_ref_list().
|
extern |
Definition at line 85 of file comEngine_distribute.c.
Referenced by add_toggle_inc_statements(), comEngine_distribute_code(), fill_gLoopToToggleEnt(), get_toggleEnt_from_ref(), and regenerate_toggles().