scale.backend.trips2
Class TripsLoopICEstimator

java.lang.Object
  extended by scale.backend.ICEstimator
      extended by scale.backend.trips2.TripsLoopICEstimator
All Implemented Interfaces:
Predicate

public class TripsLoopICEstimator
extends ICEstimator

This class estimates instruction counts for TRIPS loops.

$Id: TripsLoopICEstimator.java,v 1.6 2007-03-21 13:31:48 burrill Exp $

Copyright 2007 by the Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.


Field Summary
 
Fields inherited from class scale.backend.ICEstimator
estimate, machine
 
Constructor Summary
TripsLoopICEstimator()
          This class is used to estimate TRIPS loop instruction counts from the Scribble CFG.
 
Method Summary
 void visitAbsoluteValueExpr(AbsoluteValueExpr e)
           
 void visitAdditionExpr(AdditionExpr e)
           
 void visitAndExpr(AndExpr e)
           
 void visitArrayIndexExpr(ArrayIndexExpr e)
           
 void visitBeginChord(BeginChord c)
           
 void visitBitAndExpr(BitAndExpr e)
           
 void visitBitComplementExpr(BitComplementExpr e)
           
 void visitBitOrExpr(BitOrExpr e)
           
 void visitBitShiftExpr(BitShiftExpr e)
           
 void visitBitXorExpr(BitXorExpr e)
           
 void visitCallFunctionExpr(CallFunctionExpr e)
           
 void visitCallMethodExpr(CallMethodExpr e)
           
 void visitCompareExpr(CompareExpr e)
           
 void visitComplexValueExpr(ComplexValueExpr e)
           
 void visitConditionalExpr(ConditionalExpr e)
           
 void visitConversionExpr(ConversionExpr e)
           
 void visitDivisionExpr(DivisionExpr e)
           
 void visitDualExpr(DualExpr e)
           
 void visitEndChord(EndChord c)
           
 void visitEqualityExpr(EqualityExpr e)
           
 void visitExitChord(ExitChord c)
           
 void visitExponentiationExpr(ExponentiationExpr e)
           
 void visitExprChord(ExprChord c)
           
 void visitGotoChord(GotoChord c)
           
 void visitGreaterEqualExpr(GreaterEqualExpr e)
           
 void visitGreaterExpr(GreaterExpr e)
           
 void visitIfThenElseChord(IfThenElseChord c)
           
 void visitLeaveChord(LeaveChord c)
           
 void visitLessEqualExpr(LessEqualExpr e)
           
 void visitLessExpr(LessExpr e)
           
 void visitLiteralExpr(LiteralExpr e)
           
 void visitLoadDeclAddressExpr(LoadDeclAddressExpr e)
           
 void visitLoadDeclValueExpr(LoadDeclValueExpr e)
           
 void visitLoadFieldAddressExpr(LoadFieldAddressExpr e)
           
 void visitLoadFieldValueExpr(LoadFieldValueExpr e)
           
 void visitLoadValueIndirectExpr(LoadValueIndirectExpr e)
           
 void visitLoopExitChord(LoopExitChord c)
           
 void visitLoopHeaderChord(LoopHeaderChord c)
           
 void visitLoopInitChord(LoopInitChord c)
           
 void visitLoopPreHeaderChord(LoopPreHeaderChord c)
           
 void visitLoopTailChord(LoopTailChord c)
           
 void visitMultiplicationExpr(MultiplicationExpr e)
           
 void visitNegativeExpr(NegativeExpr e)
           
 void visitNilExpr(NilExpr e)
           
 void visitNotEqualExpr(NotEqualExpr e)
           
 void visitNotExpr(NotExpr e)
           
 void visitNullChord(NullChord c)
           
 void visitOrExpr(OrExpr e)
           
 void visitPhiExpr(PhiExpr e)
           
 void visitPhiExprChord(PhiExprChord c)
           
 void visitRemainderExpr(RemainderExpr e)
           
 void visitReturnChord(ReturnChord c)
           
 void visitSubtractionExpr(SubtractionExpr e)
           
 void visitSwitchChord(SwitchChord c)
           
 void visitTranscendental2Expr(Transcendental2Expr e)
           
 void visitTranscendentalExpr(TranscendentalExpr e)
           
 void visitVaArgExpr(VaArgExpr e)
           
 void visitVaEndExpr(VaEndExpr e)
           
 void visitVaStartExpr(VaStartExpr e)
           
