Class BetterCFGBuilder2.Context

  • Enclosing class:
    BetterCFGBuilder2

    private static class BetterCFGBuilder2.Context
    extends java.lang.Object
    Inlining context. This essentially consists of a inlining site and a subroutine to be inlined. A stack of calling contexts is maintained in order to resolve EscapeTargets.
    • Method Detail

      • getResult

        public CFG getResult()
        Get the result CFG.
      • hasMoreWork

        public boolean hasMoreWork()
        Are there more work list items?
      • nextItem

        public BasicBlock nextItem()
        Get the next work list item (basic block to be inlined).
      • mapBlock

        public void mapBlock​(BasicBlock subBlock,
                             BasicBlock resultBlock)
        Map a basic block in a subroutine to the corresponding block in the resulting CFG.
        Parameters:
        subBlock - the subroutine block
        resultBlock - the result CFG block
      • getBlock

        public BasicBlock getBlock​(BasicBlock subBlock)
        Get the block in the result CFG corresponding to the given subroutine block.
        Parameters:
        subBlock - the subroutine block
        Returns:
        the result CFG block