|
FAUST compiler
0.9.9.6b8
|
#include <stdio.h>#include <iostream>#include <sstream>#include <string>#include <list>#include <map>#include "floats.hh"#include "smartpointer.hh"#include "klass.hh"#include "uitree.hh"#include "Text.hh"#include "signals.hh"#include "ppsig.hh"#include "recursivness.hh"
Go to the source code of this file.
Macros | |
| #define | WORK_STEALING_INDEX 0 |
| #define | LAST_TASK_INDEX 1 |
| #define | START_TASK_INDEX LAST_TASK_INDEX + 1 |
| #define | START_TASK_MAX 2 |
Functions | |
| void | tab (int n, ostream &fout) |
| void | printlines (int n, list< string > &lines, ostream &fout) |
| Print a list of lines. More... | |
| void | printdecllist (int n, const string &decl, list< string > &content, ostream &fout) |
| Print a list of elements (e1, e2,...) More... | |
| bool | isElement (const set< Loop * > &S, Loop *l) |
| static void | computeUseCount (Loop *l) |
| Compute how many time each loop is used in a DAG. More... | |
| static void | groupSeqLoops (Loop *l) |
| Group together sequences of loops. More... | |
| static bool | nonRecursiveLevel (const lset &L) |
| returns true if all the loops are non recursive More... | |
| static void | merge (set< string > &dst, set< string > &src) |
Variables | |
| int | gFloatSize |
| bool | gVectorSwitch |
| bool | gDeepFirstSwitch |
| bool | gOpenMPSwitch |
| bool | gOpenMPLoop |
| bool | gSchedulerSwitch |
| int | gVecSize |
| bool | gUIMacroSwitch |
| int | gVectorLoopVariant |
| bool | gGroupTaskSwitch |
| map< Tree, set< Tree > > | gMetaDataSet |
| static int | gTaskCount = 0 |
| #define LAST_TASK_INDEX 1 |
Definition at line 323 of file klass.cpp.
Referenced by Klass::buildTasksList().
| #define START_TASK_INDEX LAST_TASK_INDEX + 1 |
Definition at line 324 of file klass.cpp.
Referenced by Klass::buildTasksList(), and Klass::printComputeMethodScheduler().
| #define START_TASK_MAX 2 |
Definition at line 326 of file klass.cpp.
Referenced by Klass::buildTasksList().
|
static |
Compute how many time each loop is used in a DAG.
Definition at line 288 of file klass.cpp.
References Loop::fBackwardLoopDependencies, and Loop::fUseCount.
Referenced by Klass::buildTasksList(), Klass::printLoopGraphOpenMP(), Klass::printLoopGraphScheduler(), and Klass::printLoopGraphVector().

|
static |
Group together sequences of loops.
Definition at line 301 of file klass.cpp.
References Loop::concat(), Loop::fBackwardLoopDependencies, and Loop::fUseCount.
Referenced by Klass::buildTasksList(), Klass::printLoopGraphOpenMP(), Klass::printLoopGraphScheduler(), and Klass::printLoopGraphVector().


Definition at line 259 of file klass.cpp.
Referenced by Klass::printLoopDeepFirst(), and ppsig::printrec().

|
static |
Definition at line 1203 of file klass.cpp.
Referenced by Klass::collectIncludeFile(), and Klass::collectLibrary().

|
static |
returns true if all the loops are non recursive
Definition at line 576 of file klass.cpp.
Referenced by Klass::printLastLoopLevelScheduler(), Klass::printLoopLevelOpenMP(), and Klass::printLoopLevelScheduler().

| void printdecllist | ( | int | n, |
| const string & | decl, | ||
| list< string > & | content, | ||
| ostream & | fout | ||
| ) |
Print a list of elements (e1, e2,...)
Definition at line 164 of file klass.cpp.
References tab().
Referenced by Klass::printComputeMethodOpenMP().


| void printlines | ( | int | n, |
| list< string > & | lines, | ||
| ostream & | fout | ||
| ) |
Print a list of lines.
Definition at line 153 of file klass.cpp.
References tab().
Referenced by Klass::printComputeMethodOpenMP(), Klass::printComputeMethodScalar(), Klass::printComputeMethodScheduler(), Klass::printComputeMethodVectorFaster(), Klass::printComputeMethodVectorSimple(), Klass::println(), SigIntGenKlass::println(), and SigFloatGenKlass::println().


| void tab | ( | int | n, |
| ostream & | fout | ||
| ) |
Definition at line 68 of file klass.cpp.
Referenced by Klass::printComputeMethodOpenMP(), Klass::printComputeMethodScalar(), Klass::printComputeMethodScheduler(), Klass::printComputeMethodVectorFaster(), Klass::printComputeMethodVectorSimple(), printdecllist(), Klass::printLastLoopLevelScheduler(), printlines(), Klass::println(), SigIntGenKlass::println(), SigFloatGenKlass::println(), Klass::printLoopDeepFirst(), Klass::printLoopGraphInternal(), Klass::printLoopGraphOpenMP(), Klass::printLoopGraphScheduler(), Klass::printLoopGraphVector(), Klass::printLoopLevelOpenMP(), Klass::printMetadata(), and Klass::printOneLoopScheduler().

| bool gDeepFirstSwitch |
Definition at line 139 of file main.cpp.
Referenced by Klass::printLoopGraphVector(), and process_cmdline().
| int gFloatSize |
Definition at line 153 of file main.cpp.
Referenced by Klass::printAdditionalCode().
| bool gGroupTaskSwitch |
Definition at line 146 of file main.cpp.
Referenced by Klass::buildTasksList(), Klass::printLoopGraphOpenMP(), Klass::printLoopGraphScheduler(), Klass::printLoopGraphVector(), and process_cmdline().
Definition at line 91 of file main.cpp.
Referenced by Klass::println(), and Klass::printMetadata().
| bool gOpenMPLoop |
Definition at line 144 of file main.cpp.
Referenced by Klass::printLoopLevelOpenMP().
| bool gOpenMPSwitch |
Definition at line 143 of file main.cpp.
Referenced by Klass::printComputeMethod(), and Klass::printIncludeFile().
| bool gSchedulerSwitch |
Definition at line 145 of file main.cpp.
Referenced by main(), Klass::printComputeMethod(), Klass::println(), and process_cmdline().
|
static |
Definition at line 66 of file klass.cpp.
Referenced by Klass::buildTasksList(), Klass::printComputeMethodScheduler(), Klass::printLastLoopLevelScheduler(), and Klass::printOneLoopScheduler().
| bool gUIMacroSwitch |
Definition at line 148 of file main.cpp.
Referenced by Klass::println(), and process_cmdline().
| int gVecSize |
Definition at line 140 of file main.cpp.
Referenced by Klass::printComputeMethodOpenMP(), Klass::printComputeMethodScheduler(), Klass::printComputeMethodVectorFaster(), Klass::printComputeMethodVectorSimple(), and process_cmdline().
| int gVectorLoopVariant |
Definition at line 141 of file main.cpp.
Referenced by Klass::printComputeMethod(), and process_cmdline().
| bool gVectorSwitch |
Definition at line 138 of file main.cpp.
Referenced by Klass::printComputeMethod(), Klass::printLoopGraphInternal(), and Klass::printLoopGraphVector().
1.8.7