dmd.s2ir

Convert statements to Intermediate Representation (IR) for the back-end.

Authors

Walter Bright

Source: s2ir.d

  • Declaration

    void insertFinallyBlockCalls(block* startblock);

    Insert finally block calls when doing a goto from inside a try block to outside. Done after blocks are generated because then we know all the edges of the graph, but before the Bpred's are computed. Only for EH_DWARF exception unwinding.

    Parameters

    block* startblock

    first block in function

  • Declaration

    void insertFinallyBlockGotos(block* startblock);

    Insert gotos to finally blocks when doing a return or goto from inside a try block to outside. Done after blocks are generated because then we know all the edges of the graph, but before the Bpred's are computed. Only for functions with no exception handling. Very similar to insertFinallyBlockCalls().

    Parameters

    block* startblock

    first block in function