Serialized Form


Package scale.alias.steensgaard

Class scale.alias.steensgaard.ECR implements Serializable

Serialized Fields

type

AliasType type
The (non-standard) inference type of the variable. The type of an ECR is actually the type of the reprsentative element. If this ECR is merged and is no longer the representative, then the type field is invalid.

pending

HashSet pending
A list of 'pending' joins for this ECR. We make conditional joins, if the type for this variable is BOTTOM. Then, if the type for this variable changes, we need to update the types of all the ECRs on the pending list.

id

int id
A unique identifier for the ECR.

color

int color
the color of the ECR in the current visit

var

TypeVar var
The (original) alias variable that this ECR represents.


Package scale.annot

Class scale.annot.Annotation implements Serializable

Serialized Fields

support

Support support
The type and level of support for this instance of annotation.

creator

Creator creator
The creator for this instance of this annotation.

id

int id
The node id.

Class scale.annot.Creator implements Serializable

Serialized Fields

name

java.lang.String name
The name of the creator of the annotation.

Class scale.annot.CreatorSource implements Serializable

Class scale.annot.Support implements Serializable

Serialized Fields

user

int user
The user belief.

system

int system
The system belief.

rule

int rule
The rule specifying how to combine user and system beliefs.


Package scale.callGraph

Class scale.callGraph.CallNode implements Serializable

Serialized Fields

p

RoutineDecl p
Decl of the routine.

callees

Vector callees
all routines called by this routine.

callers

HashSet callers
all routines calling this routine.

calleeCandidates

Vector calleeCandidates
keep track of all function pointers in the body of this routine.

scribble

Scribble scribble
Scribble graph generated for this call node.

Class scale.callGraph.Suite implements Serializable

Serialized Fields

callGraphs

HashMap callGraphs
Map (file) names to call graphs.

rootRoutine

CallGraph rootRoutine
The main procedure if one is found..

decls

HashMap decls
Map from name to set of (Declaration, CallGraph) tuples.


Package scale.clef

Class scale.clef.Clef implements Serializable

Serialized Fields

root

Node root
Root of Clef Tree.

symtab

Symtab symtab
Symbol table.

sourceLang

SourceLanguage sourceLang
source language.

isSubtree

boolean isSubtree
Is this a subtree of a compiltation unit.

Class scale.clef.CommutableArgAnnotation implements Serializable

Serialized Fields

set1

int[] set1
Vector of argument indecies that must be swapped together..

set2

int[] set2
Vector of argument indecies that must be swapped together..

Class scale.clef.InvalidClefTreeError implements Serializable

Class scale.clef.InvalidClefTreeException implements Serializable

Class scale.clef.MangledName implements Serializable

Serialized Fields

mangledName

java.lang.String mangledName
The mangled name.

Class scale.clef.Node implements Serializable

Class scale.clef.NotConstantException implements Serializable

Class scale.clef.PureFunctionAnnotation implements Serializable

Serialized Fields

level

byte level
Level of "pure function"..

Class scale.clef.SourceLine implements Serializable

Serialized Fields

sourceLine

int sourceLine
The line number of the source line.

column

int column
The column number in the source line.

fileName

java.lang.String fileName
The file name for this source line.

Class scale.clef.TempVariable implements Serializable

Serialized Fields

decl

Declaration decl
The variable associated with the temporary variable.


Package scale.clef.decl

Class scale.clef.decl.AltReturnFormal implements Serializable

Class scale.clef.decl.CaseLabelDecl implements Serializable

Serialized Fields

value

Expression value
Should evaluate to a constant - may be null.

Class scale.clef.decl.ConstantDecl implements Serializable

Class scale.clef.decl.ConstructorDecl implements Serializable

Serialized Fields

initializer

Vector initializer
A Vector of initializers.

Class scale.clef.decl.Declaration implements Serializable

Serialized Fields

name

java.lang.String name
Name of the declaration.

type

Type type
Type of the declaration.

scope

SymtabScope scope
The scope in which the declaration was declared.

parent

Node parent
My parent in the Clef tree.

visibility

byte visibility
Visibility of the declaration.

tag

int tag
An integer value associated with the declaration that various algorithms may use.

Class scale.clef.decl.DeclTable implements Serializable

Serialized Fields

map

scale.clef.decl.DeclTable.Entry[] map
The array of lists indexed by the hash code.

number

int number
The number of entries in the map..

Class scale.clef.decl.DestructorDecl implements Serializable

Class scale.clef.decl.EnumElementDecl implements Serializable

Class scale.clef.decl.EquivalenceDecl implements Serializable

Serialized Fields

base

VariableDecl base
VariableDecl of the base variable that this variable is equivalenced to.

offset

long offset
Offset of this variable in bytes into the base variable.

Class scale.clef.decl.ExceptionDecl implements Serializable

Class scale.clef.decl.FieldDecl implements Serializable

Serialized Fields

myStruct

AggregateType myStruct
The aggregate structure (record or class) to which I belong.

accessibility

byte accessibility
The accessibility of the field.

bits

byte bits
The number of bits specified for the field - 0 means none specified.

Class scale.clef.decl.FileDecl implements Serializable

Serialized Fields

decls

Vector decls
A Vector of the declarations in this file.

Class scale.clef.decl.FormalDecl implements Serializable

Serialized Fields

passByMode

int passByMode
The parameter passing mode.

Class scale.clef.decl.ForwardProcedureDecl implements Serializable

Class scale.clef.decl.FriendDecl implements Serializable

Class scale.clef.decl.Initializer implements Serializable

Serialized Fields

initializedEntity

Declaration initializedEntity
What is initialized.

argList

Vector argList
A Vector of the initializer expressions.

parent

Declaration parent
My parent in the Clef tree.

Class scale.clef.decl.LabelDecl implements Serializable

Class scale.clef.decl.MethodDecl implements Serializable

Serialized Fields

myClass

ClassType myClass
The method's class.

accessibility

byte accessibility
The accessibility of the class.

isAbstract

boolean isAbstract
Is it abstract?

isVirtual

boolean isVirtual
Is it virtual?

Class scale.clef.decl.MethodReferenceDecl implements Serializable

Serialized Fields

proc

