PIPS
|
Go to the source code of this file.
Macros | |
#define | INDEX_VARIABLE_NAME "DO%d_INDEX" |
#define | BEGIN_VARIABLE_NAME "DO%d_BEGIN" |
#define | END_VARIABLE_NAME "DO%d_END" |
#define | INCREMENT_VARIABLE_NAME "DO%d_INCREMENT" |
Functions | |
statement | spaghettify_loop (statement stat, const char *module_name) |
This function takes the statement stat as parameter and return a new spaghettized statement, asserting stat is a LOOP statement. More... | |
statement | spaghettify_whileloop (statement stat, const char *module_name) |
whileloop_spaghettify.c More... | |
statement | spaghettify_forloop (statement stat, const char *module_name) |
This function takes the statement stat as parameter and return a new spaghettized statement, asserting stat is a FORLOOP statement. More... | |
statement | spaghettify_test (statement stat, const char *module_name) |
test_spaghettify.c More... | |
statement | spaghettify_statement (statement stat, const char *module_name) |
The spaghettifier is used in context of PHRASE project while creating "Finite State Machine"-like code portions in order to synthetise them in reconfigurables units. More... | |
#define BEGIN_VARIABLE_NAME "DO%d_BEGIN" |
Definition at line 28 of file spaghettify.h.
#define END_VARIABLE_NAME "DO%d_END" |
Definition at line 29 of file spaghettify.h.
#define INCREMENT_VARIABLE_NAME "DO%d_INCREMENT" |
Definition at line 30 of file spaghettify.h.
#define INDEX_VARIABLE_NAME "DO%d_INDEX" |
Definition at line 27 of file spaghettify.h.
This function takes the statement stat as parameter and return a new spaghettized statement, asserting stat is a FORLOOP statement.
stat | tat |
module_name | odule_name |
Definition at line 135 of file forloop_spaghettify.c.
References instruction_forloop, instruction_tag, is_instruction_forloop, is_instruction_unstructured, make_instruction(), make_unstructured_from_forloop(), module_name(), pips_assert, pips_debug, and statement_instruction.
Referenced by full_spaghettify_statement(), and spaghettify_statement().
This function takes the statement stat as parameter and return a new spaghettized statement, asserting stat is a LOOP statement.
stat | tat |
module_name | odule_name |
Definition at line 391 of file loop_spaghettify.c.
References instruction_tag, is_instruction_loop, is_instruction_unstructured, make_instruction(), make_unstructured_from_loop(), module_name(), pips_assert, pips_debug, statement_instruction, and statement_loop().
Referenced by full_spaghettify_statement(), and spaghettify_statement().
The spaghettifier is used in context of PHRASE project while creating "Finite State Machine"-like code portions in order to synthetise them in reconfigurables units.
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.
Referenced by spaghettify(), and spaghettify_statement().
stat | tat |
module_name | odule_name |
Definition at line 142 of file test_spaghettify.c.
stat | tat |
module_name | odule_name |
Definition at line 142 of file whileloop_spaghettify.c.