|
FAUST compiler
0.9.9.6b8
|

Go to the source code of this file.
Classes | |
| struct | Env |
Functions | |
| static Tree | calcDeBruijn2Sym (Tree t) |
| static Tree | substitute (Tree t, int n, Tree id) |
| static Tree | calcsubstitute (Tree t, int level, Tree id) |
| static Tree | liftn (Tree t, int threshold) |
| static Tree | calcliftn (Tree t, int threshold) |
| Tree | rec (Tree body) |
| create a de Bruijn recursive tree More... | |
| bool | isRec (Tree t, Tree &body) |
| is t a de Bruijn recursive tree More... | |
| Tree | ref (int level) |
| create a de Bruijn recursive reference More... | |
| bool | isRef (Tree t, int &level) |
| is t a de Bruijn recursive reference More... | |
| Tree | rec (Tree var, Tree body) |
| create a symbolic recursive tree More... | |
| bool | isRec (Tree t, Tree &var, Tree &body) |
| is t a symbolic recursive tree More... | |
| Tree | ref (Tree id) |
| create a symbolic recursive reference More... | |
| bool | isRef (Tree t, Tree &v) |
| is t a symbolic recursive reference More... | |
| Tree | lift (Tree t) |
| void | printSignal (Tree sig, FILE *out, int prec=0) |
| Tree | deBruijn2Sym (Tree t) |
| static void | markOpen (Tree t) |
| static int | recomputeAperture (Tree t, Env *p) |
| static int | orderof (Tree t, Env *p) |
| void | updateAperture (Tree t) |
Variables | |
| Sym | DEBRUIJN = symbol ("DEBRUIJN") |
| Sym | DEBRUIJNREF = symbol ("DEBRUIJNREF") |
| Sym | SUBSTITUTE = symbol ("SUBSTITUTE") |
| Sym | SYMREC = symbol ("SYMREC") |
| Sym | SYMRECREF = symbol ("SYMRECREF") |
| Sym | SYMLIFTN = symbol ("LIFTN") |
| Tree | RECDEF = tree(symbol("RECDEF")) |
| Tree | DEBRUIJN2SYM = tree(symbol("deBruijn2Sym")) |
Definition at line 235 of file recursive-tree.cpp.
References CTree::arity(), CTree::branch(), deBruijn2Sym(), isRec(), isRef(), CTree::make(), CTree::node(), printSignal(), rec(), ref(), substitute(), tree(), and unique().
Referenced by deBruijn2Sym().


Definition at line 182 of file recursive-tree.cpp.
References CTree::arity(), CTree::branch(), isClosed(), isRec(), isRef(), liftn(), CTree::make(), CTree::node(), rec(), and ref().
Referenced by liftn().


Definition at line 284 of file recursive-tree.cpp.
References CTree::aperture(), CTree::arity(), CTree::branch(), isRec(), isRef(), CTree::make(), CTree::node(), rec(), and substitute().
Referenced by substitute().


Definition at line 223 of file recursive-tree.cpp.
References calcDeBruijn2Sym(), CTree::getProperty(), isClosed(), and CTree::setProperty().
Referenced by calcDeBruijn2Sym(), mapPrepareEqSig(), and ScalarCompiler::prepare().


is t a de Bruijn recursive tree
Definition at line 59 of file recursive-tree.cpp.
References isTree().
Referenced by annotate(), calcDeBruijn2Sym(), calcliftn(), calcsubstitute(), computePrivatisation(), VectorCompiler::generateCodeRecursions(), ScalarCompiler::generateRecProj(), DocCompiler::generateRecProj(), getSubSignals(), infereSigOrder(), infereSigType(), ppsig::print(), printSignal(), recdraw(), recomputeAperture(), sigLabel(), sigMap(), sigMapRename(), symlistVisit(), typeAnnotation(), and sigvisitor::visit().


is t a symbolic recursive tree
Definition at line 95 of file recursive-tree.cpp.
References CTree::getProperty(), and isTree().

| bool isRef | ( | Tree | t, |
| int & | level | ||
| ) |
is t a de Bruijn recursive reference
Definition at line 70 of file recursive-tree.cpp.
References isInt(), isTree(), and CTree::node().
Referenced by calcDeBruijn2Sym(), calcliftn(), calcsubstitute(), infereSigOrder(), ppsig::print(), printSignal(), recomputeAperture(), sigMapRename(), and sigvisitor::visit().


is t a symbolic recursive reference
Definition at line 111 of file recursive-tree.cpp.
References isTree().

Definition at line 149 of file recursive-tree.cpp.
References liftn().
Referenced by listLift(), and realPropagate().


Definition at line 169 of file recursive-tree.cpp.
References calcliftn(), CTree::getProperty(), CTree::setProperty(), and tree().
Referenced by calcliftn(), and lift().


|
static |
Definition at line 328 of file recursive-tree.cpp.
References CTree::aperture(), CTree::arity(), CTree::branch(), and CTree::setAperture().
Referenced by updateAperture().


Definition at line 369 of file recursive-tree.cpp.
References Env::fNext, and Env::fTree.
Referenced by recomputeAperture().

| void printSignal | ( | Tree | sig, |
| FILE * | out, | ||
| int | prec = 0 |
||
| ) |
Definition at line 85 of file sigprint.cpp.
References hd(), isList(), isProj(), isRec(), isRef(), isSigAttach(), isSigBinOp(), isSigDelay1(), isSigDocAccessTbl(), isSigDocConstantTbl(), isSigDocWriteTbl(), isSigFixDelay(), isSigFloatCast(), isSigGen(), isSigInput(), isSigInt(), isSigIntCast(), isSigOutput(), isSigPrefix(), isSigRDTbl(), isSigReal(), isSigTable(), isSigWRTbl(), print(), printSignal(), and tl().
Referenced by calcDeBruijn2Sym(), ScalarCompiler::generateCode(), main(), and printSignal().


create a de Bruijn recursive tree
Definition at line 54 of file recursive-tree.cpp.
References tree().
Referenced by calcDeBruijn2Sym(), calcliftn(), calcsubstitute(), computePrivatisation(), realPropagate(), sigMap(), and sigMapRename().


create a symbolic recursive tree
Definition at line 88 of file recursive-tree.cpp.
References CTree::setProperty(), and tree().

Definition at line 338 of file recursive-tree.cpp.
References CTree::aperture(), CTree::arity(), CTree::branch(), isRec(), isRef(), orderof(), and CTree::setAperture().
Referenced by updateAperture().


| Tree ref | ( | int | level | ) |
create a de Bruijn recursive reference
Definition at line 64 of file recursive-tree.cpp.
References tree().
Referenced by calcDeBruijn2Sym(), calcliftn(), realPropagate(), and sigMapRename().


create a symbolic recursive reference
Definition at line 106 of file recursive-tree.cpp.
References tree().

Definition at line 271 of file recursive-tree.cpp.
References calcsubstitute(), CTree::getProperty(), CTree::setProperty(), and tree().
Referenced by calcDeBruijn2Sym(), and calcsubstitute().


| void updateAperture | ( | Tree | t | ) |
Definition at line 320 of file recursive-tree.cpp.
References markOpen(), and recomputeAperture().

Definition at line 39 of file recursive-tree.cpp.
Definition at line 221 of file recursive-tree.cpp.
Definition at line 40 of file recursive-tree.cpp.
Definition at line 85 of file recursive-tree.cpp.
Definition at line 41 of file recursive-tree.cpp.
Definition at line 45 of file recursive-tree.cpp.
Definition at line 43 of file recursive-tree.cpp.
Definition at line 44 of file recursive-tree.cpp.
1.8.7