coins.backend.ana
クラス LiveVariableSlotwise

java.lang.Object
  |
  +--coins.backend.ana.LiveVariableSlotwise
すべての実装インタフェース:
LiveVariableAnalysis, LocalAnalysis

public class LiveVariableSlotwise
extends java.lang.Object
implements LocalAnalysis, LiveVariableAnalysis

Yet another live variable analysis. Analysis done by slotwise (each variables separately)


フィールドの概要
static coins.backend.ana.LiveVariableSlotwise.Analyzer analyzer
          Factory singleton.
 
メソッドの概要
 void addLiveInSet(NumberSet x, BasicBlk blk)
          Add set of live variable numbers at entry to NumberSet x.
 void addLiveOutSet(NumberSet x, BasicBlk blk)
          Add set of live variable numbers at exit of block blk to NumberSet x.
 void getLiveInSet(NumberSet x, BasicBlk blk)
          Copy set of live variable numbers at entry to NumberSet x.
 void getLiveOutSet(NumberSet x, BasicBlk blk)
          Copy set of live variable numbers at exit of block blk to NumberSet x.
 boolean isLiveAtEntry(int regvar, BasicBlk blk)
          Return true if variable regvar is live at entry of blk.
 boolean isLiveAtEntry(Symbol regvar, BasicBlk blk)
          Return true if variable regvar is live at entry of blk.
 boolean isLiveAtExit(int regvar, BasicBlk blk)
          Return true if variable regvar is live at exit of blk.
 boolean isLiveAtExit(Symbol regvar, BasicBlk blk)
          Return true if variable regvar is live at exit of blk.
 boolean isUpToDate()
          Return true if this analysis is up to date.
 BiList liveIn(BasicBlk blk)
          Return the list of live variables at entry of basic block blk.
 NumberSet liveInSet(BasicBlk blk)
          Return set of live variable numbers at entry of basic block.
 BiList liveOut(BasicBlk blk)
          Return the list of live variables at exit of basic block blk.
 NumberSet liveOutSet(BasicBlk blk)
          Return set of live variable numbers at exit of basic block.
 void printAfterBlock(BasicBlk blk, java.io.PrintWriter output)
          Called after each Basic Block.
 void printAfterFunction(java.io.PrintWriter output)
          Called after function body.
 void printAfterStmt(LirNode stmt, java.io.PrintWriter output)
          Called after each statement.
 void printBeforeBlock(BasicBlk blk, java.io.PrintWriter output)
          Called before each Basic Block.
 void printBeforeFunction(java.io.PrintWriter output)
          Debug print entries required by interface.
 void printBeforeStmt(LirNode stmt, java.io.PrintWriter output)
          Called before each statement.
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

analyzer

public static final coins.backend.ana.LiveVariableSlotwise.Analyzer analyzer
Factory singleton.

メソッドの詳細

isLiveAtEntry

public boolean isLiveAtEntry(Symbol regvar,
                             BasicBlk blk)
Return true if variable regvar is live at entry of blk.

定義:
インタフェース LiveVariableAnalysis 内の isLiveAtEntry

isLiveAtEntry

public boolean isLiveAtEntry(int regvar,
                             BasicBlk blk)
Return true if variable regvar is live at entry of blk.

定義:
インタフェース LiveVariableAnalysis 内の isLiveAtEntry

isLiveAtExit

public boolean isLiveAtExit(Symbol regvar,
                            BasicBlk blk)
Return true if variable regvar is live at exit of blk.

定義:
インタフェース LiveVariableAnalysis 内の isLiveAtExit

isLiveAtExit

public boolean isLiveAtExit(int regvar,
                            BasicBlk blk)
Return true if variable regvar is live at exit of blk.

定義:
インタフェース LiveVariableAnalysis 内の isLiveAtExit

liveOut

public BiList liveOut(BasicBlk blk)
Return the list of live variables at exit of basic block blk.

定義:
インタフェース LiveVariableAnalysis 内の liveOut

liveIn

public BiList liveIn(BasicBlk blk)
Return the list of live variables at entry of basic block blk.

定義:
インタフェース LiveVariableAnalysis 内の liveIn

liveInSet

public NumberSet liveInSet(BasicBlk blk)
Return set of live variable numbers at entry of basic block.

定義:
インタフェース LiveVariableAnalysis 内の liveInSet

liveOutSet

public NumberSet liveOutSet(BasicBlk blk)
Return set of live variable numbers at exit of basic block.

定義:
インタフェース LiveVariableAnalysis 内の liveOutSet

getLiveOutSet

public void getLiveOutSet(NumberSet x,
                          BasicBlk blk)
Copy set of live variable numbers at exit of block blk to NumberSet x.

定義:
インタフェース LiveVariableAnalysis 内の getLiveOutSet

addLiveOutSet

public void addLiveOutSet(NumberSet x,
                          BasicBlk blk)
Add set of live variable numbers at exit of block blk to NumberSet x.

定義:
インタフェース LiveVariableAnalysis 内の addLiveOutSet

getLiveInSet

public void getLiveInSet(NumberSet x,
                         BasicBlk blk)
Copy set of live variable numbers at entry to NumberSet x.

定義:
インタフェース LiveVariableAnalysis 内の getLiveInSet

addLiveInSet

public void addLiveInSet(NumberSet x,
                         BasicBlk blk)
Add set of live variable numbers at entry to NumberSet x.

定義:
インタフェース LiveVariableAnalysis 内の addLiveInSet

isUpToDate

public boolean isUpToDate()
Return true if this analysis is up to date.

定義:
インタフェース LocalAnalysis 内の isUpToDate

printBeforeFunction

public void printBeforeFunction(java.io.PrintWriter output)
Debug print entries required by interface.

定義:
インタフェース LocalAnalysis 内の printBeforeFunction

printBeforeBlock

public void printBeforeBlock(BasicBlk blk,
                             java.io.PrintWriter output)
インタフェース LocalAnalysis の記述:
Called before each Basic Block.

定義:
インタフェース LocalAnalysis 内の printBeforeBlock

printAfterBlock

public void printAfterBlock(BasicBlk blk,
                            java.io.PrintWriter output)
インタフェース LocalAnalysis の記述:
Called after each Basic Block.

定義:
インタフェース LocalAnalysis 内の printAfterBlock

printBeforeStmt

public void printBeforeStmt(LirNode stmt,
                            java.io.PrintWriter output)
インタフェース LocalAnalysis の記述:
Called before each statement.

定義:
インタフェース LocalAnalysis 内の printBeforeStmt

printAfterStmt

public void printAfterStmt(LirNode stmt,
                           java.io.PrintWriter output)
インタフェース LocalAnalysis の記述:
Called after each statement.

定義:
インタフェース LocalAnalysis 内の printAfterStmt

printAfterFunction

public void printAfterFunction(java.io.PrintWriter output)
インタフェース LocalAnalysis の記述:
Called after function body.

定義:
インタフェース LocalAnalysis 内の printAfterFunction