RoutineDecl proc
The routine referenced.

Class scale.clef.decl.ProcedureDecl implements Serializable

Serialized Fields

level

int level
The nesting level.

parentRoutine

RoutineDecl parentRoutine
If level > 0, the parent routine.

Class scale.clef.decl.RenamedVariableDecl implements Serializable

Serialized Fields

original

VariableDecl original
The variable that this variable is based upon..

Class scale.clef.decl.RoutineDecl implements Serializable

Serialized Fields

body

Statement body
The body of the routine.

isSpecification

boolean isSpecification
True if this routine does not have a body.

isRef

boolean isRef
True if this routine has a body or is referenced in the Clef AST.

isMain

boolean isMain
True if this is the program's main procedure.

usesVaStart

boolean usesVaStart
True if this routine uses va_start.

ftnResultVar

VariableDecl ftnResultVar
The declared result variable for a function (if any).

Class scale.clef.decl.TypeConversionDecl implements Serializable

Class scale.clef.decl.TypeDecl implements Serializable

Class scale.clef.decl.TypeName implements Serializable

Class scale.clef.decl.UnknownFormals implements Serializable

Class scale.clef.decl.ValueDecl implements Serializable

Serialized Fields

value

Expression value
The value of the declaration.

Class scale.clef.decl.VariableDecl implements Serializable

Serialized Fields

alignment

int alignment
Alignment required for this variable - 0 means none required.

residency

byte residency
Where should this variable be assigned.

isRef

boolean isRef
True if this variable is referenced in the Clef AST.

isTemp

boolean isTemp
True if this variable is a temporary variable.

isFtnResultVar

boolean isFtnResultVar
True if this variable is declared as the result variable for a function.

addressNeeded

boolean addressNeeded
True if the address of this Declaration is used.


Package scale.clef.expr

Class scale.clef.expr.AbsoluteValueOp implements Serializable

Class scale.clef.expr.AdditionAssignmentOp implements Serializable

Class scale.clef.expr.AdditionOp implements Serializable

Class scale.clef.expr.AddressLiteral implements Serializable

Serialized Fields

decl

Declaration decl
The declaration associated with the AddressLiteral.

offset

int offset
The offset from the begiining of the declaration.

Class scale.clef.expr.AddressOp implements Serializable

Serialized Fields

expr

Expression expr
The expression.

Class scale.clef.expr.AggregateOp implements Serializable

Serialized Fields

expr1

Expression expr1
The structure expression.

expr2

Expression expr2
The field expression.

Class scale.clef.expr.AggregationElementOp implements Serializable

Serialized Fields

value

Literal value
The value of the element..

parent

Node parent
Should be a literal.

Class scale.clef.expr.AggregationElements implements Serializable

Serialized Fields

elements

Vector elements
A Vector of values.

Class scale.clef.expr.AllocateOp implements Serializable

Serialized Fields

alloctype

Type alloctype
The object to allocate, not the expression type.

initializer

Expression initializer
The initializer.

malloc

RoutineDecl malloc
the allocation routine

Class scale.clef.expr.AllocateOpenArray implements Serializable

Serialized Fields

alloctype

Type alloctype
The object type, not the return type.

indices

Vector indices
A Vector of indecies.

Class scale.clef.expr.AllocatePlacementOp implements Serializable

Serialized Fields

alloctype

Type alloctype
The object to be allocated, not the result type.

expr

Expression expr
The expression.

placement

Expression placement
The placement expression.

Class scale.clef.expr.AllocateSettingFieldsOp implements Serializable

Serialized Fields

alloctype

Type alloctype
The object to allocate, not the result type.

argList

Vector argList
A Vector of arguments.

Class scale.clef.expr.AndConditionalOp implements Serializable

Class scale.clef.expr.AndOp implements Serializable

Class scale.clef.expr.Argument implements Serializable

Serialized Fields

expr

Expression expr
The argument.

Class scale.clef.expr.ArithmeticOp implements Serializable

Serialized Fields

expr

Expression expr
The argument.

Class scale.clef.expr.ArrayEqualityOp implements Serializable

Class scale.clef.expr.ArrayGreaterEqualOp implements Serializable

Class scale.clef.expr.ArrayGreaterOp implements Serializable

Class scale.clef.expr.ArrayInequalityOp implements Serializable

Class scale.clef.expr.ArrayLessEqualOp implements Serializable

Class scale.clef.expr.ArrayLessOp implements Serializable

Class scale.clef.expr.ArrayOp implements Serializable

Class scale.clef.expr.ArrayRelOp implements Serializable

Serialized Fields

expr1

Expression expr1
The left argument.

expr2

Expression expr2
The right argument.

Class scale.clef.expr.AssignComponentsOp implements Serializable

Class scale.clef.expr.AssignFixedStringOp implements Serializable

Serialized Fields

isTerminated

boolean isTerminated
The length function.

padding

Expression padding
The padding.

Class scale.clef.expr.AssignmentOp implements Serializable

Serialized Fields

lhs

Expression lhs
the target.

rhs

Expression rhs
the source.

Class scale.clef.expr.AssignSimpleOp implements Serializable

Class scale.clef.expr.BitAndAssignmentOp implements Serializable

Class scale.clef.expr.BitAndOp implements Serializable

Serialized Fields

expr2

Expression expr2
The right argument.

Class scale.clef.expr.BitComplementOp implements Serializable

Class scale.clef.expr.BitOrAssignmentOp implements Serializable

Class scale.clef.expr.BitOrOp implements Serializable

Serialized Fields

expr2

Expression expr2
The right argument.

Class scale.clef.expr.BitShiftAssignmentOp implements Serializable

Serialized Fields

mode

int mode
The type of the shift.

Class scale.clef.expr.BitShiftOp implements Serializable

Serialized Fields

expr2

Expression expr2
The right argument.

mode

int mode
The type of the shift.

Class scale.clef.expr.BitwiseOp implements Serializable

Serialized Fields

expr

Expression expr
The expression.

Class scale.clef.expr.BitXorAssignmentOp implements Serializable

Class scale.clef.expr.BitXorOp implements Serializable

Serialized Fields

expr2

Expression expr2
The right argument.

Class scale.clef.expr.BooleanDyadicOp implements Serializable

