.. java:import:: fr.inria.tapenade.utils ILLang .. java:import:: fr.inria.tapenade.utils Tree LoopBlock ========= .. java:package:: fr.inria.tapenade.representation :noindex: .. java:type:: public final class LoopBlock extends Block Special control-flow block for loops. One LoopBlock represents the whole loop, and not only its header. LoopBlock's are found in the "topBlocks" field of the FlowGraph, and in the "inside" field of LoopBlock's. These LoopBlocks are linked by the FGArrows between their "inside" Block's, and using the originInLevel and destinationInLevel of these FGArrows, one stays inside the same loop level. Fields ------ cycleArrows ^^^^^^^^^^^ .. java:field:: public TapList cycleArrows :outertype: LoopBlock All FGArrow's that cycle in this loop, to its HeaderBlock. entryArrows ^^^^^^^^^^^ .. java:field:: protected TapList entryArrows :outertype: LoopBlock The list of all FGArrows that leave some Block outside the LoopBlock to some Block inside the LoopBlock. entryBlocks ^^^^^^^^^^^ .. java:field:: public TapList entryBlocks :outertype: LoopBlock All loop-entry blocks of this loop. exitArrows ^^^^^^^^^^ .. java:field:: public TapList exitArrows :outertype: LoopBlock The list of all FGArrows that leave some Block inside the LoopBlock to some Block outside the LoopBlock. exitBlocks ^^^^^^^^^^ .. java:field:: public TapList exitBlocks :outertype: LoopBlock All loop-exit blocks of this loop. inside ^^^^^^ .. java:field:: public TapList inside :outertype: LoopBlock The list of BasicBlock's, LoopBlock's and HeaderBlock's immediately enclosed in this loop level. isFixedPoint ^^^^^^^^^^^^ .. java:field:: public boolean isFixedPoint :outertype: LoopBlock Marker set to true during differentiation, to indicate this is a fixed-point loop. Constructors ------------ LoopBlock ^^^^^^^^^ .. java:constructor:: public LoopBlock(TapList inside) :outertype: LoopBlock Creation, with the list of the immediate inside Blocks. Methods ------- backFlow ^^^^^^^^ .. java:method:: @Override public TapList backFlow() :outertype: LoopBlock :return: the list of all FGArrows that leave some Block outside the LoopBlock to some Block inside the LoopBlock. cite ^^^^ .. java:method:: @Override public void cite() throws java.io.IOException :outertype: LoopBlock Prints a short reference to this LoopBlock onto TapEnv.curOutputStream(). enclosingLoopBlocks ^^^^^^^^^^^^^^^^^^^ .. java:method:: protected TapList enclosingLoopBlocks() :outertype: LoopBlock The list of the LoopBlock's of all enclosing loops, from the innermost loops to the outermost. flow ^^^^ .. java:method:: @Override public TapList flow() :outertype: LoopBlock :return: the list of all FGArrows that leave some Block inside the LoopBlock to some Block outside the LoopBlock. header ^^^^^^ .. java:method:: public HeaderBlock header() :outertype: LoopBlock :return: the header of this loop. setEnclosingLoopBlocks ^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: protected void setEnclosingLoopBlocks(TapList enclosingLoopBlocks) :outertype: LoopBlock staticIterationLength ^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public Integer staticIterationLength() :outertype: LoopBlock if this loop has a number of iterations that is a static value or bounded by a static value, and therefore can easily use static tape instead of stack tape, :return: an Integer with this static value, otherwise returns null. staticNormalizedIndex ^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public Tree staticNormalizedIndex() :outertype: LoopBlock toString ^^^^^^^^ .. java:method:: @Override public String toString() :outertype: LoopBlock