coins.opt
Class ConstPropagationAndFoldingHir

java.lang.Object
  extended bycoins.opt.ConstPropagationAndFolding
      extended bycoins.opt.ConstPropagationAndFoldingHir

public class ConstPropagationAndFoldingHir
extends ConstPropagationAndFolding

This class performs constant propagation and folding operations that are specific to HIR.


Field Summary
protected  SubpFlowImpl fSubpFlowImpl
           
 HIR hir
           
 
Fields inherited from class coins.opt.ConstPropagationAndFolding
fDataFlow, fDbgLevel, flowRoot, fResults, fSubpFlow, fUDList, JAVA_BYTE_SIZE, JAVA_CHAR_SIZE, JAVA_INT_SIZE, JAVA_LONG_SIZE, JAVA_SHORT_SIZE, opt, sym, symRoot
 
Constructor Summary
ConstPropagationAndFoldingHir(FlowResults pResults)
           
 
Method Summary
(package private)  boolean addressUsed(IR pIR)
           
(package private)  IR checkRHSAndRegister(SetRefRepr pSetRefRepr, java.util.Map pDefs)
           
(package private)  java.lang.Object constRHS(IR pDefNode)
           
(package private)  IR createConstNodeFromConst(java.lang.Object pConst)
           
(package private)  IR foldBinary(IR pParent, IR pChild, IR pChild0)
           
 
Methods inherited from class coins.opt.ConstPropagationAndFolding
doBBlock, doSubp, SkipConv
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

hir

public final HIR hir

fSubpFlowImpl

protected SubpFlowImpl fSubpFlowImpl
Constructor Detail

ConstPropagationAndFoldingHir

public ConstPropagationAndFoldingHir(FlowResults pResults)
Method Detail

checkRHSAndRegister

IR checkRHSAndRegister(SetRefRepr pSetRefRepr,
                       java.util.Map pDefs)

constRHS

java.lang.Object constRHS(IR pDefNode)

createConstNodeFromConst

IR createConstNodeFromConst(java.lang.Object pConst)

addressUsed

boolean addressUsed(IR pIR)

foldBinary

IR foldBinary(IR pParent,
              IR pChild,
              IR pChild0)