Serialized Fields

expr1

Expression expr1
The left argument.

expr2

Expression expr2
The right argument.

Class scale.clef.expr.BooleanLiteral implements Serializable

Serialized Fields

value

boolean value
The value.

Class scale.clef.expr.BooleanMonadicOp implements Serializable

Serialized Fields

expr

Expression expr
The expression.

Class scale.clef.expr.BooleanOp implements Serializable

Class scale.clef.expr.CallFunctionOp implements Serializable

Class scale.clef.expr.CallMethodOp implements Serializable

Serialized Fields

object

Expression object
The this object.

Class scale.clef.expr.CallOp implements Serializable

Serialized Fields

argList

Vector argList
List of arguments to the function.

routine

Expression routine
The expression specifying the function (e.g., an IdReferenceOp)..

Class scale.clef.expr.CharLiteral implements Serializable

Serialized Fields

value

char value
The value.

Class scale.clef.expr.CompoundAssignmentOp implements Serializable

Class scale.clef.expr.ConcatenationOp implements Serializable

Serialized Fields

str1

Expression str1
The left argument.

str2

Expression str2
The right argument.

Class scale.clef.expr.DefiniteAgElementOp implements Serializable

Serialized Fields

position

int position
Position of the element in the aggregation.

reps

int reps
The number of times this element is repeated.

Class scale.clef.expr.DeleteArrayOp implements Serializable

Serialized Fields

expr

Expression expr
The expression.

Class scale.clef.expr.DeleteOp implements Serializable

Serialized Fields

expr

Expression expr
The expression.

destructor

Expression destructor
The destructor.

Class scale.clef.expr.DereferenceOp implements Serializable

Serialized Fields

expr

Expression expr
The expression.

Class scale.clef.expr.DivisionAssignmentOp implements Serializable

Class scale.clef.expr.DivisionOp implements Serializable

Class scale.clef.expr.DyadicOp implements Serializable

Serialized Fields

expr2

Expression expr2
The right argument.

Class scale.clef.expr.EqualityOp implements Serializable

Class scale.clef.expr.ExponentiationOp implements Serializable

Class scale.clef.expr.Expression implements Serializable

Serialized Fields

parent

Node parent
Either an expression, statement, or a declaration.

type

Type type
The expression type (e.g., int, etc.).

Class scale.clef.expr.ExpressionIfOp implements Serializable

Serialized Fields

expr1

Expression expr1
The first expression.

expr2

Expression expr2
The second expression.

expr3

Expression expr3
The third expression.

Class scale.clef.expr.FloatArrayLiteral implements Serializable

Serialized Fields

value

double[] value
The array of values.

vcount

int vcount
The count of values.

Class scale.clef.expr.FloatLiteral implements Serializable

Serialized Fields

value

double value
The value.

Class scale.clef.expr.GreaterEqualOp implements Serializable

Class scale.clef.expr.GreaterOp implements Serializable

Class scale.clef.expr.HeapOp implements Serializable

Class scale.clef.expr.IdAddressOp implements Serializable

Class scale.clef.expr.IdReferenceOp implements Serializable

Serialized Fields

decl

Declaration decl
The declaration associated with the IdReferenceOp.

Class scale.clef.expr.IdValueOp implements Serializable

Class scale.clef.expr.IncrementOp implements Serializable

Class scale.clef.expr.IndefiniteAgElementOp implements Serializable

Serialized Fields

position

PositionOp position
The position.

Class scale.clef.expr.IntArrayLiteral implements Serializable

Serialized Fields

value

long[] value
The array of values.

vcount

int vcount
The number of values.

Class scale.clef.expr.IntLiteral implements Serializable

Serialized Fields

value

long value
The value.

Class scale.clef.expr.LessEqualOp implements Serializable

Class scale.clef.expr.LessOp implements Serializable

Class scale.clef.expr.Literal implements Serializable

Class scale.clef.expr.MaximumOp implements Serializable

Class scale.clef.expr.MinimumOp implements Serializable

Class scale.clef.expr.ModulusOp implements Serializable

Class scale.clef.expr.MultiplicationAssignmentOp implements Serializable

Class scale.clef.expr.MultiplicationOp implements Serializable

Class scale.clef.expr.NamedArgumentOp implements Serializable

Serialized Fields

name

java.lang.String name
name

Class scale.clef.expr.NegativeOp implements Serializable

Class scale.clef.expr.NilOp implements Serializable

Class scale.clef.expr.NotEqualOp implements Serializable

Class scale.clef.expr.NotOp implements Serializable

Class scale.clef.expr.NumericOp implements Serializable

Class scale.clef.expr.Operator implements Serializable

Class scale.clef.expr.OrConditionalOp implements Serializable

Class scale.clef.expr.OrderingOp implements Serializable

Class scale.clef.expr.OrOp implements Serializable

Class scale.clef.expr.ParenthesesOp implements Serializable

Serialized Fields

expr

Expression expr
The expression in parens.

Class scale.clef.expr.PointerOp implements Serializable

Class scale.clef.expr.PositionalArgumentOp implements Serializable

Class scale.clef.expr.PositionAnyOp implements Serializable

Serialized Fields

bounds

Vector bounds
bounds

Class scale.clef.expr.PositionOp implements Serializable

Class scale.clef.expr.PositionRangeOp implements Serializable

Class scale.clef.expr.PositionSingleOp implements Serializable

Serialized Fields

expr

Expression expr
The position.

Class scale.clef.expr.PositiveOp implements Serializable

Class scale.clef.expr.PostDecrementOp implements Serializable

Class scale.clef.expr.PostIncrementOp implements Serializable

Class scale.clef.expr.PreDecrementOp implements Serializable

Class scale.clef.expr.PreIncrementOp implements Serializable

Class scale.clef.expr.RelationalOp implements Serializable

Serialized Fields

expr1

Expression expr1
The left argument.

expr2

Expression expr2
The right argument.

Class scale.clef.expr.RemainderAssignmentOp implements Serializable

Class scale.clef.expr.RemainderOp implements Serializable

Class scale.clef.expr.SelectIndirectOp implements Serializable

Class scale.clef.expr.SelectOp implements Serializable