protected  void whatIsThis(Note n)
          Generate an error.
 
Methods inherited from class scale.backend.ICEstimator
estimate, getEstimate, getEstimateAndReset, getMachine, resetEstimate, setEstimate, visitAllocateExpr, visitBinaryExpr, visitBranchChord, visitCallExpr, visitChord, visitDecisionChord, visitExpr, visitExprPhiExpr, visitLoadExpr, visitMarkerChord, visitMaxExpr, visitMinExpr, visitNaryExpr, visitNote, visitSequentialChord, visitSubscriptExpr, visitTernaryExpr, visitUnaryExpr, visitValueExpr, visitVarArgExpr, visitVectorExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TripsLoopICEstimator

public TripsLoopICEstimator()
This class is used to estimate TRIPS loop instruction counts from the Scribble CFG.

Method Detail

whatIsThis

protected void whatIsThis(Note n)
Description copied from class: ICEstimator
Generate an error.

Overrides:
whatIsThis in class ICEstimator

visitLoadDeclAddressExpr

public void visitLoadDeclAddressExpr(LoadDeclAddressExpr e)
Specified by:
visitLoadDeclAddressExpr in interface Predicate
Overrides:
visitLoadDeclAddressExpr in class ICEstimator

visitLoadValueIndirectExpr

public void visitLoadValueIndirectExpr(LoadValueIndirectExpr e)
Specified by:
visitLoadValueIndirectExpr in interface Predicate
Overrides:
visitLoadValueIndirectExpr in class ICEstimator

visitLoadDeclValueExpr

public void visitLoadDeclValueExpr(LoadDeclValueExpr e)
Specified by:
visitLoadDeclValueExpr in interface Predicate
Overrides:
visitLoadDeclValueExpr in class ICEstimator

visitLoadFieldAddressExpr

public void visitLoadFieldAddressExpr(LoadFieldAddressExpr e)
Specified by:
visitLoadFieldAddressExpr in interface Predicate
Overrides:
visitLoadFieldAddressExpr in class ICEstimator

visitLoadFieldValueExpr

public void visitLoadFieldValueExpr(LoadFieldValueExpr e)
Specified by:
visitLoadFieldValueExpr in interface Predicate
Overrides:
visitLoadFieldValueExpr in class ICEstimator

visitArrayIndexExpr

public void visitArrayIndexExpr(ArrayIndexExpr e)
Specified by:
visitArrayIndexExpr in interface Predicate
Overrides:
visitArrayIndexExpr in class ICEstimator

visitBeginChord

public void visitBeginChord(BeginChord c)
Specified by:
visitBeginChord in interface Predicate
Overrides:
visitBeginChord in class ICEstimator

visitEndChord

public void visitEndChord(EndChord c)
Specified by:
visitEndChord in interface Predicate
Overrides:
visitEndChord in class ICEstimator

visitExitChord

public void visitExitChord(ExitChord c)
Specified by:
visitExitChord in interface Predicate
Overrides:
visitExitChord in class ICEstimator

visitReturnChord

public void visitReturnChord(ReturnChord c)
Specified by:
visitReturnChord in interface Predicate
Overrides:
visitReturnChord in class ICEstimator

visitSwitchChord

public void visitSwitchChord(SwitchChord c)
Specified by:
visitSwitchChord in interface Predicate
Overrides:
visitSwitchChord in class ICEstimator

visitExprChord

public void visitExprChord(ExprChord c)
Specified by:
visitExprChord in interface Predicate
Overrides:
visitExprChord in class ICEstimator

visitIfThenElseChord

public void visitIfThenElseChord(IfThenElseChord c)
Specified by:
visitIfThenElseChord in interface Predicate
Overrides:
visitIfThenElseChord in class ICEstimator

visitAbsoluteValueExpr

public void visitAbsoluteValueExpr(AbsoluteValueExpr e)
Specified by:
visitAbsoluteValueExpr in interface Predicate
Overrides:
visitAbsoluteValueExpr in class ICEstimator

visitAdditionExpr

public void visitAdditionExpr(AdditionExpr e)
Specified by:
visitAdditionExpr in interface Predicate
Overrides:
visitAdditionExpr in class ICEstimator

visitAndExpr

