coins.backend.ana
クラス ScanVarReference

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

public class ScanVarReference
extends java.lang.Object
implements LocalAnalysis

Scan program and collect register variable use/def statistics.


フィールドの概要
static coins.backend.ana.ScanVarReference.Analyzer analyzer
          Factory singleton.
 BiList[] defSites
          defSites[v]: List of basic blocks which has definitions of v
 BiList[] outUseSites
          outUseSites[v]: List of basic blocks variables used after
 BasicBlk[] phiDefSite
          phiDefSite[v]: Basic block of PHI-definition point of v.
 BiList[] useSites
          useSites[v]: List of basic blocks which has upward exposed uses of v
 
メソッドの概要
 boolean isUpToDate()
          Return true if this analysis is up to date.
 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.ScanVarReference.Analyzer analyzer
Factory singleton.


defSites

public final BiList[] defSites
defSites[v]: List of basic blocks which has definitions of v


useSites

public final BiList[] useSites
useSites[v]: List of basic blocks which has upward exposed uses of v


outUseSites

public final BiList[] outUseSites
outUseSites[v]: List of basic blocks variables used after


phiDefSite

public final BasicBlk[] phiDefSite
phiDefSite[v]: Basic block of PHI-definition point of v.

メソッドの詳細

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