Class scale.clef.expr.SelectRelativeIndirectOp implements Serializable

Class scale.clef.expr.SelectRelativeOp implements Serializable

Class scale.clef.expr.SeriesOp implements Serializable

Serialized Fields

expr1

Expression expr1
The left argument.

expr2

Expression expr2
The right argument.

Class scale.clef.expr.SizeofLiteral implements Serializable

Serialized Fields

value

Type value
Either a type or a variable.

Class scale.clef.expr.StringLiteral implements Serializable

Serialized Fields

value

java.lang.String value
The value of the string literal.

Class scale.clef.expr.SubscriptAddressOp implements Serializable

Class scale.clef.expr.SubscriptOp implements Serializable

Serialized Fields

boundsChecking

boolean boundsChecking
Bounds checking required?

expr

Expression expr
The array.

indices

Vector indices
A Vector of the index expressions.

Class scale.clef.expr.SubscriptValueOp implements Serializable

Class scale.clef.expr.SubtractionAssignmentOp implements Serializable

Class scale.clef.expr.SubtractionOp implements Serializable

Class scale.clef.expr.ThisOp implements Serializable

Class scale.clef.expr.Transcendental2Op implements Serializable

Serialized Fields

ftn

int ftn
ftn is the transcendental function.

Class scale.clef.expr.TranscendentalOp implements Serializable

Serialized Fields

ftn

int ftn
ftn is the transcendental function.

Class scale.clef.expr.TypeConversion2Op implements Serializable

Serialized Fields

expr2

Expression expr2
The second value.

Class scale.clef.expr.TypeConversionOp implements Serializable

Serialized Fields

conversion

int conversion
The name of the language defined conversion routine.

expr

Expression expr
The expression that is converted.

Class scale.clef.expr.VaArgOp implements Serializable

Class scale.clef.expr.VaEndOp implements Serializable

Class scale.clef.expr.VarArgOp implements Serializable

Serialized Fields

vaList

IdReferenceOp vaList
vaList

Class scale.clef.expr.VaStartOp implements Serializable

Serialized Fields

parmN

FormalDecl parmN
The reference parameter of the calling function.


Package scale.clef.stmt

Class scale.clef.stmt.AltCase implements Serializable

Serialized Fields

stmt

Statement stmt
The statement.

keys

Vector keys
A Vector of Keys.

parent

Node parent
Parent node in the Clef tree.

Class scale.clef.stmt.AlternateReturnStmt implements Serializable

Serialized Fields

expr

Expression expr
The return expression.

Class scale.clef.stmt.ArithmeticIfStmt implements Serializable

Serialized Fields

lessLabel

LabelDecl lessLabel
The label of the negative branch statement.

equalLabel

LabelDecl equalLabel
The label of the zero branch statement.

moreLabel

LabelDecl moreLabel
The label of the positive branch statement.

Class scale.clef.stmt.AssignedGotoStmt implements Serializable

Class scale.clef.stmt.AssignLabelStmt implements Serializable

Serialized Fields

label

Declaration label
The label.

value

Declaration value
The value.

Class scale.clef.stmt.BlockStmt implements Serializable

Serialized Fields

stmts

Vector stmts
A Vector of the statements in the block.

scope

SymtabScope scope
The symbol table scope for the block statement.

Class scale.clef.stmt.BranchStmt implements Serializable

Class scale.clef.stmt.BreakStmt implements Serializable

Class scale.clef.stmt.CaseStmt implements Serializable

Serialized Fields

expr

Expression expr
The selection expression.

alts

Vector alts
A Vector of the cases.

Class scale.clef.stmt.CatchAllStmt implements Serializable

Class scale.clef.stmt.CatchExceptionStmt implements Serializable

Serialized Fields

vd

FormalDecl vd
The FormalDecl.

Class scale.clef.stmt.ComputedGotoStmt implements Serializable

Class scale.clef.stmt.ConditionalStmt implements Serializable

Class scale.clef.stmt.ContinueStmt implements Serializable

Class scale.clef.stmt.DeclStmt implements Serializable

Serialized Fields

decl

Declaration decl
The declaration.

Class scale.clef.stmt.DoLoopStmt implements Serializable

Serialized Fields

index

Expression index
The loop index expression..

init

Expression init
The initial loop index value..

term

Expression term
The maximum value of the index..

inc

Expression inc
The increment amount..

outerLoop

DoLoopStmt outerLoop
A pointer to a nested loop. Null if there isn't a nested loop..

loopNest

int loopNest
The loop nest level. Lower values for outer loops..

Class scale.clef.stmt.ElseHandlerStmt implements Serializable

Class scale.clef.stmt.EvalStmt implements Serializable

Serialized Fields

expr

Expression expr
The expression evaluated.

Class scale.clef.stmt.ExceptionHandlerStmt implements Serializable

Serialized Fields

keys

Vector keys
A Vector of keys.

Class scale.clef.stmt.ExceptionHandlerWithArgumentStmt implements Serializable

Serialized Fields

exception

ExceptionDecl exception
The exception.

ident

java.lang.String ident
The name of the exception.

Class scale.clef.stmt.ExceptionKey implements Serializable

Serialized Fields

exception

ExceptionDecl exception
The exception.

parent

Statement parent
The parent statement.

Class scale.clef.stmt.ExceptionStmt implements Serializable

Serialized Fields

stmt

Statement stmt
The statement.

Class scale.clef.stmt.ExitStmt implements Serializable

Serialized Fields

expr

Expression expr
the argument to the exit.

Class scale.clef.stmt.ForLoopStmt implements Serializable

Serialized Fields

exprInit

Expression exprInit
The initialization expression.

exprInc

Expression exprInc
The increment expression.

Class scale.clef.stmt.GotoStmt implements Serializable

Serialized Fields

label

LabelDecl label
The label of the statement to branch to.

Class scale.clef.stmt.IfStmt implements Serializable

Serialized Fields

expr

Expression expr
The expression that determines the branch taken.

Class scale.clef.stmt.IfThenElseStmt implements Serializable

Serialized Fields

thenStmt

Statement thenStmt
The then statement.

elseStmt

Statement elseStmt
The else statement.

Class scale.clef.stmt.JumpStmt implements Serializable