public void visitAndExpr(AndExpr e)
Specified by:
visitAndExpr in interface Predicate
Overrides:
visitAndExpr in class ICEstimator

visitBitAndExpr

public void visitBitAndExpr(BitAndExpr e)
Specified by:
visitBitAndExpr in interface Predicate
Overrides:
visitBitAndExpr in class ICEstimator

visitBitComplementExpr

public void visitBitComplementExpr(BitComplementExpr e)
Specified by:
visitBitComplementExpr in interface Predicate
Overrides:
visitBitComplementExpr in class ICEstimator

visitBitOrExpr

public void visitBitOrExpr(BitOrExpr e)
Specified by:
visitBitOrExpr in interface Predicate
Overrides:
visitBitOrExpr in class ICEstimator

visitBitXorExpr

public void visitBitXorExpr(BitXorExpr e)
Specified by:
visitBitXorExpr in interface Predicate
Overrides:
visitBitXorExpr in class ICEstimator

visitOrExpr

public void visitOrExpr(OrExpr e)
Specified by:
visitOrExpr in interface Predicate
Overrides:
visitOrExpr in class ICEstimator

visitCompareExpr

public void visitCompareExpr(CompareExpr e)
Specified by:
visitCompareExpr in interface Predicate
Overrides:
visitCompareExpr in class ICEstimator

visitDivisionExpr

public void visitDivisionExpr(DivisionExpr e)
Specified by:
visitDivisionExpr in interface Predicate
Overrides:
visitDivisionExpr in class ICEstimator

visitMultiplicationExpr

public void visitMultiplicationExpr(MultiplicationExpr e)
Specified by:
visitMultiplicationExpr in interface Predicate
Overrides:
visitMultiplicationExpr in class ICEstimator

visitRemainderExpr

public void visitRemainderExpr(RemainderExpr e)
Specified by:
visitRemainderExpr in interface Predicate
Overrides:
visitRemainderExpr in class ICEstimator

visitNegativeExpr

public void visitNegativeExpr(NegativeExpr e)
Specified by:
visitNegativeExpr in interface Predicate
Overrides:
visitNegativeExpr in class ICEstimator

visitNotExpr

public void visitNotExpr(NotExpr e)
Specified by:
visitNotExpr in interface Predicate
Overrides:
visitNotExpr in class ICEstimator

visitExponentiationExpr

public void visitExponentiationExpr(ExponentiationExpr e)
Specified by:
visitExponentiationExpr in interface Predicate
Overrides:
visitExponentiationExpr in class ICEstimator

visitTranscendentalExpr

public void visitTranscendentalExpr(TranscendentalExpr e)
Specified by:
visitTranscendentalExpr in interface Predicate
Overrides:
visitTranscendentalExpr in class ICEstimator

visitTranscendental2Expr

public void visitTranscendental2Expr(Transcendental2Expr e)
Specified by:
visitTranscendental2Expr in interface Predicate
Overrides:
visitTranscendental2Expr in class ICEstimator

visitSubtractionExpr

public void visitSubtractionExpr(SubtractionExpr e)
Specified by:
visitSubtractionExpr in interface Predicate
Overrides:
visitSubtractionExpr in class ICEstimator

visitBitShiftExpr

public void visitBitShiftExpr(BitShiftExpr e)
Specified by:
visitBitShiftExpr in interface Predicate
Overrides:
visitBitShiftExpr in class ICEstimator

visitCallMethodExpr

public void visitCallMethodExpr(CallMethodExpr e)
Specified by:
visitCallMethodExpr in interface Predicate
Overrides:
visitCallMethodExpr in class ICEstimator

visitCallFunctionExpr

public void visitCallFunctionExpr(CallFunctionExpr e)
Specified by:
visitCallFunctionExpr in interface Predicate
Overrides:
visitCallFunctionExpr in class ICEstimator

visitComplexValueExpr

public void visitComplexValueExpr(ComplexValueExpr e)
Specified by:
visitComplexValueExpr in interface Predicate
Overrides:
visitComplexValueExpr in class ICEstimator

visitConversionExpr

public void visitConversionExpr(ConversionExpr e)
Specified by:
visitConversionExpr in interface Predicate
Overrides:
visitConversionExpr in class ICEstimator

visitDualExpr

public void visitDualExpr(DualExpr e)
Specified by:
visitDualExpr in interface Predicate
Overrides:
visitDualExpr in class ICEstimator

