coins.ssa
クラス MemoryAliasAnalyze

java.lang.Object
  |
  +--coins.ssa.MemoryAliasAnalyze

class MemoryAliasAnalyze
extends java.lang.Object

Analyze the aliases of memory object.
The SSA module have a preliminary alias analysis. This alias analyze regard the whole memory place as a single object. Therefore, any stores to the memory make it dirty. The SSA module translate the single memory object to SSA form. The way to translate is the same as for abstract registers. But the phi functions are not inserted. On the marge point of the control flow, the compiler make a new name for the single memory object.


フィールドの概要
 boolean[] offset
          Number of the count about assignment to the memory object
static int THR
          The threshold of the debug print
 
コンストラクタの概要
(パッケージプライベート) MemoryAliasAnalyze(SsaEnvironment e, Function function)
          Constructor
 
メソッドの概要
(パッケージプライベート)  void annul()
          Annuling the information about the alias analysis from all the memory object.
(パッケージプライベート)  long blkRank(BasicBlk blk)
          Return the rank of the specified basic block.
(パッケージプライベート)  long callThreshold(LirNode call)
          Return the threshold of the CALL node.
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

THR

public static final int THR
The threshold of the debug print

関連項目:
定数フィールド値

offset

public boolean[] offset
Number of the count about assignment to the memory object

コンストラクタの詳細

MemoryAliasAnalyze

MemoryAliasAnalyze(SsaEnvironment e,
                   Function function)
Constructor

パラメータ:
e - The environment of the SSA module
function - The current function
メソッドの詳細

blkRank

long blkRank(BasicBlk blk)
Return the rank of the specified basic block.

パラメータ:
blk - The specified basic block
戻り値:
The rank of the specified basic block

callThreshold

long callThreshold(LirNode call)
Return the threshold of the CALL node. The threshold is to check whether the CALL node can be put into the list of LIR nodes.

パラメータ:
call - The current CALL node
戻り値:
The threshold of the CALL node

annul

void annul()
Annuling the information about the alias analysis from all the memory object. This method MUST be called after optmizing useing the information about the alias analysis.