Class scale.clef.stmt.LabelStmt implements Serializable

Serialized Fields

label

LabelDecl label
The statement's label.

stmt

Statement stmt
The labeled statement.

Class scale.clef.stmt.LeaveStmt implements Serializable

Class scale.clef.stmt.LoopStmt implements Serializable

Serialized Fields

stmt

Statement stmt
The statement that is iterated.

Class scale.clef.stmt.MultiBranchStmt implements Serializable

Serialized Fields

expr

Expression expr
The selection expression.

labels

Vector labels
A Vector of statement labels.

Class scale.clef.stmt.NamingStmt implements Serializable

Class scale.clef.stmt.NullStmt implements Serializable

Class scale.clef.stmt.PanicStmt implements Serializable

Serialized Fields

exception

ExceptionDecl exception
The exception thrown.

Class scale.clef.stmt.RaiseStmt implements Serializable

Serialized Fields

expr

Expression expr
The expression.

Class scale.clef.stmt.RepeatUntilLoopStmt implements Serializable

Class scale.clef.stmt.RepeatWhileLoopStmt implements Serializable

Class scale.clef.stmt.ReturnStmt implements Serializable

Serialized Fields

expr

Expression expr
The value to return.

Class scale.clef.stmt.Statement implements Serializable

Serialized Fields

parent

Node parent
My parent in the Clef tree.

Class scale.clef.stmt.StructMultiBranchStmt implements Serializable

Class scale.clef.stmt.SwitchStmt implements Serializable

Serialized Fields

expr

Expression expr
The selection expression

stmt

Statement stmt
The statement.

Class scale.clef.stmt.TestLoopStmt implements Serializable

Serialized Fields

expr

Expression expr
The test expression.

Class scale.clef.stmt.ThrowStmt implements Serializable

Class scale.clef.stmt.TryExceptStmt implements Serializable

Serialized Fields

handlers

Vector handlers
A Vector of handlers.

Class scale.clef.stmt.TryFinallyStmt implements Serializable

Serialized Fields

stmt2

Statement stmt2
The finally statement.

Class scale.clef.stmt.TryStmt implements Serializable

Serialized Fields

catchers

Vector catchers
A Vector of catchers.

Class scale.clef.stmt.TypecaseAlt implements Serializable

Serialized Fields

stmt

Statement stmt
The statement.

keys

Vector keys
A Vector of keys.

parent

Statement parent
The parent statement.

Class scale.clef.stmt.TypecaseKey implements Serializable

Serialized Fields

type

Type type
The type.

variable

VariableDecl variable
The variable.

parent

Statement parent
The parent statement.

Class scale.clef.stmt.TypecaseStmt implements Serializable

Serialized Fields

expr

Expression expr
The selection expression.

alts

Vector alts
A Vector of the alternatives.

Class scale.clef.stmt.WhileLoopStmt implements Serializable

Class scale.clef.stmt.WithAliasStmt implements Serializable

Serialized Fields

ident

java.lang.String ident
The identification.

expr

Expression expr
The expression.

stmt

Statement stmt
The statement.


Package scale.clef.symtab

Class scale.clef.symtab.Symtab implements Serializable

Serialized Fields

rootScope

SymtabScope rootScope
The root of the nested scopes.

currentScope

SymtabScope currentScope
The current scope.

currentScopeDepth

int currentScopeDepth
The current depth of the nested scopes. The root of the scope tree has depth zero. This field should always hold depth of currently active scope.

Class scale.clef.symtab.SymtabEntries implements Serializable

Serialized Fields

identifier

java.lang.String identifier
Identifier shared by all these entries.

entries

java.lang.Object entries
The SymtabEntry or a Vector of SymtabEntry.

Class scale.clef.symtab.SymtabEntry implements Serializable

Serialized Fields

scope

SymtabScope scope
The scope for this symbol.

declaration

Declaration declaration
The declaration for this symbol.

Class scale.clef.symtab.SymtabLocal implements Serializable

Class scale.clef.symtab.SymtabScope implements Serializable

Serialized Fields

scopeNumber

int scopeNumber
This field is this scope's unique identifier..

scopeDepth

int scopeDepth
The depth of this scope in the scope tree..

localSymtab

SymtabLocal localSymtab
This scope's local symbol table..

outerScope

SymtabScope outerScope
Points to the outer scope containg this scope.

children

Vector children
A vector of SymtabScope nodes.

order

Vector order
The order that symbols are added.


Package scale.clef.type

Class scale.clef.type.AggregateType implements Serializable

Serialized Fields

fields

Vector fields
The field declarations including methods.

scope

SymtabScope scope
The scope in which the type was declared.

ordered

boolean ordered
True if the fields should be compared in order.

Class scale.clef.type.ArrayType implements Serializable

Serialized Fields

lengthField

boolean lengthField
The array structure contains a length field.

indicies

Vector indicies
A RangeType entry for each dimension.

elementType

Type elementType
The type of elements in the array.

Class scale.clef.type.AtomicType implements Serializable

Class scale.clef.type.BooleanType implements Serializable

Class scale.clef.type.Bound implements Serializable

Serialized Fields

min

Expression min
The minimum allowed value.

max

Expression max
The maximum allowd value.

Class scale.clef.type.CharacterType implements Serializable

Serialized Fields

format

int format
The character format.

Class scale.clef.type.ClassType implements Serializable

Serialized Fields

bases

Vector bases
A Vector of the base classes.

isAbstract

boolean isAbstract
Is the class abstract.

Class scale.clef.type.ComplexType implements Serializable

Serialized Fields

realMinbitSize

int realMinbitSize
The minimum number of bits allowed for the real part.

imaginaryMinbitSize

int imaginaryMinbitSize
The minimum number of bits allowed for the imaginary part.

Class scale.clef.type.CompositeType implements Serializable

Class scale.clef.type.EnumerationType implements Serializable

Serialized Fields

enumVals

Vector enumVals
A Vector of the enumerated values.

Class scale.clef.type.FixedArrayType implements Serializable

Class scale.clef.type.FixedType implements Serializable

Serialized Fields

minScaleBits

int minScaleBits
The minimum number of bits required in the representation of the scale value.