visitEqualityExpr

public void visitEqualityExpr(EqualityExpr e)
Specified by:
visitEqualityExpr in interface Predicate
Overrides:
visitEqualityExpr in class ICEstimator

visitGreaterEqualExpr

public void visitGreaterEqualExpr(GreaterEqualExpr e)
Specified by:
visitGreaterEqualExpr in interface Predicate
Overrides:
visitGreaterEqualExpr in class ICEstimator

visitGreaterExpr

public void visitGreaterExpr(GreaterExpr e)
Specified by:
visitGreaterExpr in interface Predicate
Overrides:
visitGreaterExpr in class ICEstimator

visitLessEqualExpr

public void visitLessEqualExpr(LessEqualExpr e)
Specified by:
visitLessEqualExpr in interface Predicate
Overrides:
visitLessEqualExpr in class ICEstimator

visitLessExpr

public void visitLessExpr(LessExpr e)
Specified by:
visitLessExpr in interface Predicate
Overrides:
visitLessExpr in class ICEstimator

visitNotEqualExpr

public void visitNotEqualExpr(NotEqualExpr e)
Specified by:
visitNotEqualExpr in interface Predicate
Overrides:
visitNotEqualExpr in class ICEstimator

visitLeaveChord

public void visitLeaveChord(LeaveChord c)
Overrides:
visitLeaveChord in class ICEstimator

visitLiteralExpr

public void visitLiteralExpr(LiteralExpr e)
Specified by:
visitLiteralExpr in interface Predicate
Overrides:
visitLiteralExpr in class ICEstimator

visitNilExpr

public void visitNilExpr(NilExpr e)
Specified by:
visitNilExpr in interface Predicate
Overrides:
visitNilExpr in class ICEstimator

visitVaStartExpr

public void visitVaStartExpr(VaStartExpr e)
Specified by:
visitVaStartExpr in interface Predicate
Overrides:
visitVaStartExpr in class ICEstimator

visitVaArgExpr

public void visitVaArgExpr(VaArgExpr e)
Specified by:
visitVaArgExpr in interface Predicate
Overrides:
visitVaArgExpr in class ICEstimator

visitGotoChord

public void visitGotoChord(GotoChord c)
Specified by:
visitGotoChord in interface Predicate
Overrides:
visitGotoChord in class ICEstimator

visitLoopExitChord

public void visitLoopExitChord(LoopExitChord c)
Specified by:
visitLoopExitChord in interface Predicate
Overrides:
visitLoopExitChord in class ICEstimator

visitLoopHeaderChord

public void visitLoopHeaderChord(LoopHeaderChord c)
Specified by:
visitLoopHeaderChord in interface Predicate
Overrides:
visitLoopHeaderChord in class ICEstimator

visitLoopPreHeaderChord

public void visitLoopPreHeaderChord(LoopPreHeaderChord c)
Specified by:
visitLoopPreHeaderChord in interface Predicate
Overrides:
visitLoopPreHeaderChord in class ICEstimator

visitLoopTailChord

public void visitLoopTailChord(LoopTailChord c)
Specified by:
visitLoopTailChord in interface Predicate
Overrides:
visitLoopTailChord in class ICEstimator

visitLoopInitChord

public void visitLoopInitChord(LoopInitChord c)
Specified by:
visitLoopInitChord in interface Predicate
Overrides:
visitLoopInitChord in class ICEstimator

visitNullChord

public void visitNullChord(NullChord c)
Specified by:
visitNullChord in interface Predicate
Overrides:
visitNullChord in class ICEstimator

visitPhiExpr

public void visitPhiExpr(PhiExpr e)
Specified by:
visitPhiExpr in interface Predicate
Overrides:
visitPhiExpr in class ICEstimator

visitPhiExprChord

public void visitPhiExprChord(PhiExprChord c)
Specified by:
visitPhiExprChord in interface Predicate
Overrides:
visitPhiExprChord in class ICEstimator

visitVaEndExpr

public void visitVaEndExpr(VaEndExpr e)
Specified by:
visitVaEndExpr in interface Predicate
Overrides:
visitVaEndExpr in class ICEstimator

visitConditionalExpr

public void visitConditionalExpr(ConditionalExpr e)
Specified by:
visitConditionalExpr in interface Predicate
Overrides:
visitConditionalExpr in class ICEstimator