Class scale.clef.type.FloatType implements Serializable

Class scale.clef.type.IncompleteType implements Serializable

Serialized Fields

completeType

Type completeType
The completed type.

Class scale.clef.type.IntegerType implements Serializable

Serialized Fields

minbitSize

int minbitSize
The minimum number of bits that must be used for this type.

signed

boolean signed
Is it signed or unsigned.

Class scale.clef.type.MethodType implements Serializable

Serialized Fields

thisObject

FormalDecl thisObject
Represents the this pointer.

Class scale.clef.type.NumericType implements Serializable

Class scale.clef.type.OffsetType implements Serializable

Serialized Fields

aggregate

AggregateType aggregate
The aggregate type.

Class scale.clef.type.PointerType implements Serializable

Serialized Fields

pointedTo

Type pointedTo
The type pointed to.

Class scale.clef.type.ProcedureType implements Serializable

Serialized Fields

returnType

Type returnType
The return type of the procedure.

formals

Vector formals
A Vector of FormalDecls.

raises

Vector raises
A Vector of the exceptions raised.

Class scale.clef.type.Raise implements Serializable

Class scale.clef.type.RaiseWithObject implements Serializable

Serialized Fields

exception

ExceptionDecl exception
The exception.

Class scale.clef.type.RaiseWithType implements Serializable

Serialized Fields

type

Type type
The type.

Class scale.clef.type.RangeType implements Serializable

Serialized Fields

baseType

IntegerType baseType
The type of the individual values.

bound

Bound bound
The range of the values.

Class scale.clef.type.RealType implements Serializable

Serialized Fields

minbitSize

int minbitSize
The minimum number of bits required to represent a value of this type.

Class scale.clef.type.RecordType implements Serializable

Class scale.clef.type.RefType implements Serializable

Serialized Fields

refTo

Type refTo
The type referenced.

attribute

int attribute
The attribute of this reference.

myDecl

Declaration myDecl
The TypeDecl for this type if any.

Class scale.clef.type.SuperType implements Serializable

Serialized Fields

d

Declaration d
The declaration.

parent

Node parent
The parent.

accessibility

byte accessibility
The accessibility.

isVirtual

boolean isVirtual
Is it virtual?

Class scale.clef.type.Type implements Serializable

Serialized Fields

tag

int tag
An integer value associated with the type that various algorithms may use.

color

int color
The color value - used in traversing the CFG.

Class scale.clef.type.TypeTable implements Serializable

Serialized Fields

map

scale.clef.type.TypeTable.Entry[] map
The array of lists indexed by the hash code.

number

int number
The number of entries in the map..

Class scale.clef.type.UnionType implements Serializable

Class scale.clef.type.VoidType implements Serializable


Package scale.clef2C

Class scale.clef2C.LoweredAnnote implements Serializable

Serialized Fields

lowered

Node lowered
The lowered Clef node

Class scale.clef2C.VTableAnnote implements Serializable

Serialized Fields

vPtrId

Declaration vPtrId
The declaration for the virtual function pointer.

vTblId

Declaration vTblId
The declaration for the virtual function table.

Class scale.clef2C.VtblException implements Serializable

Class scale.clef2C.VTIndexAnnote implements Serializable

Serialized Fields

index

int index
The index value.


Package scale.common

Class scale.common.DisjointSet implements Serializable

Serialized Fields

parent

DisjointSet parent
A pointer to the parent.

rank

int rank
The 'rank' of the element. The rank approximates the logarithm of the subtree size. The value is used to improve the efficiency of the union.

elements

Vector elements
The list of elements in the disjoint set. Only the representative element contains the list of elements. All other elements are null (we do this to save space).

Class scale.common.Error implements Serializable

Class scale.common.Exception implements Serializable

Class scale.common.HashMap implements Serializable

Class scale.common.HashSet implements Serializable

Class scale.common.InternalError implements Serializable

Class scale.common.IntMap implements Serializable

Serialized Fields

map

scale.common.IntMap.Entry[] map
The array of lists indexed by the hash code.

number

int number
The number of entries in the map..

Class scale.common.InvalidException implements Serializable

Class scale.common.InvalidKeyException implements Serializable

Class scale.common.InvalidMutationError implements Serializable

Class scale.common.InvalidTableError implements Serializable

Class scale.common.NoSuchElementException implements Serializable

Class scale.common.NotImplementedError implements Serializable

Class scale.common.ResourceException implements Serializable

Class scale.common.Root implements Serializable

Serialized Fields

nodeID

int nodeID
The unique node id.

annotations

java.lang.Object annotations
The annotations on this node.

Class scale.common.RuntimeException implements Serializable

Class scale.common.StringTable implements Serializable

Serialized Fields

map

scale.common.StringTable.Entry[] map
The array of lists indexed by the hash code.

number

int number
The number of entries in the map..

Class scale.common.Vector implements Serializable


Package scale.genIF

Class scale.genIF.SourceC implements Serializable

Class scale.genIF.SourceCxx implements Serializable

Class scale.genIF.SourceFortran77 implements Serializable

Class scale.genIF.SourceJava implements Serializable

Class scale.genIF.SourceLanguage implements Serializable

Serialized Fields

identifierCase

boolean identifierCase
Are identifiers case sensitive.

memManage

boolean memManage
The type of memory model used.

recordFieldOrderMatters

boolean recordFieldOrderMatters
Does the order of record fields matter?

classFieldOrderMatters

boolean classFieldOrderMatters
Does the order of class fields matter?

methodOrderMatters

boolean methodOrderMatters
Does the order of methods matter?


Package scale.score

Class scale.score.DominanceFrontier implements Serializable

Serialized Fields

frontiers

HashMap frontiers
This field holds the actual dominance frontiers.

Dominances frontiers are computed for each node. The HashMap holds tuples of the form , where the HashSet defines the dominance frontier for the associated Chord.


dom

Domination dom
This field holds the dominance relations.

begin

Chord begin
This field holds the root of the CFG.

Class scale.score.Domination implements Serializable

Serialized Fields

domination

HashMap domination
Map from dominator node to domination information.

vertex

Chord[] vertex
For computation of dominators.

parent

Chord[] parent
For computation of dominators.

label

Chord[] label
For computation of dominators.

ancestor

Chord[] ancestor
For computation of dominators.

buckets

Vector[] buckets
For computation of dominators.

semi

int[] semi
For computation of dominators.

map

HashMap map
for labeling the nodes.

post

boolean post
Is it post dominators?

Class scale.score.Note implements Serializable

Class scale.score.RegularSectionAnnote implements Serializable

Serialized Fields

sections

java.util.Vector sections
regular section descriptotor, sections to be RegularSectioned

Class scale.score.Scribble implements Serializable

Serialized Fields

begin

BeginChord begin
First node in the CFG.

end

EndChord end
Last node in the CFG.

declarations

Vector declarations
A list of declarations that go with the graph.

routine

RoutineDecl routine
The routine for which the graph was generated..

nonLocalVars

HashSet nonLocalVars
List of variable declarations that are used in multiple basic blocks.

refs

References refs
Def and use lists.

df

DominanceFrontier df
The dominance frontier.

pdf

DominanceFrontier pdf
Dominance frontier based on post dominators.

dom

Domination dom
The dominance information..

pDom

Domination pDom
The post dominance information..

containedGotos

boolean containedGotos
Set true if the original graph may be irreducible.

sourceLang

SourceLanguage sourceLang
source lang. used to generate Scribble.

loopTree

Loop loopTree
The top level loop in the CFG.

ddGraph

DDGraph ddGraph
The graph of dependence information.


Package scale.score.analyses

Class scale.score.analyses.AliasAnnote implements Serializable

Serialized Fields

aliasVar

AliasVar aliasVar
The alias variable associated with a declaration.

Class scale.score.analyses.SubVirtualVar implements Serializable

Serialized Fields

supvv

SuperVirtualVar supvv
- superset virtual variable

Class scale.score.analyses.SuperVirtualVar implements Serializable

Serialized Fields

subsets

Vector subsets
- a vector of the subset virtual variables that this variable encompasses

name

java.lang.String name
- the name that will be used to create the subsets

Class scale.score.analyses.VirtualVar implements Serializable

Serialized Fields

var

ECR var
A virtual variable represents a group of variables with similar alias characteristics. We represent the group of variables using Steensgaard's ECR data structure.


Package scale.score.chords

Class scale.score.chords.BeginChord implements Serializable

Class scale.score.chords.BranchChord implements Serializable

Class scale.score.chords.Chord implements Serializable

Serialized Fields

inCfgEdges

java.lang.Object inCfgEdges
This field holds the in-coming Cfg (Chord) edge or edges (Vector)..

label

int label
This field is for the use of various algorithms so that they can label a CFG node with an integer value. The Domination class uses it in computing dominators.

color

int color
The color value - used in traversing the CFG.

loop

Loop loop
The Loop instance associated with this CFG node.

Class scale.score.chords.DecisionChord implements Serializable

Serialized Fields

predicateEdge

Expr predicateEdge
Data edge for test expression.

Class scale.score.chords.EndChord implements Serializable

Class scale.score.chords.EvictChord implements Serializable

Serialized Fields

reuseLevel

int reuseLevel

Class scale.score.chords.ExitChord implements Serializable

Class scale.score.chords.ExprChord implements Serializable

Serialized Fields

expr

Expr expr
This field holds the expression for the computation..

Class scale.score.chords.GotoChord implements Serializable

Class scale.score.chords.IfThenElseChord implements Serializable

Serialized Fields

trueEdge

Chord trueEdge
The true CFG edge.

falseEdge

Chord falseEdge
The false CFG edge.

trueEdgeMarker

boolean trueEdgeMarker
Marker for the true edge.

falseEdgeMarker

boolean falseEdgeMarker
Marker for the false edge.

Class scale.score.chords.LeaveChord implements Serializable

Serialized Fields

resultValue

Expr resultValue
This field holds the node's incoming data edge.

This field may have the null value, so all routines which access this field must check its value first.

Class scale.score.chords.LoopExitChord implements Serializable

Serialized Fields

header

LoopHeaderChord header
The loop header where the chord exits from.

Class scale.score.chords.LoopHeaderChord implements Serializable

Serialized Fields

parent

LoopHeaderChord parent
The outer loop containing this loop.

children

java.lang.Object children
Loops contained in this loop.

loopExits

java.lang.Object loopExits
The LoopExitChord or a Vector of LoopExitChords for the loop if known.

loopTail

LoopTailChord loopTail
The LoopTailChord for the loop if known.

loopTest

IfThenElseChord loopTest
The loop test for the loop if known.

Class scale.score.chords.LoopPreHeaderChord implements Serializable

Class scale.score.chords.LoopTailChord implements Serializable

Class scale.score.chords.NullChord implements Serializable

Class scale.score.chords.PhiExprChord implements Serializable

Class scale.score.chords.ReturnChord implements Serializable

Class scale.score.chords.SequentialChord implements Serializable

Serialized Fields

nextChord

Chord nextChord
This field holds the node's outbound cfg edge..

marker

boolean marker
Marker for the out-going CFG edge.

Class scale.score.chords.SwitchChord implements Serializable

Serialized Fields

edges

Vector edges
Out-going CFG edges.


Package scale.score.dependence

Class scale.score.dependence.DDInfo implements Serializable

Serialized Fields

loopDir

int loopDir
 

distance

int distance
The dependence distance value.

direction

byte direction
The dependence direction vector containing bits encoding the direction information.

distanceKnown

boolean distanceKnown
Is the distance value known?


Package scale.score.expr

Class scale.score.expr.AbsoluteValueExpr implements Serializable

Class scale.score.expr.AdditionExpr implements Serializable

Class scale.score.expr.AllocateExpr implements Serializable

Serialized Fields

initialize

boolean initialize
True if the memory for the allocated object should be cleared to zeros.

Class scale.score.expr.AndExpr implements Serializable

Class scale.score.expr.ArrayIndexExpr implements Serializable

Serialized Fields

reuseLevel

int reuseLevel

Class scale.score.expr.BinaryExpr implements Serializable

Serialized Fields

la

Expr la
Left argument.

ra

Expr ra
Right argument.

Class scale.score.expr.BitAndExpr implements Serializable

Class scale.score.expr.BitComplementExpr implements Serializable

Class scale.score.expr.BitOrExpr implements Serializable

Class scale.score.expr.BitShiftExpr implements Serializable

Serialized Fields

mode

int mode
Specify C or Java style shifting..

Class scale.score.expr.BitXorExpr implements Serializable

Class scale.score.expr.CallExpr implements Serializable

Serialized Fields

mayUse

Vector mayUse
may use information - due to aliasing.

mayDef

Vector mayDef
may def information - due to aliasing.

Class scale.score.expr.CallFunctionExpr implements Serializable

Class scale.score.expr.CallMethodExpr implements Serializable

Class scale.score.expr.CompareExpr implements Serializable

Serialized Fields

mode

int mode
The compare mode.

Class scale.score.expr.ComplexValueExpr implements Serializable

Class scale.score.expr.ConversionExpr implements Serializable

Serialized Fields

conversion

int conversion
The name of the language defined conversion routine.

Class scale.score.expr.DivisionExpr implements Serializable

Class scale.score.expr.DualExpr implements Serializable

Serialized Fields

high

Expr high
The high level expression..

low

Expr low
The low level expression..

Class scale.score.expr.EqualityExpr implements Serializable

Class scale.score.expr.ExponentiationExpr implements Serializable

Class scale.score.expr.Expr implements Serializable

Serialized Fields

type

Type type
Expression type (e.g., int, etc.).

outDataEdge

Note outDataEdge
The expression that usees this expression's value.

Class scale.score.expr.ExprPhiExpr implements Serializable

Serialized Fields

version

int version
The version number.

canBeAvail

boolean canBeAvail
canBeAvail

later

boolean later
later

downSafe

boolean downSafe
downSafe

willBeAvail

boolean willBeAvail
willBeAvail

Class scale.score.expr.FieldExpr implements Serializable

Serialized Fields

field

FieldDecl field
Field specifies the field of the expression being loaded.

structure

Expr structure
Structure is the expression that specifies the address of the structure accessed.

Class scale.score.expr.GreaterEqualExpr implements Serializable

Class scale.score.expr.GreaterExpr implements Serializable

Class scale.score.expr.LessEqualExpr implements Serializable

Class scale.score.expr.LessExpr implements Serializable

Class scale.score.expr.LiteralExpr implements Serializable

Serialized Fields

literal

Literal literal
The literal of this expression.

Class scale.score.expr.LoadDeclAddressExpr implements Serializable

Class scale.score.expr.LoadDeclValueExpr implements Serializable

Class scale.score.expr.LoadExpr implements Serializable

Serialized Fields

useDef

StoreExpr useDef
Use->def link.

decl

Declaration decl
The declaration for the value loaded - if any.

mayUse

MayUseExpr mayUse
may use information - due to aliasing.

ivar

InductionVar ivar

reuseLevel

int reuseLevel
Reuse level of the array reference.

Class scale.score.expr.LoadFieldAddressExpr implements Serializable

Class scale.score.expr.LoadFieldValueExpr implements Serializable

Class scale.score.expr.LoadValueIndirectExpr implements Serializable

Serialized Fields

addr

Expr addr
The argument of the operator..

Class scale.score.expr.MaxExpr implements Serializable

Class scale.score.expr.MayDefExpr implements Serializable

Serialized Fields

graphNode

Expr graphNode
A pointer back to the Scribble/Score node that we hang this may use information from.

Class scale.score.expr.MayUseExpr implements Serializable

Serialized Fields

graphNode

Expr graphNode
A pointer back to the Scribble/Score node that we hang this may use information from.

Class scale.score.expr.MinExpr implements Serializable

Class scale.score.expr.MultiplicationExpr implements Serializable

Class scale.score.expr.NaryExpr implements Serializable

Serialized Fields

operands

Vector operands
A Vector of expressions.

Class scale.score.expr.NegativeExpr implements Serializable

Class scale.score.expr.NilExpr implements Serializable

Class scale.score.expr.NotEqualExpr implements Serializable

Class scale.score.expr.NotExpr implements Serializable

Class scale.score.expr.OrExpr implements Serializable

Class scale.score.expr.PhiExpr implements Serializable

Serialized Fields

markers

java.util.BitSet markers
Utility markers for various algorithms.

Class scale.score.expr.RemainderExpr implements Serializable

Class scale.score.expr.StoreExpr implements Serializable

Serialized Fields

defUse

java.lang.Object defUse
A def->use edge (Expr) or a set of def->use edges (Vector).

mayDef

MayDefExpr mayDef
may definition information - due to aliasing.

Class scale.score.expr.SubscriptExpr implements Serializable

Serialized Fields

boundsCheck

boolean boundsCheck
True if run-time bounds checking required.

rowMajorOrder

boolean rowMajorOrder
True if the subscripting is row major order.

array

Expr array
The array address expression.

indices

Expr[] indices
The array index expressions.

mins

Expr[] mins
The array index origin expressions.

sizes

Expr[] sizes
The array index size expressions.

loop

Loop loop
The loop associated with the subscript.

Class scale.score.expr.SubtractionExpr implements Serializable

Class scale.score.expr.TernaryExpr implements Serializable

Serialized Fields

la

Expr la
Left argument.

ma

Expr ma
Middle argument.

ra

Expr ra
Right argument.

Class scale.score.expr.Transcendental2Expr implements Serializable

Serialized Fields

ftn

int ftn
ftn is the transcendental function.

Class scale.score.expr.TranscendentalExpr implements Serializable

Serialized Fields

ftn

int ftn

Class scale.score.expr.UnaryExpr implements Serializable

Serialized Fields

arg

Expr arg
The argument of the operator..

Class scale.score.expr.VaArgExpr implements Serializable

Class scale.score.expr.VaEndExpr implements Serializable

Class scale.score.expr.ValueExpr implements Serializable

Class scale.score.expr.VarArgExpr implements Serializable

Serialized Fields

vaList

LoadDeclAddressExpr vaList
vaList

Class scale.score.expr.VaStartExpr implements Serializable

Serialized Fields

parmN

FormalDecl parmN
The reference parameter of the calling function.

Class scale.score.expr.VectorExpr implements Serializable