A B C D E F G H I J K L M N O P Q R S T U V W X Z _

A

AALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
AASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
abort() - Method in class harpoon.Runtime.Transactions.CommitRecord
Abort this (sub)transaction, if possible.
abort(CommitRecord) - Static method in class harpoon.Runtime.Transactions.CommitRecord
Abort a transaction, if possible.
ABORTED - Static variable in class harpoon.Runtime.Transactions.CommitRecord
 
abortUpTo - Variable in exception harpoon.Runtime.Transactions.TransactionAbortException
 
ABSTRACT - Static variable in class harpoon.Tools.Annotation.Sym
 
AbstractClassFixupRelinker - Class in harpoon.Analysis
AbstractClassFixupRelinker is an extension of Relinker which fixes up abstract classes so that they implement all the methods of their interfaces (even if this implementation is via an abstract method declaration).
AbstractClassFixupRelinker(Linker) - Constructor for class harpoon.Analysis.AbstractClassFixupRelinker
Creates a AbstractClassFixupRelinker.
abstractFieldSetFactory - Static variable in class harpoon.Analysis.PA2.DSFactories
Factory used to generate the sets of mutated abstract fields.
AbstractGraph - Class in harpoon.Analysis.GraphColoring
AbstractGraph is a skeletal implementation of the Graph interface, to minimize the effort required to implement this interface.
AbstractGraph() - Constructor for class harpoon.Analysis.GraphColoring.AbstractGraph
Creates a AbstractGraph.
AbstractGraph<N extends AbstractGraph.Node<N,E>,E extends Graph.Edge<N,E>> - Class in harpoon.Util.Collections
An AbstractGraph provides a basic implementation of the Graph interface.
AbstractGraph() - Constructor for class harpoon.Util.Collections.AbstractGraph
 
AbstractGraph.Edge<N extends AbstractGraph.Node<N,E>,E extends AbstractGraph.Edge<N,E>> - Class in harpoon.Util.Collections
AbstractGraph.Edge provides a basic implementation of the Graph.Edge interface.
AbstractGraph.Edge(N, N) - Constructor for class harpoon.Util.Collections.AbstractGraph.Edge
 
AbstractGraph.Node<N extends AbstractGraph.Node<N,E>,E extends Graph.Edge<N,E>> - Class in harpoon.Util.Collections
AbstractGraph.Node provides a basic implementation of the Graph.Node interface.
AbstractGraph.Node(AbstractGraph<N, E>) - Constructor for class harpoon.Util.Collections.AbstractGraph.Node
 
abstractSpillFactory(HCodeFactory, Frame) - Static method in class harpoon.Analysis.Instr.RegAlloc
Produces an IntermediateCodeFactory which can be used to extract Derivation information about code it generates.
abstractSpillFactory(HCodeFactory, Frame, RegAlloc.Factory) - Static method in class harpoon.Analysis.Instr.RegAlloc
 
AbstrPAEdgeSet - Class in harpoon.Analysis.PointerAnalysis
AbstrPAEdgeSet
AbstrPAEdgeSet() - Constructor for class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
AbstrRelation - Class in harpoon.Analysis.PointerAnalysis
AbstrRelation
AbstrRelation() - Constructor for class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
AbstrRelationMapBased - Class in harpoon.Analysis.PointerAnalysis
AbstrRelationMapBased
AbstrRelationMapBased() - Constructor for class harpoon.Analysis.PointerAnalysis.AbstrRelationMapBased
 
accept(BasicBlockInterfVisitor) - Method in class harpoon.Analysis.BasicBlock
Accept a visitor.
accept(BasicBlockInterfVisitor) - Method in interface harpoon.Analysis.BasicBlockInterf
Calls the appropriate visit method from visitor.
accept(BasicBlockInterfVisitor) - Method in class harpoon.Analysis.FCFGBasicBlock
 
accept(TempVisitor) - Method in class harpoon.Backend.StrongARM.TwoWordTemp
 
accept(InstrVisitor) - Method in class harpoon.IR.Assem.Instr
Accept a visitor.
accept(InstrVisitor) - Method in class harpoon.IR.Assem.InstrCALL
Accept a visitor
accept(InstrVisitor) - Method in class harpoon.IR.Assem.InstrDIRECTIVE
 
accept(InstrVisitor) - Method in class harpoon.IR.Assem.InstrJUMP
 
accept(InstrVisitor) - Method in class harpoon.IR.Assem.InstrLABEL
Accept a visitor.
accept(InstrVisitor) - Method in class harpoon.IR.Assem.InstrMEM
Accept a visitor
accept(InstrVisitor) - Method in class harpoon.IR.Assem.InstrMOVE
Accept a visitor
accept(QuadVisitor) - Method in class harpoon.IR.LowQuad.LowQuad
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.LowQuad.LowQuad
 
accept(QuadVisitor) - Method in class harpoon.IR.LowQuad.PCALL
 
accept(QuadVisitor) - Method in class harpoon.IR.LowQuad.POPER
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.AGET
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.AGET
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.ALENGTH
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.ALENGTH
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.ANEW
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.ANEW
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.ARRAYINIT
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.ARRAYINIT
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.ASET
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.ASET
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.CALL
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.CALL
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.CJMP
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.CJMP
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.COMPONENTOF
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.COMPONENTOF
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.CONST
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.CONST
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.DEBUG
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.DEBUG
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.FOOTER
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.FOOTER
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.GET
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.GET
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.HANDLER
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.HANDLER
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.HEADER
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.HEADER
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.INSTANCEOF
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.INSTANCEOF
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.LABEL
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.LABEL
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.METHOD
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.METHOD
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.MONITORENTER
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.MONITORENTER
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.MONITOREXIT
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.MONITOREXIT
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.MOVE
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.MOVE
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.NEW
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.NEW
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.NOP
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.NOP
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.OPER
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.OPER
 
accept(OperVisitor) - Method in class harpoon.IR.Quads.OPER
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.PHI
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.PHI
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.Quad
Accept a visitor.
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.Quad
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.RETURN
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.RETURN
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.SET
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.SET
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.SIGMA
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.SIGMA
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.SWITCH
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.SWITCH
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.THROW
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.THROW
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.TYPECAST
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.TYPECAST
 
accept(QuadVisitor) - Method in class harpoon.IR.Quads.TYPESWITCH
 
accept(QuadValueVisitor<T>) - Method in class harpoon.IR.Quads.TYPESWITCH
 
accept(TreeVisitor) - Method in class harpoon.IR.Tree.ALIGN
Accept a visitor.
accept(TreeVisitor) - Method in class harpoon.IR.Tree.BINOP
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.CALL
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.CJUMP
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.CONST
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.DATUM
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.ESEQ
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.EXPR
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.INVOCATION
 
accept(TreeVisitor) - Method in class harpoon.IR.Tree.JUMP
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.LABEL
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.MEM
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.METHOD
Accept a visitor.
accept(TreeVisitor) - Method in class harpoon.IR.Tree.MOVE
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.NAME
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.NATIVECALL
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.OPER
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.RETURN
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.SEGMENT
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.SEQ
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.TEMP
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.THROW
Accept a visitor
accept(TreeVisitor) - Method in class harpoon.IR.Tree.Tree
Accept a visitor.
accept(TreeVisitor) - Method in class harpoon.IR.Tree.UNOP
Accept a visitor
accept(Spec.DetailVisitor) - Method in class harpoon.Tools.PatMat.Spec.Detail
Applies v's visit method to this.
accept(Spec.DetailVisitor) - Method in class harpoon.Tools.PatMat.Spec.DetailExtra
Applies v's visit method to this.
accept(Spec.DetailVisitor) - Method in class harpoon.Tools.PatMat.Spec.DetailList
 
accept(Spec.DetailVisitor) - Method in class harpoon.Tools.PatMat.Spec.DetailPredicate
 
accept(Spec.DetailVisitor) - Method in class harpoon.Tools.PatMat.Spec.DetailWeight
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.Exp
Applies v's visit method to this.
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpBinop
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpConst
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpId
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpMem
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpName
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpTemp
 
accept(Spec.ExpVisitor) - Method in class harpoon.Tools.PatMat.Spec.ExpUnop
 
accept(Spec.LeafVisitor) - Method in class harpoon.Tools.PatMat.Spec.Leaf
Applies v's visit method to this.
accept(Spec.LeafVisitor) - Method in class harpoon.Tools.PatMat.Spec.LeafId
Applies v's visit method to this.
accept(Spec.LeafVisitor) - Method in class harpoon.Tools.PatMat.Spec.LeafNull
 
accept(Spec.LeafVisitor) - Method in class harpoon.Tools.PatMat.Spec.LeafNumber
Applies v's visit method to this.
accept(Spec.LeafVisitor) - Method in class harpoon.Tools.PatMat.Spec.LeafOp
Applies v's visit method to this.
accept(Spec.LeafVisitor) - Method in class harpoon.Tools.PatMat.Spec.LeafSegType
Applies v's visit method to this.
accept(Spec.RuleVisitor) - Method in class harpoon.Tools.PatMat.Spec.Rule
Applies v's visit method to this.
accept(Spec.RuleVisitor) - Method in class harpoon.Tools.PatMat.Spec.RuleExp
 
accept(Spec.RuleVisitor) - Method in class harpoon.Tools.PatMat.Spec.RuleList
Applies v's visit method to this.
accept(Spec.RuleVisitor) - Method in class harpoon.Tools.PatMat.Spec.RuleStm
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.Stm
Applies v's visit method to this.
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmAlign
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmCall
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmCjump
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmData
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmExp
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmJump
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmLabel
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmMethod
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmMove
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmNativeCall
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmReturn
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmSegment
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmSeq
 
accept(Spec.StmVisitor) - Method in class harpoon.Tools.PatMat.Spec.StmThrow
 
access_flags - Variable in class harpoon.IR.RawClass.AccessFlags
 
access_flags - Variable in class harpoon.IR.RawClass.ClassFile
The value of the access_flags item is a mask of modifiers used with class and interface declarations.
access_flags - Variable in class harpoon.IR.RawClass.FieldInfo
Access permissions and properties of the field.
access_flags - Variable in class harpoon.IR.RawClass.MethodInfo
Access permissions and properties of the method.
AccessFlags - Class in harpoon.IR.RawClass
Represents a set of method or field access flags, containing permissions and properties of a field or method.
AccessFlags(int) - Constructor for class harpoon.IR.RawClass.AccessFlags
Constructor.
AccessFlags(ClassDataInputStream) - Constructor for class harpoon.IR.RawClass.AccessFlags
Constructor.
ACMPEQ - Static variable in class harpoon.IR.Quads.Qop
Compares references for equality.
ACONST_NULL - Static variable in class harpoon.IR.Bytecode.Op
 
action(PANode, HField, PANode) - Method in interface harpoon.Analysis.PA2.PAEdgeSet.EdgeAction
 
action(SolAccessor) - Method in class harpoon.Analysis.PA2.WriteConstraint
 
action(CALL, Code, Map<Quad, Quad>) - Method in class harpoon.Analysis.Quads.DeepInliner.InlineChain
 
action(CompilerState) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
 
action(CompilerState) - Method in class harpoon.Main.CodeGenerator
 
action(CompilerState) - Method in class harpoon.Main.CompilerStage
 
action(CompilerState) - Method in class harpoon.Main.CompilerStageEZ
 
action(CompilerState) - Method in class harpoon.Main.CompStagePipeline
 
action() - Method in class harpoon.Util.Options.Option
 
action_obj - Variable in class harpoon.Tools.Annotation.Java12
instance of action encapsulation class
action_obj - Variable in class harpoon.Tools.PatMat.Parser
instance of action encapsulation class
action_str - Variable in class harpoon.Tools.PatMat.Spec.Rule
Java code to execute if this fires (ie. this pattern is chosen as part of the optimal set).
action_table() - Method in class harpoon.Tools.Annotation.Java12
access to parse action table
action_table() - Method in class harpoon.Tools.PatMat.Parser
access to parse action table
actionPerformed(ActionEvent) - Method in class harpoon.Analysis.Partition.PartitionGraphViewer
 
ActionRepository - Class in harpoon.Analysis.PointerAnalysis
ActionRepository merges together the alpha and pi sets from the original paper of Martin Rinard & John Whaley.
ActionRepository() - Constructor for class harpoon.Analysis.PointerAnalysis.ActionRepository
Creates a ActionRepository.
activeThreads() - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Returns all the thread nodes nT that have assigned a non-zero count (i.e. tau(nT) > 0 in the algorithm)
activeThreadSet() - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Returns all the thread nodes nT that have assigned a non-zero count (i.e. tau(nT) > 0 in the algorithm)
actualClass() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
actualClass() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
actualClass() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
actualClass() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
add(Temp, Temp) - Method in class harpoon.Analysis.Instr.EqTempSets
Adds an equivalency between t1 and t2 to this.
add(int) - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
add(Temp) - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
add(int) - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
add(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
add(PAEdge, PAEdge) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Adds a piece of ordering information.
add(Set, String, PANode, PAEdgeSet) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Records the fact that the new outside edges <node1,f,node2> (forall node1 in nodes1) are created after all the inside edges from I.
add(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.LightRelation
 
add(PANode, int) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Add a positive delta to the value attached to a node.
add(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkList
 
add(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkSet
 
add(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkStack
 
add(Object, Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Adds the pair <key, value> to the relation.
add(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
add(long) - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Adds the specified parameter to this ClazPointer's offset
add(long) - Method in class harpoon.Interpret.Tree.StringPointer
Throws an error, as StringPointers are constant.
add(long) - Method in class harpoon.Interpret.Tree.UndefinedPointer
Adds the specified offset to the offset of this UndefinedPointer and returns the resulting pointer.
ADD - Static variable in class harpoon.IR.Tree.Bop
Addition.
ADD - Static variable in class harpoon.Tools.PatMat.Sym
 
add(E) - Method in class harpoon.Util.ArrayIterator
 
add(Object) - Method in class harpoon.Util.CloneableIterator
 
add_ld(PANode, String, PANode, PANode, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Adds a ld action.
add_ld(Set, String, PANode, PANode, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Convenient function used in the intra-procedural analysis, in the rule for a load operation.
add_ld(Set, String, PANode, Set, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Convenient function used by the inter-procedural and inter-thread analysis (when a thread node can be mapped to a set of nodes).
add_ld(Set, String, Set, Set, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Convenient function used by the inter-procedural and inter-thread analysis (when a load node can be mapped to a set of nodes).
add_ld(Set, String, Set, PANode, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
 
add_sync(PASync, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Adds a sync action.
add_sync(Set, Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Convenient fiunction for recording a set of sync actions in parallel with all the threads from the set active_threads.
addAll(Object, Collection) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
addAll(Object, Collection) - Method in class harpoon.Analysis.PointerAnalysis.LightRelation
 
addAll(Collection) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkSet
Adds all the elements of a Collection
addAll(Object, Collection) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Adds a relation from key to each element of the set values.
addAll(Object, Collection) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
addAll(Spec.TypeSet) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Adds all the types contained in TypeSet ts to this.
addCheck(TreeFactory, Exp, DerivationGenerator, Temp, String) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
[env = FNI_GetJNIEnv();] [FNI_MonitorEnter(env, javax.realtime.Stats.class);] [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectChecks; else goto NoCollectChecks;] [CollectChecks:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapChecks + 1;] [*javax.realtime.Stats.
addCheck(TreeFactory, HCodeElement, DerivationGenerator) - Method in class harpoon.Analysis.Realtime.QuantaChecker
 
addChecks(Linker, ClassHierarchy, HCodeFactory, Set) - Static method in class harpoon.Analysis.Realtime.Realtime
Adds realtime support to a block of code using an harpoon.ClassFile.HCodeFactory.
addClassInitializer() - Method in interface harpoon.ClassFile.HClassMutator
 
addConstructor(String) - Method in interface harpoon.ClassFile.HClassMutator
 
addConstructor(HClass[]) - Method in interface harpoon.ClassFile.HClassMutator
 
addConstructor(HConstructor) - Method in interface harpoon.ClassFile.HClassMutator
 
addDeclaredField(String, HClass) - Method in interface harpoon.ClassFile.HClassMutator
Adds a field to the underlying class.
addDeclaredField(String, String) - Method in interface harpoon.ClassFile.HClassMutator
Adds a field to the underlying class.
addDeclaredField(String, HField) - Method in interface harpoon.ClassFile.HClassMutator
Adds a new field named name to the underlying class.
addDeclaredMethod(String, String) - Method in interface harpoon.ClassFile.HClassMutator
Adds a method to the underlying HClass.
addDeclaredMethod(String, HClass[], HClass) - Method in interface harpoon.ClassFile.HClassMutator
Adds a method to the underlying HClass.
addDeclaredMethod(String, HMethod) - Method in interface harpoon.ClassFile.HClassMutator
Adds a method named name to the underlying HClass.
addDerivation(Temp, Derivation.DList) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
addDummies(int) - Method in class harpoon.Analysis.Partition.WeightedGraph
 
addEdge(QNode, QNode) - Method in class harpoon.Analysis.Companions.QuadFlowGraph
 
addEdge(Object, Object) - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
addEdge(Object, Object) - Method in interface harpoon.Analysis.GraphColoring.DirectedGraph
Ensures that this graph contains an edge from f to t.
addEdge(Object, Object) - Method in interface harpoon.Analysis.GraphColoring.Graph
Ensures that this graph contains an edge between m and n (optional operation).
addEdge(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Introduces an edge between u and v in both the interference graph and in the neighbor lists for u and v.
addEdge(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
addEdge(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
addEdge(PANode, HField, PANode) - Method in class harpoon.Analysis.PA2.PAEdgeSet
Adds an hf-labelled edge between n1 to n2.
addEdge(Temp, PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
addEdge(PANode, String, PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
addEdge(Temp, PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
addEdge(PANode, String, PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
addEdge(Temp, PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
addEdge(PANode, String, PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
addEdge(Node, Node) - Method in class harpoon.Backend.CSAHack.Graph.Graph
 
addEdge(Quad, int, Quad, int) - Static method in class harpoon.IR.Quads.Quad
Adds an edge between two Quads.
addEdge(N, N) - Method in class harpoon.Util.Collections.AbstractGraph
 
addEdge(E) - Method in class harpoon.Util.Collections.AbstractGraph
 
addEdge(N, N) - Method in interface harpoon.Util.Collections.MutableGraph
Add an edge from from to to and return the new edge.
addEdges(Quad, int, Set) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
addEdges(PANode, HField, Collection<PANode>) - Method in class harpoon.Analysis.PA2.PAEdgeSet
Adds an hf-labelled edge between n1 and each node from n2s.
addEdges(Collection<PANode>, HField, Collection<PANode>) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
addEdges(Temp, Collection) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
addEdges(PANode, String, Collection) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
addEdges(Collection, String, PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
addEdges(Collection, String, Collection) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
addEdges(Temp, Collection) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
addEdges(PANode, String, Collection) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
addEdges(Temp, Collection) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
addEdges(PANode, String, Collection) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
addEdges(Collection, String, PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
addEdges(Collection, String, Collection) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
addEdges(Quad[]) - Static method in class harpoon.IR.Quads.Quad
Add edges between a string of Quads.
addElement(E) - Method in class harpoon.Analysis.Context
Add a new element to the end of this Context, 'forgetting' about elements at the start of the Context if necessary.
addExceptionType(HClass) - Method in interface harpoon.ClassFile.HMethodMutator
 
addExcpEdge(FCFGBasicBlock, FCFGBasicBlock) - Static method in class harpoon.Analysis.FCFGBasicBlock
 
addGroup(InstrGroup) - Method in class harpoon.IR.Assem.InstrFactory
Adds information from group to the InstrGroup.Type -> CFGrapher mapping for this.
addHandlers(HandlerSet) - Method in class harpoon.IR.Quads.Quad
Add this quad to the given handler sets.
addIgnoreClasses(HClass) - Method in class harpoon.Analysis.Realtime.ClassReplacer
Do not replace references to from in the class claz.
addIgnorePackage(String) - Method in class harpoon.Analysis.Realtime.ClassReplacer
Do not replace references to from in the package pkg.
addInterface(HClass) - Method in interface harpoon.ClassFile.HClassMutator
 
addInterface(ConstPointer, int) - Method in class harpoon.Interpret.Tree.InterfaceList
Adds the interface pointed to by iFace to this list of interfaces.
addJump(Linker, HCode, TreeFactory, Stm) - Method in class harpoon.Analysis.Realtime.QuantaChecker
 
addMemoryPreallocation(Linker, HCodeFactory, Frame) - Static method in class harpoon.Analysis.MemOpt.PreallocOpt
Add the code that preallocates memory and initializes the static fields that point to the preallocated memory chunks.
addMethodHole(PANode, HMethod) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Records the fact that node escaped into a method hole.
addMethodHoles(PANode, Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Records the fact that node escaped into a set of method holes.
addModifiers(int) - Method in interface harpoon.ClassFile.HClassMutator
 
addModifiers(int) - Method in interface harpoon.ClassFile.HFieldMutator
Add the modifiers specified by m to the field.
addModifiers(int) - Method in interface harpoon.ClassFile.HMethodMutator
 
addNode(Object) - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
addNode(Object) - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Ensures that this graph contains node (optional operation).
addNode(Object) - Method in interface harpoon.Analysis.GraphColoring.Graph
Ensures that this graph contains node (optional operation).
addNode(Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Wrapper method that calls super.addNode(n).
addNode(WGNode) - Method in class harpoon.Analysis.Partition.WeightedGraph
 
addNode(N) - Method in class harpoon.Util.Collections.AbstractGraph
 
addNode(N) - Method in interface harpoon.Util.Collections.MutableGraph
Add a new node to the graph.
addNodeHole(PANode, PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Records the fact that node can escape through the node n_hole.
addNodeHoles(PANode, Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Records the fact that node can escape through the node n_holes.
addNoHeapChecks(HCodeFactory) - Static method in class harpoon.Analysis.Realtime.Realtime
Add checks to see if a NoHeapRealtimeThread illegally touches the heap.
addNormalEdge(FCFGBasicBlock, FCFGBasicBlock) - Static method in class harpoon.Analysis.FCFGBasicBlock
 
addParamNodes(MetaMethod, int) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Creates all the parameter nodes associated with mmethod.
addQuadMapping(Quad, Quad) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
addQuantaChecker(HCodeFactory) - Static method in class harpoon.Analysis.Realtime.Realtime
Add code to check to see if a realtime thread quanta has passed to determine whether to do a user-thread-level context switch.
addr - Variable in class harpoon.Tools.PatMat.Spec.ExpMem
The expression that computes the address of memory represented by this.
addRoot(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.InstrumentSyncOps
 
addSuccessors(WorkSet, BasicBlockInterf) - Method in class harpoon.Analysis.DataFlow.BackwardDataFlowBasicBlockVisitor
Performs the merge operation between q and its predecessors, readding BasicBlocks to W where necessary.
addSuccessors(Worklist, Quad) - Method in class harpoon.Analysis.DataFlow.BackwardDataFlowQuadVisitor
 
addSuccessors(WorkSet, BasicBlockInterf) - Method in class harpoon.Analysis.DataFlow.DataFlowBasicBlockVisitor
Adds the successors of the basic block q to the worklist W, performing merge operations if necessary.
addSuccessors(Worklist, Quad) - Method in class harpoon.Analysis.DataFlow.DataFlowQuadVisitor
Add the successors of the quad q to the worklist W, performing merge operations if necessary.
addSuccessors(WorkSet, BasicBlockInterf) - Method in class harpoon.Analysis.DataFlow.ForwardDataFlowBasicBlockVisitor
Performs the merge operation between q and its successors, readding BasicBlocks to W where necessary.
addSuccessors(Worklist, Quad) - Method in class harpoon.Analysis.DataFlow.ForwardDataFlowQuadVisitor
 
addToEdge(WGNode, WGNode, long) - Static method in class harpoon.Analysis.Partition.WeightedGraph
 
addToEdge(WGNode, long) - Method in class harpoon.Analysis.Partition.WGNode
 
addType(Temp, HClass) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
adj() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
adj(Node) - Method in class harpoon.Backend.CSAHack.Graph.Node
 
adjacentTo(WGNode) - Method in class harpoon.Analysis.Partition.WGNode
 
adjust_quotes(String) - Static method in class harpoon.Util.Util
Returns a string that is identical to str, except that every " character has been replaced with the sequence \".
AGET - Class in harpoon.IR.Quads
AGET represents an element fetch from an array object.
AGET(QuadFactory, HCodeElement, Temp, Temp, Temp, HClass) - Constructor for class harpoon.IR.Quads.AGET
Creates an AGET object representing an element fetch from an array object.
AGET - Static variable in class harpoon.IR.Quads.QuadKind
 
AGGREGATE - Static variable in class harpoon.IR.Assem.InstrGroup
groups code such as double word moves where we do not want to allow one half of the location to be assigned to hold the 2nd half.
AGGRESSIVE_COMPRESS_LOST_NODES - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Same as COMPRESS_LOST_NODES, but done at the end of the analysis of each method.
AGGRESSIVE_SHRINKING - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Activates the aggressive shrinking.
ah - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
ai - Variable in class harpoon.IR.Quads.Code
AllocationInformation for this HCode.
ALENGTH - Class in harpoon.IR.Quads
ALENGTH represents an array length query.
ALENGTH(QuadFactory, HCodeElement, Temp, Temp) - Constructor for class harpoon.IR.Quads.ALENGTH
Creates a ALENGTH representing an array length query.
ALENGTH - Static variable in class harpoon.IR.Quads.QuadKind
 
AlgebraicSimplification - Class in harpoon.Analysis.Tree
AlgebraicSimplification performs algebraic simplification on canonical trees.
ALIGN - Class in harpoon.IR.Tree
ALIGN statements are used to enforce a given alignment on the following data items.
ALIGN(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.ALIGN
Creates a ALIGN.
ALIGN - Static variable in class harpoon.IR.Tree.TreeKind
 
ALIGN - Static variable in class harpoon.Tools.PatMat.Sym
 
alignment - Variable in class harpoon.IR.Tree.ALIGN
The alignment to enforce, in bytes.
alignment - Variable in class harpoon.Tools.PatMat.Spec.StmAlign
Type of segment.
AlignmentAnalysis - Class in harpoon.Analysis.Tree
AlignmentAnalysis computes the alignment (some offset modulo some number from some base) of every typed pointer in a Tree.
AlignmentAnalysis(Code, CFGrapher<Tree>, UseDefer<Tree>, TreeDerivation) - Constructor for class harpoon.Analysis.Tree.AlignmentAnalysis
Creates a AlignmentAnalysis.
AlignmentAnalysis.BaseAndOffset - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.Constant - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.ConstantModuloN - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.ConstantModuloN(long) - Constructor for class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
AlignmentAnalysis.DefPoint - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.DefPoint() - Constructor for class harpoon.Analysis.Tree.AlignmentAnalysis.DefPoint
 
AlignmentAnalysis.IntegerValue - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.KGroup - Class in harpoon.Analysis.Tree
a k-group is a "phi-function" definition point.
AlignmentAnalysis.NameDefPoint - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.TempDefPoint - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.Value - Class in harpoon.Analysis.Tree
 
AlignmentAnalysis.Value() - Constructor for class harpoon.Analysis.Tree.AlignmentAnalysis.Value
 
ALL - Static variable in class harpoon.Analysis.Realtime.Realtime
Overly aggressive (and wrong!)
all_meta_methods - Variable in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
 
allAllocationSites() - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Returns all allocation sites encountered by this analysis.
AllCallers - Class in harpoon.Analysis
AllCallers calculates the transitive closure of the dual of the call graph for methods that fulfill a certain condition.
AllCallers(ClassHierarchy, HCodeFactory) - Constructor for class harpoon.Analysis.AllCallers
Creates an AllCallers object using the specified ClassHierarchy.
AllCallers(CallGraph) - Constructor for class harpoon.Analysis.AllCallers
Creates an AllCallers object that is the dual of the callgraph cg (of type harpoon.Analysis.Quads.CallGraoh).
AllCallers.MethodSet - Interface in harpoon.Analysis
MethodSet defines the interface whose method select is used in getCallers as a predicate.
AllCheckRemoval - Class in harpoon.Analysis.Realtime
AllCheckRemoval is an overly aggressive (and often wrong!)
AllCheckRemoval() - Constructor for class harpoon.Analysis.Realtime.AllCheckRemoval
Creates a SimpleCheckRemoval.
allDefs(HCode<HCE>) - Method in class harpoon.Analysis.UseDef
Return an array of all Temps defined in a given HCode.
allFlagsForNode(PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
allFlagsForNode(PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
allFlagsForNode(PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
AllInductions - Class in harpoon.Analysis.LowQuad.Loop
AllInductions
AllInductions(TempMap, HCode) - Constructor for class harpoon.Analysis.LowQuad.Loop.AllInductions
Creates a AllInductions object.
allInductionsMap(HCode, Loops) - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis
 
AllInductionsMap - Interface in harpoon.Analysis.Maps
AllInductionsMap is a mapping from Loops to a Set of basic induction Temps.
allInductionsMap(HCode, Loops) - Method in interface harpoon.Analysis.Maps.AllInductionsMap
Returns a Set of basic induction Temps.
allLiveVarsHaveDefs(Code, BasicBlock.Factory, CFGrapher, UseDefer, ReachingDefs, LiveTemps) - Static method in class harpoon.Analysis.Instr.Check
 
allMethods() - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Returns all the methods encountered by this analysis
allNodes() - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
allNodes() - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
allNodes() - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Returns the set of all nodes that appear in this parallel interaction graph.
alloc2int - Variable in class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
 
allocatedTypesKnown(HMethod) - Method in class harpoon.Analysis.PreciseGC.MRAFactory
Checks whether the types that the HMethod may allocate are known.
allocateLocation(int) - Method in interface harpoon.Backend.Generic.LocationFactory
Allocate a global location of the specified type and return a handle to it.
allocateLocation(int) - Method in class harpoon.Backend.MIPS.RegFileInfo
Allocate a global register of the specified type and return a handle to it.
allocateLocation(int) - Method in class harpoon.Backend.Sparc.RegFileInfo
 
allocateLocation(int) - Method in class harpoon.Backend.StrongARM.RegFileInfo
Allocate a global register of the specified type and return a handle to it.
allocationHeap() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
allocationHeap() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
allocationHeap() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
allocationHeap() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
AllocationHoisting - Class in harpoon.Analysis.PreciseGC
AllocationHoisting
AllocationHoisting(HCodeFactory, ClassHierarchy, Linker, String, int) - Constructor for class harpoon.Analysis.PreciseGC.AllocationHoisting
Creates an AllocationHoisting.
AllocationInformation<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
An AllocationInformation maps allocation sites to information about the allocation done at that site.
AllocationInformation.AllocationProperties - Interface in harpoon.Analysis.Maps
AllocationProperties contains tests for the various possibly properties of an allocation site.
AllocationInformationMap<HCE extends HCodeElement> - Class in harpoon.Analysis
An AllocationInformationMap makes it easy to create a map-based AllocationInformation structure.
AllocationInformationMap() - Constructor for class harpoon.Analysis.AllocationInformationMap
Creates a AllocationInformationMap.
AllocationInformationMap.AllocationPropertiesImpl - Class in harpoon.Analysis
A simple implementation of AllocationProperties.
AllocationInformationMap.AllocationPropertiesImpl(boolean, boolean, boolean, boolean, boolean, Temp, HClass, boolean) - Constructor for class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
AllocationInformationMap.AllocationPropertiesImpl(boolean, boolean, boolean, boolean, boolean, Temp, HClass, boolean, Label, int) - Constructor for class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
AllocationInformationMap.AllocationPropertiesImpl(AllocationInformation.AllocationProperties, TempMap) - Constructor for class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
AllocationInstrCompStage - Class in harpoon.Instrumentation.AllocationStatistics
AllocationInstrCompStage
AllocationInstrCompStage() - Constructor for class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
Creates a AllocationInstrCompStage.
AllocationNumbering - Class in harpoon.Instrumentation.AllocationStatistics
An AllocationNumbering object assigns unique numbers to each allocations site from a program and (possibly) to each call sites.
AllocationNumbering(CachingCodeFactory, ClassHierarchy, boolean) - Constructor for class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
Creates an AllocationNumbering object.
AllocationNumberingInterf - Interface in harpoon.Instrumentation.AllocationStatistics
Objects that implement AllocationNumberingInterf provide unique integer IDs for all allocation sites from a program.
AllocationNumberingStub - Class in harpoon.Instrumentation.AllocationStatistics
AllocationNumberingStub is a very simple implementation of AllocationNumberingInterf designed to avoid serialization (serialization is buggy in many, if not all, JVMs).
AllocationNumberingStub(Linker, String) - Constructor for class harpoon.Instrumentation.AllocationStatistics.AllocationNumberingStub
Create an AllocationNumberingStub by parsing a text file.
allocationSites() - Method in interface harpoon.Analysis.PointsToAnalysis.Node
 
AllocationStatistics - Class in harpoon.Instrumentation.AllocationStatistics
AllocationStatistics reads the output produced by the allocation instrumentation and offers support for gathering and displaying statistics about the number of times each allocation site from an instrumented program was executed.
AllocationStatistics(AllocationNumberingInterf, String) - Constructor for class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Create an AllocationStatistics object.
AllocationStatistics(Linker, String, String) - Constructor for class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Create a AllocationStatistics.
AllocationStrategy - Class in harpoon.Backend.Runtime1
An AllocationStrategy is a particular implementation of a memory allocation routine.
AllocationStrategy() - Constructor for class harpoon.Backend.Runtime1.AllocationStrategy
 
AllocationStrategyFactory - Interface in harpoon.Backend.Runtime1
AllocationStrategyFactory
allocID(Quad) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
 
allocID(Quad) - Method in interface harpoon.Instrumentation.AllocationStatistics.AllocationNumberingInterf
 
allocID(Quad) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationNumberingStub
 
allocID(Quad) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Returns the unique ID for alloc.
allocInfo - Variable in class harpoon.IR.Quads.SSIRename
AllocationInformation for the new quads, or null if no allocation information for the old quads was supplied.
allocInfo - Variable in class harpoon.IR.Quads.SSIToSSA
AllocationInformation for the new quads, or null if no allocation information for the old quads was supplied.
AllocSyncOptCompStage - Class in harpoon.Analysis.PointerAnalysis
AllocSyncOptCompStage
AllocSyncOptCompStage() - Constructor for class harpoon.Analysis.PointerAnalysis.AllocSyncOptCompStage
 
allowedToRemove(Object, ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.NodeSelector
Checks if node can be removed from graph to improve colorability.
allowedToRemove(Object, ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.SimpleSelector
 
allRegs(Collection) - Method in class harpoon.Analysis.Instr.RegAlloc
 
allRegs() - Method in class harpoon.Backend.Generic.RegFileInfo
Returns all of the available registers on this architecture.
allSourceNodes() - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
allSourceNodes() - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
allSourceNodes() - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
allTemps(HCode<HCE>) - Method in class harpoon.Analysis.UseDef
Return an array of all Temps used or defined in a given HCode.
allUses(HCode<HCE>) - Method in class harpoon.Analysis.UseDef
Return an array of all Temps used in a given HCode.
allVariables() - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
allVariables() - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
allVariables() - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
ALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
ALOAD_0 - Static variable in class harpoon.IR.Bytecode.Op
 
ALOAD_1 - Static variable in class harpoon.IR.Bytecode.Op
 
ALOAD_2 - Static variable in class harpoon.IR.Bytecode.Op
 
ALOAD_3 - Static variable in class harpoon.IR.Bytecode.Op
 
AltArrayTransformer - Class in harpoon.Analysis.Transactions
AltArrayTransformer substitutes an alternative implementation of arrays.
AltArrayTransformer(HCodeFactory, Linker, String) - Constructor for class harpoon.Analysis.Transactions.AltArrayTransformer
 
ANALYSIS_METHOD - Static variable in class harpoon.Analysis.Realtime.Realtime
Determine which analysis method to use.
AnalysisPolicy - Class in harpoon.Analysis.PA2
AnalysisPolicy groups together different pointer analysis options.
AnalysisPolicy(boolean, int, int) - Constructor for class harpoon.Analysis.PA2.AnalysisPolicy
 
analyzable(HMethod) - Static method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Check if hm can be analyzed by the pointer analysis.
analyze() - Method in class harpoon.Analysis.PointerAnalysis.MAInfo
 
analyze(Set) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
analyze() - Method in class harpoon.Analysis.TypeInference.InterProc
 
analyze_call(PointerAnalysis, MetaMethod, CALL, ParIntGraph) - Static method in class harpoon.Analysis.PointerAnalysis.InterProcPA
Analyzes the call site q inside current_method.
analyzedMethods() - Static method in class harpoon.Analysis.PA2.Stats
 
analyzedSCCs() - Static method in class harpoon.Analysis.PA2.Stats
 
ancestorElementMap() - Method in class harpoon.ClassFile.HCodeAndMaps
An immutable mapping from newly-cloned HCodeElements to ancestor HCodeElements.
ancestorHCode() - Method in class harpoon.ClassFile.HCodeAndMaps
Returns the original HCode that the clone returned by the hcode() method was copied from.
ancestorTempMap() - Method in class harpoon.ClassFile.HCodeAndMaps
An immutable mapping from newly-cloned Temps to ancestor Temps.
AND - Static variable in class harpoon.IR.Tree.Bop
Bit-wise AND; long/integer only.
AND - Static variable in class harpoon.Tools.Annotation.Sym
 
AND - Static variable in class harpoon.Tools.PatMat.Sym
 
ANDAND - Static variable in class harpoon.Tools.Annotation.Sym
 
ANDEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
ANEW - Class in harpoon.IR.Quads
ANEW represents an array creation operation.
ANEW(QuadFactory, HCodeElement, Temp, HClass, Temp[]) - Constructor for class harpoon.IR.Quads.ANEW
Creates an ANEW object.
ANEW - Static variable in class harpoon.IR.Quads.QuadKind
 
ANEWARRAY - Static variable in class harpoon.IR.Bytecode.Op
 
ANEWARRAY_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
AppelAllocationStrategy - Class in harpoon.Backend.Runtime1
A simple-minded version of Appel's fast-allocation strategy
AppelAllocationStrategy(Frame) - Constructor for class harpoon.Backend.Runtime1.AppelAllocationStrategy
 
appelLoopBody(SpillHeuristics.SpillHeuristic) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
AppelRegAlloc - Class in harpoon.Analysis.Instr
AppelRegAlloc
AppelRegAlloc(Code) - Constructor for class harpoon.Analysis.Instr.AppelRegAlloc
 
AppelRegAllocFsk - Class in harpoon.Analysis.Instr
 
AppelRegAllocFsk(Code) - Constructor for class harpoon.Analysis.Instr.AppelRegAllocFsk
 
AppelRegAllocStd - Class in harpoon.Analysis.Instr
 
AppelRegAllocStd(Code) - Constructor for class harpoon.Analysis.Instr.AppelRegAllocStd
 
apply(TreeFactory, Exp, DerivationGenerator) - Method in class harpoon.Analysis.Tree.Simplification.Rule
Applies this rule to exp, and returns the result.
apply(TreeFactory, Stm, DerivationGenerator) - Method in class harpoon.Analysis.Tree.Simplification.Rule
Applies this rule to stm, and returns the result.
ar - Variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Maintains the actions executed by the analysed code and the parallel action relation.
ARETURN - Static variable in class harpoon.IR.Bytecode.Op
 
areWBsRemoved(Quad) - Method in interface harpoon.Analysis.PreciseGC.DynamicWBInserter.DynamicWBAnalysis
Returns true if this Quad is a NEW or ANEW for which write * barriers have been removed.
arglist - Variable in class harpoon.Tools.PatMat.Spec.StmCall
Arguments being passed to procedure.
arglist - Variable in class harpoon.Tools.PatMat.Spec.StmNativeCall
Arguments being passed to procedure.
argOffset(Object, int) - Method in class harpoon.Backend.MIPS.StackInfo
Argument build are is the lowest region on the mips stack, starting at 0(sp)
argReg(Object, int) - Method in class harpoon.Backend.MIPS.StackInfo
Return which argument register this argument goes in
argSecondOffset(Object, int) - Method in class harpoon.Backend.MIPS.StackInfo
Give a higher offset.
argSecondReg(Object, int) - Method in class harpoon.Backend.MIPS.StackInfo
Return the second argument register for a two word temporary.
argv - Variable in class gnu.getopt.Getopt
Saved argument list passed to the program
argWhere(Object, int) - Method in class harpoon.Backend.MIPS.StackInfo
Call this to find out if a given argument is to be passed in a register, on the stack, or (for multi-word temporaries) split between register and stack.
arity() - Method in class harpoon.IR.Bytecode.InMerge
Return the number of predecessors of this node.
arity() - Method in class harpoon.IR.Quads.FOOTER
Returns the number of predecessors of this FOOTER.
arity() - Method in class harpoon.IR.Quads.METHOD
Returns the arity of this Quads.METHOD.
arity() - Method in class harpoon.IR.Quads.PHI
Returns the number of arguments each phi function has.
arity() - Method in class harpoon.IR.Quads.SIGMA
Returns the number of elements in the tuple returned by each sigma function.
array2list(String[]) - Static method in class harpoon.Util.Options.Option
 
ARRAY_CONTENT - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Array elements are modeled as fields of the array object, all of them with the same name since the analysis is not able to make the distinction between the fields.
arrayBase(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing the array-base of the object referenced by the given objectref Translation.Exp.
arrayBase(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
arrayClass(Linker, HClass, int) - Static method in class harpoon.Util.HClassUtil
Make an n-dimensional array class from the given component class.
ArrayCopy - Class in harpoon.Runtime
ArrayCopy contains a pure java implementation of the System.arraycopy() method.
arraycopy(Object, int, Object, int, int) - Static method in class harpoon.Runtime.ArrayCopy
 
arraycopy_backwards(Object, int, Object, int, int) - Static method in class harpoon.Runtime.ArrayCopy
 
ArrayCopyImplementer - Class in harpoon.Analysis.Transactions
ArrayCopyImplementer adds a pure-java implementation of the System.arraycopy() method.
ArrayCopyImplementer(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.Transactions.ArrayCopyImplementer
Creates a ArrayCopyImplementer.
ArrayCopyInliner - Class in harpoon.Analysis.Quads
ArrayCopyInliner will inline array copy.
ArrayCopyInliner(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.ArrayCopyInliner
 
arrayFactory - Static variable in class harpoon.ClassFile.HClass
Array factory: returns new HClass[].
arrayFactory - Static variable in interface harpoon.ClassFile.HConstructor
Array factory: returns new HConstructor[].
arrayFactory - Static variable in interface harpoon.ClassFile.HField
Array factory: returns new HField[].
arrayFactory - Static variable in interface harpoon.ClassFile.HInitializer
Array factory: returns new HInitializer[].
arrayFactory - Static variable in interface harpoon.ClassFile.HMember
Array factory: returns new HMember[].
arrayFactory - Static variable in interface harpoon.ClassFile.HMethod
Array factory: returns new HMethod[].
arrayFactory - Static variable in class harpoon.IR.Assem.Instr
Defines an array factory which can be used to generate arrays of Instrs.
arrayFactory - Static variable in class harpoon.IR.Bytecode.Instr
Array Factory: makes Instr[]s.
arrayFactory - Static variable in class harpoon.IR.Bytecode.Operand
Array factory: returns new Operand[].
arrayFactory - Static variable in class harpoon.IR.Quads.Edge
Array factory: returns new Edge[].
arrayFactory - Static variable in class harpoon.IR.Quads.Quad
Array factory: returns Quad[]s
arrayFactory - Static variable in class harpoon.IR.Tree.Tree
Array factory: returns Tree[].
arrayFactory - Static variable in class harpoon.Temp.Temp
Returns an array of Temps.
ArrayFactory<E> - Interface in harpoon.Util
The ArrayFactory interface allows you to make arrays of objects without run-time type information to determine the object's type.
ArrayInfo - Class in harpoon.Util.TypeInference
ArrayInfo
ArrayInfo() - Constructor for class harpoon.Util.TypeInference.ArrayInfo
Creates a ArrayInfo.
ARRAYINIT - Class in harpoon.IR.Quads
ARRAYINIT represents an array initialization operation.
ARRAYINIT(QuadFactory, HCodeElement, Temp, int, HClass, Object[]) - Constructor for class harpoon.IR.Quads.ARRAYINIT
Creates a ARRAYINIT representing an array initializer.
ARRAYINIT - Static variable in class harpoon.IR.Quads.QuadKind
 
ArrayInitRemover - Class in harpoon.Analysis.Quads
ArrayInitRemover converts ARRAYINIT quads into chains of ASET quads.
ArrayInitRemover(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.ArrayInitRemover
Creates a ArrayInitRemover.
ArrayIterator<E> - Class in harpoon.Util
An ArrayIterator iterates over the elements of an array.
ArrayIterator(E[]) - Constructor for class harpoon.Util.ArrayIterator
Creates an ArrayIterator that iterates over the contents of oa.
arrayLength(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp giving the length of the array pointed to by the given expression.
arrayLength(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
ARRAYLENGTH - Static variable in class harpoon.IR.Bytecode.Op
 
arrayNew(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, Translation.Exp, boolean) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which will create a array of the given type, with length specified by the given expression.
arrayNew(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, Translation.Exp, boolean) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
arrayOffset(TreeFactory, HCodeElement, DerivationGenerator, HClass, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing the offset from the array base needed to access the array element specified by the index expression.
arrayOffset(TreeFactory, HCodeElement, DerivationGenerator, HClass, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
arrayref - Variable in class harpoon.IR.Quads.COMPONENTOF
The array object to test.
arrayref() - Method in class harpoon.IR.Quads.COMPONENTOF
Returns the array reference to test.
ArraySet<E> - Class in harpoon.Util
ArraySet creates an unmodifiable Set view of an array.
ArraySet(E[]) - Constructor for class harpoon.Util.ArraySet
Creates a ArraySet from an object array.
arrayType - Variable in class harpoon.IR.LowQuad.PAOFFSET
The array type.
arrayType() - Method in class harpoon.IR.LowQuad.PAOFFSET
Returns the array type.
ArrayUnroller - Class in harpoon.Analysis.Quads
ArrayUnroller unrolls loops containing arrays so that CacheEquivalence can make larger equivalence sets.
ArrayUnroller(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.ArrayUnroller
Creates a ArrayUnroller.
as - Variable in class harpoon.Backend.Runtime1.Runtime
 
as - Variable in class harpoon.Backend.Runtime1.TreeBuilder
allocation strategy to use.
asc(Object, int, Object, int) - Static method in class harpoon.Runtime.PreciseGC.WriteBarrier
dummy write barrier for ASETs
ASET - Class in harpoon.IR.Quads
ASET represents an array element assignment.
ASET(QuadFactory, HCodeElement, Temp, Temp, Temp, HClass) - Constructor for class harpoon.IR.Quads.ASET
Creates an ASET object representing an array element assignment.
ASET - Static variable in class harpoon.IR.Quads.QuadKind
 
ASFlags - Class in harpoon.Analysis.PA2.AllocSync
ASFlags
ASFlags() - Constructor for class harpoon.Analysis.PA2.AllocSync.ASFlags
 
asList() - Method in class harpoon.Analysis.Context
Return the elements of this Context as a tuple, as represented by an unmodifiable List.
asList() - Method in class harpoon.Util.Tuple
Returns an unmodifiable list view of the Tuple.
asMap() - Method in class harpoon.Temp.CloningTempMap
Provide access to an unmodifiable version of this Temp mapping, as a java.util.Map.
AssemFlowGraph - Class in harpoon.Backend.CSAHack.FlowGraph
A flow graph whose nodes correspond to machine instructions.
AssemFlowGraph(Instr, UseDefer, boolean) - Constructor for class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
Construct an AssemFlowGraph from a list of instructions.
ASSERT - Static variable in class harpoon.Tools.Annotation.Sym
 
assign(Temp[], int) - Method in class harpoon.IR.Quads.SIGMA
 
assignColors() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Gives the nodes a legal color assignment.
assignColors() - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
assignColors() - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
assignment(Temp, Collection) - Method in class harpoon.Backend.Generic.RegFileInfo
Returns a List of Reg that can hold needy, given that the Regs in occupied are not available to hold needy.
assignment(Temp, Collection) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
assignRegister(Instr, Temp, List) - Method in class harpoon.Backend.CSAHack.RegAlloc.Code
 
assignRegister(Instr, Temp, List) - Method in class harpoon.Backend.Generic.Code
Assigns a register to a Temp in i.
associate(HCE, AllocationInformation.AllocationProperties) - Method in class harpoon.Analysis.AllocationInformationMap
Associate the given allocationSite with the specified AllocationProperties.
associate(Temp, Temp) - Method in class harpoon.Analysis.Instr.EqTempSets
Associates t with reg.
associate(Temp, Temp) - Method in interface harpoon.Temp.WritableTempMap
Add a mapping from Temp Told to Temp Tnew.
ASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
ASTORE_0 - Static variable in class harpoon.IR.Bytecode.Op
 
ASTORE_1 - Static variable in class harpoon.IR.Bytecode.Op
 
ASTORE_2 - Static variable in class harpoon.IR.Bytecode.Op
 
ASTORE_3 - Static variable in class harpoon.IR.Bytecode.Op
 
AsyncCode - Class in harpoon.Analysis.EventDriven
AsyncCode
AsyncCode() - Constructor for class harpoon.Analysis.EventDriven.AsyncCode
 
ATHROW - Static variable in class harpoon.IR.Bytecode.Op
 
attach(Quad, int) - Method in class harpoon.IR.Quads.FOOTER
Attach a new Quad to this FOOTER by replacing it.
attribs - Variable in class harpoon.Main.CompilerStageEZ
 
Attribute - Class in harpoon.IR.RawClass
Attributes are used in the ClassFile, field_info, method_info, and Code_attribute structures of the class file format.
Attribute(ClassFile, int) - Constructor for class harpoon.IR.RawClass.Attribute
Constructor.
attribute_length() - Method in class harpoon.IR.RawClass.Attribute
The value of the attribute_length item indicates the length of the attribute, excluding the initial six bytes.
attribute_length() - Method in class harpoon.IR.RawClass.AttributeCode
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeConstantValue
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeExceptions
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeInnerClasses
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeLineNumberTable
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeLocalVariableTable
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeSignature
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeSourceFile
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeSynthetic
 
attribute_length() - Method in class harpoon.IR.RawClass.AttributeUnknown
 
attribute_name() - Method in class harpoon.IR.RawClass.Attribute
 
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeCode
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeConstantValue
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeExceptions
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeInnerClasses
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeLineNumberTable
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeLocalVariableTable
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeSignature
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeSourceFile
The string naming this Attribute type.
ATTRIBUTE_NAME - Static variable in class harpoon.IR.RawClass.AttributeSynthetic
The string naming this Attribute type.
attribute_name_index - Variable in class harpoon.IR.RawClass.Attribute
The attribute_name_index must be a valid unsigned 16-bit index into the constant pool of the class.
attribute_name_index() - Method in class harpoon.IR.RawClass.Attribute
 
AttributeCode - Class in harpoon.IR.RawClass
The Code attribute is a variable-length attribute used in the attributes table of method_info structures.
AttributeCode(ClassFile, int, int, int, byte[], ExceptionTable[], Attribute[]) - Constructor for class harpoon.IR.RawClass.AttributeCode
Constructor.
AttributeConstantValue - Class in harpoon.IR.RawClass
The ConstantValue attribute is a fixed-length attribute used in the attributes table of the field_info structures.
AttributeConstantValue(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.AttributeConstantValue
Constructor.
AttributeExceptions - Class in harpoon.IR.RawClass
The Exceptions attribute is a variable-length attribute used in the attributes table of a method_info structure.
AttributeExceptions(ClassFile, int, int[]) - Constructor for class harpoon.IR.RawClass.AttributeExceptions
Constructor.
AttributeInnerClasses - Class in harpoon.IR.RawClass
InnerClasses attributes define the encodings of bytecode names of inner classes.
AttributeInnerClasses(ClassFile, int, InnerClass[]) - Constructor for class harpoon.IR.RawClass.AttributeInnerClasses
Constructor.
AttributeLineNumberTable - Class in harpoon.IR.RawClass
The LineNumberTable attribute is an optional variable-length attribute in the attributes table of a Code attribute.
AttributeLineNumberTable(ClassFile, int, LineNumberTable[]) - Constructor for class harpoon.IR.RawClass.AttributeLineNumberTable
Constructor.
AttributeLocalVariableTable - Class in harpoon.IR.RawClass
The LocalVariableTable attribute is an optional variable-length attribute of a Code attribute.
AttributeLocalVariableTable(ClassFile, int, LocalVariableTable[]) - Constructor for class harpoon.IR.RawClass.AttributeLocalVariableTable
Constructor.
attributes - Variable in class harpoon.IR.RawClass.AttributeCode
Each value of the attributes table must be a variable-length attribute structure.
attributes - Variable in class harpoon.IR.RawClass.ClassFile
Each value of the attributes table must be a variable-length attribute structure.
attributes - Variable in class harpoon.IR.RawClass.FieldInfo
A field can have any number of attributes associated with it.
attributes - Variable in class harpoon.IR.RawClass.MethodInfo
A method can have any number of optional attributes associated with it.
attributes_count() - Method in class harpoon.IR.RawClass.AttributeCode
 
attributes_count() - Method in class harpoon.IR.RawClass.ClassFile
 
AttributeSignature - Class in harpoon.IR.RawClass
Classfiles need to carry generic type information in a backwards-compatible way.
AttributeSignature(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.AttributeSignature
Constructor.
AttributeSourceFile - Class in harpoon.IR.RawClass
The SourceFile attribute is an optional fixed-length attribute in the attributes table of the ClassFile structure.
AttributeSourceFile(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.AttributeSourceFile
Constructor.
AttributeSynthetic - Class in harpoon.IR.RawClass
Java 1.1 compilers are required, when producing bytecodes, to mark any field or member not directly defined in the source code with an attribute names Synthetic.
AttributeSynthetic(ClassFile, int) - Constructor for class harpoon.IR.RawClass.AttributeSynthetic
Constructor.
AttributeUnknown - Class in harpoon.IR.RawClass
An attribute of unknown format.
AttributeUnknown(ClassFile, int, byte[]) - Constructor for class harpoon.IR.RawClass.AttributeUnknown
Constructor.
AuxUniqueFIFO - Class in harpoon.Analysis.TypeInference
AuxUniqueFIFO
AuxUniqueFIFO() - Constructor for class harpoon.Analysis.TypeInference.AuxUniqueFIFO
Creates a AuxUniqueFIFO.
AuxUniqueFIFO(int) - Constructor for class harpoon.Analysis.TypeInference.AuxUniqueFIFO
 

B

back(Instr, Instr) - Method in class harpoon.Analysis.Instr.RegAlloc
adds a mapping instr to back in to the BackedInstrs.
Backend - Class in harpoon.Backend
Backend is a convenient, top-level class for our many backends.
Backend() - Constructor for class harpoon.Backend.Backend
 
BackendDerivation - Interface in harpoon.Backend.Maps
BackendDerivation provides, in addition to the type and derivation information provided by Analysis.Maps.Derivation, a means to identify (polymorphically typed) callee-save registers.
BackendDerivation.Register - Interface in harpoon.Backend.Maps
 
BackwardDataFlowBasicBlockVisitor - Class in harpoon.Analysis.DataFlow
BackwardDataFlowBasicBlockVisitor
BackwardDataFlowBasicBlockVisitor() - Constructor for class harpoon.Analysis.DataFlow.BackwardDataFlowBasicBlockVisitor
 
BackwardDataFlowQuadVisitor - Class in harpoon.Analysis.DataFlow
BackwardDataFlowQuadVisitor
BackwardDataFlowQuadVisitor() - Constructor for class harpoon.Analysis.DataFlow.BackwardDataFlowQuadVisitor
 
BALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
base - Variable in class harpoon.Analysis.Maps.Derivation.DList
Base pointer.
base - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.TempDefPoint
 
baseClass(HClass) - Static method in class harpoon.Util.HClassUtil
Return the ultimate component type of an array (that is, after all array dimensions have been stripped off).
baseClasses() - Method in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
baseClasses() - Method in class harpoon.Backend.Generic.RuntimeInformation
Returns the set of basic classes which may be referenced in some way by the runtime (for example, as the component type of an array).
baseClasses() - Method in class harpoon.Backend.Runtime1.RuntimeInformation
 
BasePointerPreservingUseDefer - Class in harpoon.Analysis.Instr
BasePointerPreservingUseDefer defines a view of the code where uses of derived pointer values are also considered uses of the base pointers that were used to compute the derived value.
BasePointerPreservingUseDefer(UseDefer, Derivation) - Constructor for class harpoon.Analysis.Instr.BasePointerPreservingUseDefer
 
BasicBlock<HCE extends HCodeElement> - Class in harpoon.Analysis
BasicBlock collects a sequence of operations.
BasicBlock(HCE, BasicBlock.Factory) - Constructor for class harpoon.Analysis.BasicBlock
Constructs a new BasicBlock with h as its first element.
BasicBlock.Factory<HCE extends HCodeElement> - Class in harpoon.Analysis
Factory structure for generating BasicBlock views of an HCode.
BasicBlock.Factory(HCode<HCE>) - Constructor for class harpoon.Analysis.BasicBlock.Factory
Constructs a BasicBlock.Factory using the implicit control flow provided by code.
BasicBlock.Factory(HCode<HCE>, CFGrapher<HCE>) - Constructor for class harpoon.Analysis.BasicBlock.Factory
Constructs a BasicBlock.Factory and generates BasicBlocks for a given HCode.
BasicBlockFactoryInterf<HCE extends HCodeElement,BB extends BasicBlockInterf<HCE,BB>> - Interface in harpoon.Analysis
BasicBlockFactoryInterf
BasicBlockInterf<HCE extends HCodeElement,BB extends BasicBlockInterf> - Interface in harpoon.Analysis
BasicBlockInterf is the interface that needs to be implemented by any "basic block"-like structure.
BasicBlockInterfVisitor - Class in harpoon.Analysis
BasicBlockInterfVisitor is a visitor class implemented similarly to QuadVisitor, with the idea that we may eventually have different kinds of basic blocks.
BasicBlockInterfVisitor() - Constructor for class harpoon.Analysis.BasicBlockInterfVisitor
Creates a BasicBlockInterfVisitor.
BasicCSE - Class in harpoon.Analysis.Quads
BasicCSE is an attempt to perform common subexpression elemination, but only within basic blocks.
BasicGCInfo - Class in harpoon.Backend.Analysis
BasicGCInfo selects as GC points all call sites and backward branches.
BasicGCInfo() - Constructor for class harpoon.Backend.Analysis.BasicGCInfo
 
BasicInductions - Class in harpoon.Analysis.LowQuad.Loop
BasicInductions
BasicInductions(TempMap, HCode) - Constructor for class harpoon.Analysis.LowQuad.Loop.BasicInductions
Creates a BasicInductions object.
basicInductionsMap(HCode, Loops) - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis
 
BasicInductionsMap - Interface in harpoon.Analysis.Maps
BasicInductionsMap is a mapping from Loops to a Set of basic induction Temps.
basicInductionsMap(HCode, Loops) - Method in interface harpoon.Analysis.Maps.BasicInductionsMap
Returns a Set of basic induction Temps.
BASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
BBConverter - Class in harpoon.Util.BasicBlocks
BBConverter is a convenient class that offers a function which returns a basic block view of the code of a method.
BBConverter(HCodeFactory) - Constructor for class harpoon.Util.BasicBlocks.BBConverter
Creates a BBConverter.
bbf - Variable in class harpoon.Analysis.ReachingDefsAltImpl
 
bbf - Variable in class harpoon.Analysis.ReachingDefsImpl
 
bbFact - Variable in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
 
bbFact - Variable in class harpoon.Analysis.Instr.RegAlloc
BasicBlock.Factory for BasicBlocks of this.code.
BDWAllocationStrategy - Class in harpoon.Backend.Runtime1
BDWAllocationStrategy calls the appropriate C functions in the Boehm-Demers-Weiser conservative garbage collector library to do the allocation.
BDWAllocationStrategy(Frame) - Constructor for class harpoon.Backend.Runtime1.BDWAllocationStrategy
Creates a BDWAllocationStrategy.
bfLoc(HField) - Method in class harpoon.Analysis.Transactions.BitFieldNumbering
 
BinaryRelation<A,B> - Interface in harpoon.Util
BinaryRelation represents a predicate on a 2-tuple.
BinHeapPriorityQueue - Class in harpoon.Util
BinHeapPriorityQueue is an implementation of the PriorityQueue interface.
BinHeapPriorityQueue() - Constructor for class harpoon.Util.BinHeapPriorityQueue
 
BinHeapPriorityQueue(int) - Constructor for class harpoon.Util.BinHeapPriorityQueue
 
BINOP - Class in harpoon.IR.Tree
BINOP objects are expressions which stand for result of applying some binary operator o to a pair of subexpressions.
BINOP(TreeFactory, HCodeElement, int, int, Exp, Exp) - Constructor for class harpoon.IR.Tree.BINOP
Constructor.
BINOP - Static variable in class harpoon.IR.Tree.TreeKind
 
BINOP - Static variable in class harpoon.Tools.PatMat.Sym
 
BIPUSH - Static variable in class harpoon.IR.Bytecode.Op
 
bit - Variable in class harpoon.Analysis.Transactions.BitFieldNumbering.BitFieldTuple
 
BitFieldNumbering - Class in harpoon.Analysis.Transactions
BitFieldNumbering finds a bit-position and a field to embed boolean flags describing object fields.
BitFieldNumbering(Linker, boolean) - Constructor for class harpoon.Analysis.Transactions.BitFieldNumbering
Creates a BitFieldNumbering.
BitFieldNumbering(Linker, boolean, String) - Constructor for class harpoon.Analysis.Transactions.BitFieldNumbering
 
BitFieldNumbering.BitFieldTuple - Class in harpoon.Analysis.Transactions
 
bitfields - Variable in class harpoon.Analysis.Transactions.BitFieldNumbering
Set of all fields returned as part of a BitFieldTuple by bfLoc or arrayBitField.
BITS_IN_FIELD - Variable in class harpoon.Analysis.Transactions.BitFieldNumbering
 
bitwidth() - Method in class harpoon.IR.Tree.CONST
Returns the size of the expression, in bits.
bitwidth() - Method in class harpoon.IR.Tree.ESEQ
 
bitwidth() - Method in class harpoon.IR.Tree.MEM
Returns the size of the expression, in bits.
bitwidth() - Method in interface harpoon.IR.Tree.PreciselyTyped
Returns the size of the expression, in bits.
BitWidthAnalysis - Class in harpoon.Analysis.SizeOpt
BitWidthAnalysis implements Sparse Conditional Constant Propagation, with extensions to allow type and bitwidth analysis.
BitWidthAnalysis(Linker, HCodeFactory, ClassHierarchy, Set, String) - Constructor for class harpoon.Analysis.SizeOpt.BitWidthAnalysis
 
BitWidthAnalysis(Linker, HCodeFactory, ClassHierarchy, Set, Set) - Constructor for class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Creates a BitWidthAnalysis.
blockingMethods() - Method in interface harpoon.Analysis.EventDriven.BMethod
 
blocks - Variable in class harpoon.Analysis.FCFGBasicBlock.Factory
 
blockSet() - Method in class harpoon.Analysis.BasicBlock.Factory
Returns the BasicBlocks constructed by this.
blockSet() - Method in interface harpoon.Analysis.BasicBlockFactoryInterf
Returns the BasicBlocks constructed by the factory.
blockSet() - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Returns the FCFGBasicBlocks constructed by this factory.
blocksIterator() - Method in class harpoon.Analysis.BasicBlock.Factory
Generates an Iterator that traverses over all of the blocks generated by this BasicBlock.Factory.
BMethod - Interface in harpoon.Analysis.EventDriven
BMethod.java
Boolean - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type boolean.
BOOLEAN - Static variable in class harpoon.Tools.Annotation.Sym
 
BOOLEAN_LITERAL - Static variable in class harpoon.Tools.Annotation.Sym
 
Bop - Class in harpoon.IR.Tree
Bop is an enumerated type for BINOPs.
Bop() - Constructor for class harpoon.IR.Tree.Bop
 
bottom() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
bottom() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
BOTTOM - Static variable in class harpoon.Analysis.PreciseGC.MRA.MRAToken
 
boundCheck(Quad, Temp, Temp, QuadWithTry, UseDef) - Static method in class harpoon.IR.Quads.Pattern
 
BRACED - Static variable in class harpoon.Tools.PatMat.Sym
 
branchTargets(byte[], int) - Static method in class harpoon.IR.Bytecode.Op
Computes all possible targets for a branch instruction.
BREAK - Static variable in class harpoon.Tools.Annotation.Sym
 
BREAKPOINT - Static variable in class harpoon.IR.Bytecode.Op
 
bsf - Variable in class harpoon.Analysis.ReachingDefsAltImpl
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.ALIGN
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.BINOP
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.CALL
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.CJUMP
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.CONST
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.DATUM
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.ESEQ
 
build(ExpList) - Method in class harpoon.IR.Tree.Exp
Build an Exp of this type from the given list of subexpressions.
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.Exp
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.EXPR
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.JUMP
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.LABEL
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.MEM
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.METHOD
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.MOVE
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.NAME
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.NATIVECALL
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.RETURN
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.SEGMENT
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.SEQ
 
build(ExpList) - Method in class harpoon.IR.Tree.Stm
Build an Stm of this type from the given list of subexpressions.
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.Stm
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.TEMP
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.THROW
 
build(TreeFactory, ExpList) - Method in class harpoon.IR.Tree.UNOP
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.Exp
Creates a new Spec.Exp similar to this one, using the provided Spec.ExpList of children.
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpBinop
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpConst
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpId
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpMem
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpName
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpTemp
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.ExpUnop
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.Stm
Creates a new Spec.Stm similar to this one, using the provided Spec.ExpList of children.
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmAlign
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmCall
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmCjump
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmData
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmExp
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmJump
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmLabel
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmMethod
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmMove
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmNativeCall
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmReturn
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmSegment
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmSeq
 
build(Spec.ExpList) - Method in class harpoon.Tools.PatMat.Spec.StmThrow
 
buildAllocCall(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, String, Exp, ExpList) - Method in class harpoon.Backend.Runtime1.MallocAllocationStrategy
 
buildArray(TreeFactory, Runtime.ObjectBuilder.ArrayInfo, boolean) - Method in class harpoon.Backend.Generic.Runtime.ObjectBuilder
Build an array.
buildArray(TreeFactory, Runtime.ObjectBuilder.ArrayInfo, boolean) - Method in class harpoon.Backend.Runtime1.ObjectBuilder
 
buildCode(HCode, Map, Set, QuadLiveness, Set, CachingCodeFactory, AllCallers.MethodSet, HMethod, Linker, ClassHierarchy, Set, Set, boolean, TypeMap, boolean, boolean, Set) - Static method in class harpoon.Analysis.EventDriven.AsyncCode
Creates a AsyncCode.
buildInterferenceGraph() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Builds the interference graph for the code.
buildInterferenceGraph() - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
buildInterferenceGraph() - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
buildmap(HCode, TypeMap) - Method in class harpoon.IR.Jasmin.Jasmin
buildmap takes in a HCode and a TypeMap and returns a Map and number of local variables used.
buildObject(TreeFactory, Runtime.ObjectBuilder.ObjectInfo, boolean) - Method in class harpoon.Backend.Generic.Runtime.ObjectBuilder
Build an object.
buildObject(TreeFactory, Runtime.ObjectBuilder.ObjectInfo, boolean) - Method in class harpoon.Backend.Runtime1.ObjectBuilder
 
BypassLatchSchedule - Class in harpoon.Backend.MIPS
BypassLatchSchedule is a transformation on low level, register allocated assembly code that annotates opcode to indicate if a given use is the last use of a register.
BypassLatchSchedule(Code, Frame) - Constructor for class harpoon.Backend.MIPS.BypassLatchSchedule
 
Byte - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type byte.
BYTE - Static variable in class harpoon.Tools.Annotation.Sym
 
byteAlign - Static variable in class harpoon.Backend.RuntimeTiny.Runtime
 
BYTEALIGNMENT - Static variable in class harpoon.Backend.MIPS.StackInfo
 

C

c - Variable in class harpoon.Analysis.ContBuilder.ContBuilder
 
c_function_name(String) - Method in class harpoon.Backend.Maps.DefaultNameMap
 
c_function_name(String) - Method in class harpoon.Backend.Maps.NameMap
Maps a C function name to the appropriate label string.
cache - Variable in class harpoon.Analysis.ReachingDefsAltImpl
 
cache - Variable in class harpoon.Analysis.ReachingDefsImpl
 
CacheEquivalence - Class in harpoon.Analysis.Tree
CacheEquivalence creates tag-check equivalence classes for MEM operations in a Tree.
CacheEquivalence(Code, ClassHierarchy) - Constructor for class harpoon.Analysis.Tree.CacheEquivalence
Creates a CacheEquivalence.
cachePerformance() - Method in class harpoon.Analysis.DataFlow.CachingLiveTemps
 
CachingArrayInfo - Class in harpoon.Util.TypeInference
CachingArrayInfo
CachingArrayInfo() - Constructor for class harpoon.Util.TypeInference.CachingArrayInfo
Creates a CachingArrayInfo.
CachingBBConverter - Class in harpoon.Util.BasicBlocks
CachingBBConverter provides some caching for the BBConverter.
CachingBBConverter(HCodeFactory) - Constructor for class harpoon.Util.BasicBlocks.CachingBBConverter
Creates a CachingBBConverter.
CachingCallGraph - Class in harpoon.Analysis.Quads
CachingCallGraph is a caching wrapper for a call graph.
CachingCallGraph(CallGraph, boolean, boolean) - Constructor for class harpoon.Analysis.Quads.CachingCallGraph
Creates a CachingCallGraph that caches the results of cg.
CachingCallGraph(CallGraph) - Constructor for class harpoon.Analysis.Quads.CachingCallGraph
Convenient to use constructor.
CachingCodeFactory - Class in harpoon.ClassFile
A CachingCodeFactory caches the conversions performed by a parent HCodeFactory; the cache can also be directly modified in order to add or replace method implementations.
CachingCodeFactory(HCodeFactory) - Constructor for class harpoon.ClassFile.CachingCodeFactory
Creates a CachingCodeFactory using the conversions performed by parent.
CachingCodeFactory(HCodeFactory, boolean) - Constructor for class harpoon.ClassFile.CachingCodeFactory
Creates a CachingCodeFactory using the conversions performed by parent.
CachingLBBConverter - Class in harpoon.Util.LightBasicBlocks
CachingLBBConverter adds some caching to the LBBConverter.
CachingLBBConverter(BBConverter) - Constructor for class harpoon.Util.LightBasicBlocks.CachingLBBConverter
Creates a CachingLBBConverter.
CachingLiveTemps - Class in harpoon.Analysis.DataFlow
CachingLiveTemps is an extension of LiveTemps that keeps a cache of the recent results that it calculated.
CachingLiveTemps(BasicBlock.Factory, Set) - Constructor for class harpoon.Analysis.DataFlow.CachingLiveTemps
Creates a CachingLiveTemps.
CachingLiveTemps(BasicBlock.Factory, Set, UseDefer) - Constructor for class harpoon.Analysis.DataFlow.CachingLiveTemps
 
CachingLiveTemps(BasicBlock.Factory, Set, SetFactory, UseDefer) - Constructor for class harpoon.Analysis.DataFlow.CachingLiveTemps
 
CachingSCCLBBFactory - Class in harpoon.Util.LightBasicBlocks
CachingSCCLBBFactory adds some caching to SCCLBBFactory.
CachingSCCLBBFactory(LBBConverter) - Constructor for class harpoon.Util.LightBasicBlocks.CachingSCCLBBFactory
Creates a CachingSCCLBBFactory.
calculate() - Method in class harpoon.Analysis.PointerAnalysis.InstrumentSyncOps
 
CALL - Class in harpoon.IR.Quads
CALL objects represent method invocations.
CALL(QuadFactory, HCodeElement, HMethod, Temp[], Temp, Temp, boolean, boolean, Temp[][], Temp[]) - Constructor for class harpoon.IR.Quads.CALL
Creates a CALL quad representing a method invocation with explicit exception handling.
CALL(QuadFactory, HCodeElement, HMethod, Temp[], Temp, Temp, boolean, boolean, Temp[]) - Constructor for class harpoon.IR.Quads.CALL
Creates a CALL with an empty dst array of the proper size.
CALL - Static variable in class harpoon.IR.Quads.QuadKind
 
CALL - Class in harpoon.IR.Tree
CALL objects are statements which stand for java method invocations, using our runtime's calling convention.
CALL(TreeFactory, HCodeElement, TEMP, TEMP, Exp, ExpList, NAME, boolean) - Constructor for class harpoon.IR.Tree.CALL
Create a CALL object.
CALL - Static variable in class harpoon.IR.Tree.TreeKind
 
CALL - Static variable in class harpoon.Tools.PatMat.Sym
 
call2int - Variable in class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
 
CALL_CONTEXT_SENSITIVE - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Activates the calling context sensitivity.
call_path - Variable in class harpoon.Analysis.PointerAnalysis.PASync
The call chain that specializes this action.
callableMethods() - Method in class harpoon.Analysis.CallGraph
Returns the set of all the methods that can be called in the execution of the program.
callableMethods() - Method in class harpoon.Analysis.ClassHierarchy
Returns the set of all callable methods.
callableMethods() - Method in class harpoon.Analysis.MetaMethods.SmartCallGraph
Returns the set of all the methods that can be called in the execution of the program.
callableMethods() - Method in class harpoon.Analysis.Quads.CachingCallGraph
 
callableMethods() - Method in class harpoon.Analysis.Quads.CallGraphImpl
Returns the set of all the methods that can be called in the execution of the program.
callableMethods() - Method in class harpoon.Analysis.Quads.CallGraphImpl2
Returns the set of all the methods that can be called in the execution of the program.
callableMethods() - Method in class harpoon.Analysis.Quads.QuadClassHierarchy
Returns set of all callable methods.
callableMethods() - Method in class harpoon.Analysis.Quads.SSICallGraph
 
callback(Tree, Tree, TempMap) - Method in interface harpoon.IR.Tree.Tree.CloneCallback
This method will be called once for every cloned/renamed subtree.
calleeReg(int) - Method in class harpoon.Backend.MIPS.StackInfo
Return the register for this callee saved register index
callees1_cmpct - Variable in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
 
callees2_cmpct - Variable in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
 
calleeSave() - Method in class harpoon.Backend.MIPS.RegFileInfo
 
calleeSave() - Method in class harpoon.Backend.Sparc.RegFileInfo
 
calleeSave() - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
calleeSaved - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
calleeSaved() - Method in class harpoon.Backend.Generic.GCInfo.GCPoint
Returns an unmodifiable Map of callee-saved BackendDerivation.Registers to the CommonLocs where its contents has been stored
calleeSaveOffset(int) - Method in class harpoon.Backend.MIPS.StackInfo
Return the offset for a given callee saved register index.
calleeSaveRegister(HCodeElement, Temp) - Method in interface harpoon.Backend.Maps.BackendDerivation
Map compiler temporaries to the callee-save register location they correspond to.
calleeSaveTotal() - Method in class harpoon.Backend.MIPS.StackInfo
Return how many callee saved registers there are for this frame
callerSave() - Method in class harpoon.Backend.MIPS.RegFileInfo
 
callerSave() - Method in class harpoon.Backend.Sparc.RegFileInfo
 
callerSave() - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
CallGraph - Class in harpoon.Analysis
CallGraph is a general IR-independant interface that for a call graph.
CallGraph() - Constructor for class harpoon.Analysis.CallGraph
 
CallGraph - Class in harpoon.Analysis.Quads
CallGraph is a general interface that should be implemented by a call graph.
CallGraph() - Constructor for class harpoon.Analysis.Quads.CallGraph
 
CallGraph - Class in harpoon.Main
CallGraph is a command-line call-graph generation tool.
CallGraph() - Constructor for class harpoon.Main.CallGraph
 
CallGraphImpl - Class in harpoon.Analysis.Quads
CallGraphImpl constructs a simple directed call graph.
CallGraphImpl(ClassHierarchy, HCodeFactory) - Constructor for class harpoon.Analysis.Quads.CallGraphImpl
Creates a CallGraph using the specified ClassHierarchy.
CallGraphImpl2 - Class in harpoon.Analysis.Quads
CallGraphImpl2 constructs a simple directed call graph.
CallGraphImpl2(ClassHierarchy, HCodeFactory) - Constructor for class harpoon.Analysis.Quads.CallGraphImpl2
Creates a CallGraph using the specified ClassHierarchy.
callID(Quad) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
Return an integer identifying the CALL quad q.
callInfo(INVOCATION) - Method in class harpoon.Backend.MIPS.StackInfo
Call callInfo with the destination label and argument list for all calls made by this activation frame.
callInfo(METHOD) - Method in class harpoon.Backend.MIPS.StackInfo
For callee argument information call callInfo with METHOD object, and we will interpret the parameter list.
calls(HMethod) - Method in class harpoon.Analysis.CallGraph
Returns an array containing all possible methods called by method m.
calls(HMethod) - Method in class harpoon.Analysis.MetaMethods.SmartCallGraph
Returns an array containing all possible methods called by method m.
calls(HMethod, CALL) - Method in class harpoon.Analysis.MetaMethods.SmartCallGraph
Returns an array containing all possible methods called by method m at the call site cs.
calls(HMethod) - Method in class harpoon.Analysis.Quads.CachingCallGraph
 
calls(HMethod, CALL) - Method in class harpoon.Analysis.Quads.CachingCallGraph
 
calls(HMethod, CALL) - Method in class harpoon.Analysis.Quads.CallGraph
Returns an array containing all possible methods called by method m at the call site cs.
calls(HMethod) - Method in class harpoon.Analysis.Quads.CallGraphImpl
Return a list of all possible methods called by this method.
calls(HMethod, CALL) - Method in class harpoon.Analysis.Quads.CallGraphImpl
Return an array containing all possible methods called by this method at a particular call site.
calls(HMethod) - Method in class harpoon.Analysis.Quads.CallGraphImpl2
Return a list of all possible methods called by this method.
calls(CALL, ReachingDefs, ExactTypeMap) - Method in class harpoon.Analysis.Quads.CallGraphImpl2
Return a list of all possible methods called by this method at a particular call site.
calls() - Method in class harpoon.Analysis.Quads.DeepInliner.InlineChain
 
calls(HMethod) - Method in class harpoon.Analysis.Quads.SSICallGraph
 
calls(HMethod, CALL) - Method in class harpoon.Analysis.Quads.SSICallGraph
 
calls(CALL) - Method in class harpoon.Analysis.Quads.SSICallGraph
 
calls(HMethod) - Method in class harpoon.Analysis.TypeInference.InterProc
 
calls(HMethod, CALL, boolean) - Method in class harpoon.Analysis.TypeInference.InterProc
 
callStatsMonitor(TreeFactory, HCodeElement, DerivationGenerator, boolean) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
 
callsToString(LinkedList<CALL>) - Static method in class harpoon.Analysis.Quads.DeepInliner.InlineChain
 
CALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
canBeRootOfData() - Method in class harpoon.Tools.PatMat.Spec.Stm
Checks if this Stm object is valid for Data patterns.
canBeRootOfData() - Method in class harpoon.Tools.PatMat.Spec.StmAlign
 
canBeRootOfData() - Method in class harpoon.Tools.PatMat.Spec.StmData
 
canBeRootOfData() - Method in class harpoon.Tools.PatMat.Spec.StmLabel
 
canBeRootOfData() - Method in class harpoon.Tools.PatMat.Spec.StmSegment
 
canBeStackAllocated() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
canBeStackAllocated() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
canBeStackAllocated() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
canBeStackAllocated() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
canBeThreadAllocated() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
canBeThreadAllocated() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
canBeThreadAllocated() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
canBeThreadAllocated() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
canFallThrough - Variable in class harpoon.IR.Assem.Instr
Sets whether control flow can go to this.next.
canInline1(HField) - Method in class harpoon.Backend.Maps.DefaultInlineMap
 
canInline1(HField) - Method in class harpoon.Backend.Maps.InlineMap
 
canInline2(HField) - Method in class harpoon.Backend.Maps.DefaultInlineMap
 
canInline2(HField) - Method in class harpoon.Backend.Maps.InlineMap
 
canModel(HMethod) - Static method in class harpoon.Analysis.PA2.SpecialInterProc
 
canonicalize() - Method in class harpoon.Analysis.Maps.Derivation.DList
Canonicalize a DList.
Canonicalize - Class in harpoon.Analysis.Tree
Canonicalize is an application of Simplification to do pattern-driven tree canonicalization.
CanonicalTreeCode - Class in harpoon.IR.Tree
The CanonicalTreeCode codeview is the same as the TreeCode codeview, except for the fact that it does not allow ESEQ objects to be part of its representation.
captured(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Tests whether node node is captured.
CASE - Static variable in class harpoon.Tools.Annotation.Sym
 
CASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
CATCH - Static variable in class harpoon.Tools.Annotation.Sym
 
catch_type - Variable in class harpoon.IR.RawClass.ExceptionTable
If the value of the catch_type item is nonzero, it must be a valid index into the constant_pool table.
catch_type() - Method in class harpoon.IR.RawClass.ExceptionTable
 
caughtException() - Method in class harpoon.IR.Bytecode.Code.ExceptionEntry
 
caughtException - Variable in class harpoon.IR.Quads.HANDLER
The exception caught by this HANDLER, or null for any exception.
caughtException() - Method in class harpoon.IR.Quads.HANDLER
Returns the superclass of the exceptions caught by this HANDLER, or null if any exception is caught.
cdClasses() - Method in class harpoon.Analysis.CycleEq
Return Collection of cycle-equivalency Lists.
cdm - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
cfFromString(String, HCodeFactory, Linker) - Static method in class harpoon.Main.Options
Make a code factory to implement a pass, given a string name.
CFGEdge<CFG extends CFGraphable<CFG,E>,E extends CFGEdge<CFG,E>> - Class in harpoon.IR.Properties
An CFGEdge connects two CFGraphables in a graph structure.
CFGEdge() - Constructor for class harpoon.IR.Properties.CFGEdge
 
CFGraphable<CFG extends CFGraphable<CFG,E>,E extends CFGEdge<CFG,E>> - Interface in harpoon.IR.Properties
CFGraphable defines an interface for intermediate representations that are inherently interconnected in a directed control-flow graphs.
CFGrapher<HCE extends HCodeElement> - Class in harpoon.IR.Properties
CFGrapher provides a means to externally associate control-flow graph information with elements of an intermediate representation.
CFGrapher() - Constructor for class harpoon.IR.Properties.CFGrapher
 
cfm - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
cg - Variable in class harpoon.Backend.Runtime1.Runtime
 
cgg_backendEmit(Instr) - Method in class harpoon.Backend.Generic.CodeGen
Protected helper method guaranteed to be called by emit(Instr).
cgg_backendEmit(Instr) - Method in class harpoon.Backend.Generic.MaxMunchCG
Emits i as the next instruction in the instruction stream.
cgg_genCode(Code, InstrFactory) - Method in class harpoon.Backend.Generic.CodeGen
Creates a Instr list from the IR.Tree.Code tree.
cgg_genCode(Code, InstrFactory) - Method in class harpoon.Backend.MIPS.CodeGen
Generates assembly code from a harpoon.IR.Tree.Code.
cgg_genCode(Code, InstrFactory) - Method in class harpoon.Backend.Sparc.CodeGen
Generates assembly code from a harpoon.IR.Tree.Code.
cgg_genCode(Code, InstrFactory) - Method in class harpoon.Backend.StrongARM.CodeGen
Generates assembly code from a harpoon.IR.Tree.Code.
cgg_genData(Data, InstrFactory) - Method in class harpoon.Backend.Generic.CodeGen
 
cgg_genData(Data, InstrFactory) - Method in class harpoon.Backend.MIPS.CodeGen
Generates assembly code from a harpoon.IR.Tree.Data.
cgg_genData(Data, InstrFactory) - Method in class harpoon.Backend.Sparc.CodeGen
Generates assembly code from a harpoon.IR.Tree.Data.
cgg_genData(Data, InstrFactory) - Method in class harpoon.Backend.StrongARM.CodeGen
Generates assembly code from a harpoon.IR.Tree.Data.
ch - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
ch - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
ch - Variable in class harpoon.Backend.Runtime1.Runtime
 
ChainedAllocationProperties - Class in harpoon.Analysis
ChainedAllocationProperties allows us to change several properties of an already existing AllocationProperties.
ChainedAllocationProperties(AllocationInformation.AllocationProperties) - Constructor for class harpoon.Analysis.ChainedAllocationProperties
Createsv a new ChainedAllocationProperties object
changeAttributes(PersistentMap<String, Object>) - Method in class harpoon.Main.CompilerState
 
changeClassHierarchy(ClassHierarchy) - Method in class harpoon.Main.CompilerState
 
changeCodeFactory(HCodeFactory) - Method in class harpoon.Main.CompilerState
 
changeFrame(Frame) - Method in class harpoon.Main.CompilerState
 
changeLinker(Linker) - Method in class harpoon.Main.CompilerState
 
changeMain(HMethod) - Method in class harpoon.Main.CompilerState
 
changePriority(Object, int) - Method in class harpoon.Util.BinHeapPriorityQueue
 
changePriority(Object, int) - Method in interface harpoon.Util.MaxPriorityQueue
Change the priority of this element by the specified delta.
changeRoots(Set) - Method in class harpoon.Main.CompilerState
 
Char - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type char.
CHAR - Static variable in class harpoon.Tools.Annotation.Sym
 
CHARACTER_LITERAL - Static variable in class harpoon.Tools.Annotation.Sym
 
Check - Class in harpoon.Analysis.Instr
 
Check() - Constructor for class harpoon.Analysis.Instr.Check
 
check(HCode) - Static method in class harpoon.Analysis.LowQuad.DerivationChecker
Check the given HCode for Derivation errors.
check(HCode, HCode) - Static method in class harpoon.Analysis.PA2.AllocSync.Debug
 
check(Code, Code) - Static method in class harpoon.Analysis.PA2.AllocSync.Debug
 
check(HCode) - Static method in class harpoon.Analysis.Tree.DerivationChecker
Check the given HCode for Derivation errors.
check(Object) - Method in interface harpoon.Util.PredicateWrapper
 
check_typecast - Variable in class harpoon.Analysis.ReachingDefsAltImpl
 
check_typecast - Variable in class harpoon.Analysis.ReachingDefsImpl
 
CHECKCAST - Static variable in class harpoon.IR.Bytecode.Op
 
CHECKCAST_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
checkDegreeInv() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Checks degree invariant documented in Tiger book; abstract because a variant of the algorithm breaks it on purpose.
checkDegreeInv() - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
checkDegreeInv() - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
checkDisjointInv() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
checked - Variable in class harpoon.Analysis.Instr.RegAlloc
Tracks Instrs that have been verified for debugging purposes.
CHECKED - Static variable in class harpoon.Analysis.Quads.InitializerTransform
Token for the initializer-ordering-check version of a method.
checkFreezeWorklistInv() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
checkInv() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
checkLongOption() - Method in class gnu.getopt.Getopt
Check to see if an option is a valid long option.
checkNode(Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Ensures that only SparseNodes are added to this.
checkPrecolored() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
CheckRemoval - Interface in harpoon.Analysis.Realtime
CheckRemoval is an interface that all classes that analyze RTJ harpoon.IR.Quads.SET or harpoon.IR.Quads.ASET's for possible removal of checks should implement.
checkSimplifyWorklistInv() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
checkSpillWorklistInv() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
checkStdLibVersion() - Static method in class harpoon.Main.Settings
Checks that the path from the property harpoon.class.path contains a supported implementation of the standard library.
CHEESY_POINTER_ANALYSIS - Static variable in class harpoon.Analysis.Realtime.Realtime
Pointer analysis to determine whether checks can be removed
CheesyPACheckRemoval - Class in harpoon.Analysis.Realtime
CheesyPACheckRemoval
CheesyPACheckRemoval(Linker, ClassHierarchy, HCodeFactory, Set) - Constructor for class harpoon.Analysis.Realtime.CheesyPACheckRemoval
Creates a CheesyPACheckRemoval.
CHFinalMap - Class in harpoon.Backend.Maps
CHFinalMap is a slightly smarter FinalMap that, given a ClassHierarchy for context, aggressively makes methods final if the ClassHierarchy doesn't contain a reachable method which overrides it.
CHFinalMap(ClassHierarchy) - Constructor for class harpoon.Backend.Maps.CHFinalMap
Creates a CHFinalMap.
child() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
child - Variable in class harpoon.IR.Tree.Tree
 
children(HClass) - Method in class harpoon.Analysis.ClassHierarchy
Returns the set of all usable/reachable children of an HClass.
children(HCE) - Method in class harpoon.Analysis.DomTree
Return the children of an HCodeElement in the immediate (post)dominator tree.
children(HClass) - Method in class harpoon.Analysis.Quads.QuadClassHierarchy
 
children() - Method in class harpoon.Analysis.SESE.Region
Child regions of this one.
childrenOf(Object) - Method in interface harpoon.Analysis.GraphColoring.DirectedGraph
Returns a collection view for the children of a specific node.
chooseNodeForHiding(ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.NodeSelector
Returns a element of g.nodeSet(), in the intent that it be hidden in g.
chooseNodeForHiding(ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.SimpleSelector
 
chooseNodeForRemoval(ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.NodeSelector
Returns a element of g.nodeSet(), in the intent that it be removed from g.
chooseNodeForRemoval(ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.SimpleSelector
 
CHStats - Class in harpoon.Main
CHStats computes interesting statistics of the compiler class hierarchy for inclusion in papers and theses.
CHStats() - Constructor for class harpoon.Main.CHStats
 
CJMP - Class in harpoon.IR.Quads
CJMP represents conditional branches.
CJMP(QuadFactory, HCodeElement, Temp, Temp[][], Temp[]) - Constructor for class harpoon.IR.Quads.CJMP
Creates a CJMP representing a conditional branch.
CJMP(QuadFactory, HCodeElement, Temp, Temp[]) - Constructor for class harpoon.IR.Quads.CJMP
Creates a CJMP representing a conditional branch.
CJMP - Static variable in class harpoon.IR.Quads.QuadKind
 
CJUMP - Class in harpoon.IR.Tree
CJUMP objects are statements which stand for conditional branches.
CJUMP(TreeFactory, HCodeElement, Exp, Label, Label) - Constructor for class harpoon.IR.Tree.CJUMP
Constructor.
CJUMP - Static variable in class harpoon.IR.Tree.TreeKind
 
CJUMP - Static variable in class harpoon.Tools.PatMat.Sym
 
CLASS - Static variable in class harpoon.IR.Tree.SEGMENT
R/O storage for static class data (display, vmtable, etc)
CLASS - Static variable in class harpoon.Tools.Annotation.Sym
 
class_index - Variable in class harpoon.IR.RawClass.ConstantFieldref
The value of the class_index item must be a valid index into the constant_pool table of the parent.
class_index() - Method in class harpoon.IR.RawClass.ConstantFieldref
 
class_index - Variable in class harpoon.IR.RawClass.ConstantInterfaceMethodref
The value of the class_index item must be a valid index into the constant_pool table of the parent.
class_index() - Method in class harpoon.IR.RawClass.ConstantInterfaceMethodref
 
class_index - Variable in class harpoon.IR.RawClass.ConstantMethodref
The value of the class_index item must be a valid index into the constant_pool table of the parent.
class_index() - Method in class harpoon.IR.RawClass.ConstantMethodref
 
CLASS_STATEMENTS - Static variable in class harpoon.Tools.PatMat.Sym
 
class_stms - Variable in class harpoon.Tools.PatMat.Spec
Java code statements that are going to be placed inside class body (helper methods, fields, inner classes).
ClassCone - Class in harpoon.Analysis.TypeInference
ClassCone
ClassCone(ClassHierarchy) - Constructor for class harpoon.Analysis.TypeInference.ClassCone
Creates a ClassCone.
classConst(TreeFactory, HCodeElement, DerivationGenerator, HClass) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which represents a reference to a Class constant.
classConst(TreeFactory, HCodeElement, DerivationGenerator, HClass) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
classData(HClass) - Method in class harpoon.Analysis.Realtime.RealtimeRuntime
Tag all classes with javax.realtime.ImmortalMemory java.lang.Object.memoryArea that has a field javax.realtime.ImmortalMemory.constant = true; Also emit data to deal with const char*'s that can be created when Realtime.DEBUG_REF.
classData(HClass) - Method in class harpoon.Backend.Generic.Runtime
Returns a list of HDatas which are needed for the given class.
classData(HClass) - Method in class harpoon.Backend.Runtime1.Runtime
 
classData(HClass) - Method in class harpoon.Backend.RuntimeTiny.Runtime
 
ClassDataException - Exception in harpoon.IR.RawClass
Specialized IOException class to handle malformed class files.
ClassDataException() - Constructor for exception harpoon.IR.RawClass.ClassDataException
 
ClassDataException(String) - Constructor for exception harpoon.IR.RawClass.ClassDataException
 
ClassDataInputStream - Class in harpoon.IR.RawClass
A specialized input stream reader for java bytecode files.
ClassDataInputStream(InputStream) - Constructor for class harpoon.IR.RawClass.ClassDataInputStream
Creates a ClassDataInputStream from a standard InputStream.
ClassDataOutputStream - Class in harpoon.IR.RawClass
A specialized output stream writer for java bytecode files.
ClassDataOutputStream(OutputStream) - Constructor for class harpoon.IR.RawClass.ClassDataOutputStream
Constructs a ClassDataOutputStream from a standard OutputStream.
classDepth(HClass) - Method in class harpoon.Backend.Maps.ClassDepthMap
Return the nesting depth of the given class.
classDepth(HClass) - Method in class harpoon.Backend.Maps.DefaultClassDepthMap
 
ClassDepthMap - Class in harpoon.Backend.Maps
A ClassDepthMap reports the nesting depth of a given class, with java.lang.Object given nesting depth 0.
ClassDepthMap() - Constructor for class harpoon.Backend.Maps.ClassDepthMap
 
classes() - Method in class harpoon.Analysis.ClassHierarchy
Returns the set of all reachable/usable classes.
classes - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
classes() - Method in class harpoon.Analysis.EventDriven.EventDriven
 
classes - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
classes() - Method in class harpoon.Analysis.Quads.QuadClassHierarchy
 
classes - Variable in class harpoon.IR.RawClass.AttributeInnerClasses
Each array element records a class with an encoded name, its defining scope, its simple name, and its originally declared access flags.
classes(int) - Method in class harpoon.IR.RawClass.AttributeInnerClasses
 
ClassFieldMap - Class in harpoon.Backend.Analysis
A ClassFieldMap is a FieldMap for non-static fields of a class.
ClassFieldMap() - Constructor for class harpoon.Backend.Analysis.ClassFieldMap
Creates a ClassFieldMap.
ClassFile - Class in harpoon.IR.RawClass
Represents a java bytecode class file.
ClassFile(ClassDataInputStream) - Constructor for class harpoon.IR.RawClass.ClassFile
Create a ClassFile object by reading data from a bytecode file.
ClassFile(InputStream) - Constructor for class harpoon.IR.RawClass.ClassFile
Create a ClassFile object by reading data from a bytecode file.
ClassHierarchy - Class in harpoon.Analysis
A ClassHierarchy enumerates reachable/usable classes and callable methods.
ClassHierarchy() - Constructor for class harpoon.Analysis.ClassHierarchy
 
classHierarchy - Variable in class harpoon.Main.CompilerStageEZ
 
classmap - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
ClassMethodMap - Class in harpoon.Backend.Analysis
A ClassMethodMap is a method map for virtual methods of an object (not static, not private, not constructors).
ClassMethodMap() - Constructor for class harpoon.Backend.Analysis.ClassMethodMap
Creates a ClassMethodMap.
classpaths() - Static method in class harpoon.ClassFile.Loader
Iterate over the components of the system CLASSPATH.
ClassReplacer - Class in harpoon.Analysis.Realtime
ClassReplacer is a MethodMutator which works on any QuadForm and replaces NEW's and CALL's to one class with NEW's and CALL's to another class using a mapping function to map methods of one to methods of the other.
ClassReplacer(HCodeFactory, HClass, HClass) - Constructor for class harpoon.Analysis.Realtime.ClassReplacer
Construct a ClassReplacer with an HCodeFactory that will replace the HClass from with to.
classToResource(String) - Static method in class harpoon.ClassFile.Loader
Translate a class name into a corresponding resource name.
CLAZ_CLAZINFO - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_COMPONENT_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_DEPTH_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_DISPLAY_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_EXTRAINFO_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_GCENTRY_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_INTERFACES_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_INTERFZ_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_METHODS_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CLAZ_SIZE_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
clazNumber(HClass) - Method in class harpoon.Backend.RuntimeTiny.CompleteClazNumbering
 
clazNumber(HClass) - Method in class harpoon.Backend.RuntimeTiny.PreOrderClazNumbering
Returns the number associated with the given HClass.
clazShrink - Static variable in class harpoon.Backend.RuntimeTiny.Runtime
 
clazzPtrOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset of the class pointer
clear(HMethod) - Method in class harpoon.Analysis.EventDriven.LockRemove
 
clear(HMethod) - Method in class harpoon.Analysis.MemOpt.PreallocOpt.SafeCachingCodeFactory
 
clear() - Static method in class harpoon.Analysis.PA2.Stats
 
clear() - Method in class harpoon.Analysis.Partition.WeightedGraph
 
clear() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
clear(Code) - Method in class harpoon.Analysis.PreciseGC.MRAFactory
Removes representation of Code c from this factory.
clear(HMethod) - Method in class harpoon.Analysis.Quads.MethodInliningCodeFactory
Removes representation of method m from all caches in this factory and its parents.
clear(HMethod) - Method in class harpoon.Analysis.Quads.QuadCounter
Clears HMethod m from the cache.
clear(HMethod) - Method in class harpoon.Analysis.Realtime.PrintFactory
 
clear(HMethod) - Method in class harpoon.Analysis.Transactions.CloneImplementer
 
clear(HMethod) - Method in class harpoon.Analysis.UseDefChecker
 
clear(HMethod) - Method in class harpoon.ClassFile.CachingCodeFactory
Remove the cached representation of m from this CachingCodeFactory and its parent.
clear(HMethod) - Method in interface harpoon.ClassFile.HCodeFactory
Removes representation of method m from all caches in this factory and its parents.
clear(HMethod) - Method in class harpoon.Util.BasicBlocks.CachingBBConverter
Remove from the internal cache the result for hm.
clear() - Method in class harpoon.Util.BasicBlocks.CachingBBConverter
Completely clears the internal cache.
clear() - Method in class harpoon.Util.BinHeapPriorityQueue
 
clear(HMethod) - Method in class harpoon.Util.LightBasicBlocks.CachingLBBConverter
Remove from the internal cache the result for hm.
clear() - Method in class harpoon.Util.LightBasicBlocks.CachingLBBConverter
Completely clears the internal cache.
clear() - Method in class harpoon.Util.LightBasicBlocks.CachingSCCLBBFactory
Clears the cache of previously computed results.
clear() - Method in class harpoon.Util.TypeInference.CachingArrayInfo
Clears the cache.
clearBit(Object) - Static method in class harpoon.Runtime.PreciseGC.WriteBarrier
dummy method for clearing dynamic write barrier bit
clearComment() - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
clearDecl() - Method in class harpoon.Backend.Generic.MaxMunchCG
 
clearHashBit(TreeFactory, HCodeElement, DerivationGenerator, Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
clearNode(WGNode) - Method in class harpoon.Analysis.Partition.WeightedGraph
 
clone(HMethod) - Method in class harpoon.Analysis.EnvBuilder.EnvCode
Clone this code representation.
clone(HMethod) - Method in class harpoon.Analysis.EventDriven.EventDrivenCode
Clone this code representation.
clone(HMethod) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
clone(Derivation.DList) - Static method in class harpoon.Analysis.Maps.Derivation.DList
Returns a clean copy of this DList.
clone() - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
Creates a new, independent set of edges (independent = the operations on the new relation won't affect the old one).
clone() - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Produces a copy of this object.
clone() - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Clone this object.
clone() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.LightRelation
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
clone() - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
clone() - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
clone does a deep copy of this object.
clone() - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
clone produces a copy of the this Parallel Interaction Graph.
clone() - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
clone creates a copy of this thread map; by doing a simple shallow copy of the hash field.
clone() - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Deep copy of a PointsToGraph.
clone() - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Clones this relation.
clone() - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
Creates a new, independent relation (the operations on the new relation won't affect the old one).
clone(HMethod) - Method in class harpoon.ClassFile.HCode
Clone this HCode, possibly moving it to a different method.
clone() - Method in class harpoon.ClassFile.HCode
Clone this HCode and all associated HCodeElements.
clone(HClass) - Method in class harpoon.ClassFile.HData
Clone this HData, possibly moving it to a different HClass.
clone() - Method in class harpoon.Interpret.Tree.UndefinedRef
 
clone(HMethod) - Method in class harpoon.IR.Bytecode.Code
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.LowQuad.LowQuadNoSSA
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.LowQuad.LowQuadSSA
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.LowQuad.LowQuadSSI
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Quads.Code
Clone this code representation.
clone() - Method in class harpoon.IR.Quads.Quad
 
clone(QuadFactory, CloningTempMap) - Method in class harpoon.IR.Quads.Quad
Clone a quad into a new quad factory, renaming all of the temps according to tm (which ought to ensure that all the new temps belong to the TempFactory of the new QuadFactory).
clone(QuadFactory, Quad) - Static method in class harpoon.IR.Quads.Quad
Create a new copy of a string of Quads starting at the given header using QuadFactory.
clone(HMethod) - Method in class harpoon.IR.Quads.QuadNoSSA
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Quads.QuadRSSx
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Quads.QuadSSA
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Quads.QuadSSI
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Quads.QuadWithTry
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Quads.ResilientNoSSA
Clone this code representation.
clone(HMethod, Frame) - Method in class harpoon.IR.Tree.CanonicalTreeCode
Clone this code representation.
clone(HMethod, Frame) - Method in class harpoon.IR.Tree.Code
Clone this code representation.
clone(HMethod) - Method in class harpoon.IR.Tree.Code
Clone this code representation.
clone(HMethod, Frame) - Method in class harpoon.IR.Tree.OptimizedTreeCode
Clone this code representation.
clone(TreeFactory, Tree, Tree.CloneCallback) - Static method in class harpoon.IR.Tree.Tree
Returns a clone of root.
clone() - Method in class harpoon.IR.Tree.Tree
Clone a subtree.
clone(HMethod, Frame) - Method in class harpoon.IR.Tree.TreeCode
Clone this code representation.
clone(TempFactory) - Method in class harpoon.Temp.Temp
Clones a Temp into a different TempFactory.
clone() - Method in class harpoon.Temp.Temp
Clones a Temp using the same TempFactory.
clone() - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Clones a Spec.TypeSet.
clone() - Method in class harpoon.Util.CloneableIterator
 
CloneableIterator - Class in harpoon.Util
CloneableIterator is a wrapper around Iterator that is safely Cloneable.
CloneableIterator(Iterator) - Constructor for class harpoon.Util.CloneableIterator
Creates a CloneableIterator using iter as its source.
cloneCallback(TreeDerivation) - Method in class harpoon.IR.Tree.DerivationGenerator
 
cloneHCode(HCode, HMethod) - Method in class harpoon.Analysis.PreciseGC.AllocationHoisting
Clones HCode and creates an iMap2 entry for the cloned code.
cloneHCode(HCode, HMethod) - Method in class harpoon.Analysis.Quads.CoalescingToNoSSA
 
cloneHCode(HCode, HMethod) - Method in class harpoon.Analysis.Quads.DispatchTreeTransformation
 
cloneHCode(HCode<Quad>, HMethod) - Method in class harpoon.Analysis.Quads.MemoryOptimization
 
cloneHCode(HCode, HMethod) - Method in class harpoon.Analysis.Transactions.SyncTransformer
 
cloneHCode(HCode<HCE>, HMethod) - Method in class harpoon.Analysis.Transformation.MethodMutator
Override this method if you do not want the mutatable HCode to be a straight clone of the original HCode: for example, if the input HCodes were QuadSSI and you wanted to clone them into QuadRSSIs before mutating.
cloneHCode(HCode, HMethod) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Override this method if you do not want the mutatable HCode to be a straight clone of the original HCode: for example, if the input HCodes were QuadSSI and you wanted to clone them into QuadRSSIs before mutating.
cloneHelper(Code, Code) - Method in class harpoon.IR.LowQuad.Code
 
cloneHelper(Code) - Method in class harpoon.IR.Quads.Code
Helper for clone
cloneHelper(Code, Code) - Method in class harpoon.IR.Quads.Code
Helper for clone
cloneHelper(Code, DerivationGenerator) - Method in class harpoon.IR.Tree.Code
Helps to create a proper HCodeAndMaps during cloning
CloneImplementer - Class in harpoon.Analysis.Transactions
CloneImplementer adds synthetic specialized implementations for all clone methods.
CloneImplementer(HCodeFactory, Linker, Set) - Constructor for class harpoon.Analysis.Transactions.CloneImplementer
Creates a CloneImplementer based on the given HCodeFactory, which must produce some QuadSSI form.
cloneMutateAssem(String) - Method in class harpoon.IR.Assem.Instr
Clones this, mutating the assembly string.
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.Instr
Clones this, mutating the assembly string.
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.InstrCALL
 
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.InstrDIRECTIVE
 
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.InstrJUMP
 
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.InstrLABEL
 
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.InstrMEM
 
cloneMutateAssem(InstrFactory, String) - Method in class harpoon.IR.Assem.InstrMOVE
 
CloningTempMap - Class in harpoon.Temp
A CloningTempMap maps Temps from one TempFactory to equivalent Temps in another, creating new Temps as necessary.
CloningTempMap(TempFactory, TempFactory) - Constructor for class harpoon.Temp.CloningTempMap
Creates a CloningTempMap, given the source and destination TempFactorys.
CloningVisitor - Class in harpoon.Analysis.EventDriven
CloningVisitor
CloningVisitor(Set, Set, Map, Map, QuadLiveness, Set, Map, HCode, CachingCodeFactory, AllCallers.MethodSet, HMethod, Linker, ClassHierarchy, Set, Set, boolean, TypeMap, boolean, boolean, Set) - Constructor for class harpoon.Analysis.EventDriven.CloningVisitor
 
close() - Method in class harpoon.Backend.PreciseC.TreeToC
 
cmm - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
CMPEQ - Static variable in class harpoon.IR.Tree.Bop
If equal-to, then 1 else 0.
CMPEQ - Static variable in class harpoon.Tools.PatMat.Sym
 
CMPGE - Static variable in class harpoon.IR.Tree.Bop
If greater-than-or-equal-to, then 1 else 0.
CMPGE - Static variable in class harpoon.Tools.PatMat.Sym
 
CMPGT - Static variable in class harpoon.IR.Tree.Bop
If greater-than, then 1 else 0.
CMPGT - Static variable in class harpoon.Tools.PatMat.Sym
 
CMPLE - Static variable in class harpoon.IR.Tree.Bop
If less-than-or-equal-to, then 1 else 0.
CMPLE - Static variable in class harpoon.Tools.PatMat.Sym
 
CMPLT - Static variable in class harpoon.IR.Tree.Bop
If less-than, then 1 else 0.
CMPLT - Static variable in class harpoon.Tools.PatMat.Sym
 
CMPNE - Static variable in class harpoon.IR.Tree.Bop
If not-equal-to, then 1 else 0.
CMPNE - Static variable in class harpoon.Tools.PatMat.Sym
 
cn - Variable in class harpoon.Backend.RuntimeTiny.Runtime
 
coalesce() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
coalesce(AppelRegAllocClasses.Move, AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
CoalescingToNoSSA - Class in harpoon.Analysis.Quads
CoalescingToNoSSA converts SSA, SSI, and RSSx forms to No-SSA form, *coalescing* variables mentioned in phi and sigma statements where possible instead of inserting moves.
CoalescingToNoSSA(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.CoalescingToNoSSA
Creates a CoalescingToNoSSA.
code - Variable in class harpoon.Analysis.Instr.RegAlloc
Generic.Code for this.
code - Variable in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
Code - Class in harpoon.Backend.CSAHack.RegAlloc
Code
Code(HMethod, Instr, Derivation, Frame) - Constructor for class harpoon.Backend.CSAHack.RegAlloc.Code
Creates a Code.
Code - Class in harpoon.Backend.Generic
Generic.Code is an abstract superclass of codeviews which use Instrs.
Code(Code, Instr, Derivation, String) - Constructor for class harpoon.Backend.Generic.Code
Generates a new Generic.Code from another Generic.Code, code, with i as the root instruction (instead of whatever root was used in code, and codeName as the value that would be returned by a call getName().
Code(Code) - Constructor for class harpoon.Backend.Generic.Code
 
Code - Class in harpoon.IR.Assem
IR.Assem.Code is an abstract superclass of codeviews which use Instrs.
Code(HMethod, Frame, String) - Constructor for class harpoon.IR.Assem.Code
constructor.
Code(HMethod, Frame) - Constructor for class harpoon.IR.Assem.Code
constructor.
Code - Class in harpoon.IR.Bytecode
Bytecode.Code is a code view that exposes the raw java classfile bytecodes.
Code(HMethod, MethodInfo) - Constructor for class harpoon.IR.Bytecode.Code
Constructor.
Code - Class in harpoon.IR.LowQuad
LowQuad.Code is an abstract superclass of codeviews using the components in IR.LowQuad.
Code(HMethod, Quad) - Constructor for class harpoon.IR.LowQuad.Code
 
Code - Class in harpoon.IR.Quads
Quads.Code is an abstract superclass of codeviews using the components in IR.Quads.
Code(HMethod, Quad) - Constructor for class harpoon.IR.Quads.Code
constructor.
code - Variable in class harpoon.IR.RawClass.AttributeCode
The code array gives the actual bytes of Java Virtual Machine code that implement the method.
Code - Class in harpoon.IR.Tree
Tree.Code is an abstract superclass of codeviews using the components in IR.Tree.
Code(HMethod, Tree, Frame) - Constructor for class harpoon.IR.Tree.Code
constructor.
CODE - Static variable in class harpoon.IR.Tree.SEGMENT
Read-only instruction memory
Code.ExceptionEntry - Class in harpoon.IR.Bytecode
Represents exception handlers in this code view.
Code.TreeFactory - Class in harpoon.IR.Tree
Create a proper TreeFactory.
code2str(HCodeElement) - Static method in class harpoon.Util.Util
Returns the string representation of the code instruction q in the formay: source_file:line_number instruction.
code_length() - Method in class harpoon.IR.RawClass.AttributeCode
 
codeFactory(HCodeFactory, Linker, HMethod) - Static method in class harpoon.Analysis.Counters.CounterFactory
HCodeFactory that will add calls to the counter-printing epilog at the end of the given main method and before calls to Runtime.exit().
codeFactory(HCodeFactory, Frame, RegAlloc.Factory) - Static method in class harpoon.Analysis.Instr.RegAlloc
 
codeFactory(HCodeFactory, Frame) - Static method in class harpoon.Analysis.Instr.RegAlloc
Creates a register-allocating HCodeFactory for "instr" form.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.LowQuad.DerivationChecker
Create an HCodeFactory that will check the derivation of every "converted" HCode.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.LowQuad.Loop.LoopOptimize
Returns a HCodeFactory that uses LoopOptimize.
codeFactory(HCodeFactory, InstrumentSyncOps) - Static method in class harpoon.Analysis.PointerAnalysis.InstrumentSyncOps
Returns a HCodeFactory that uses InstrumentSyncOps.
codeFactory(HCodeFactory, Frame, Linker) - Static method in class harpoon.Analysis.PreciseGC.DynamicWBTreePass
Code factory for applying DynamicWBTreePass to a canonical tree.
codeFactory(Frame, HCodeFactory, Linker) - Static method in class harpoon.Analysis.PreciseGC.WriteBarrierConstElim
Code factory for applying WriteBarrierConstElim/code> to a canonical tree.
codeFactory(HCodeFactory) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierPostPass
Code factory for applying the post pass to the given tree form.
codeFactory() - Method in class harpoon.Analysis.PreciseGC.WriteBarrierStats
 
codeFactory(HCodeFactory, Frame, ClassHierarchy, Linker) - Static method in class harpoon.Analysis.PreciseGC.WriteBarrierTreePass
Code factory for applying WriteBarrierTreePass to a canonical tree.
codeFactory() - Method in class harpoon.Analysis.Quads.InitializerTransform
 
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Quads.SCC.SCCOptimize
Returns a code factory that uses SCCOptimize.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Quads.SSIStats
 
codeFactory(HCodeFactory) - Method in class harpoon.Analysis.Realtime.HeapCheckAdder
Code factory for adding heap checks to the given tree form.
codeFactory() - Method in class harpoon.Analysis.SizeOpt.Field2Method
 
codeFactory() - Method in class harpoon.Analysis.SizeOpt.FieldReducer
 
codeFactory() - Method in class harpoon.Analysis.SizeOpt.MZFCompressor
 
codeFactory() - Method in class harpoon.Analysis.Transactions.SyncTransformer
 
codeFactory() - Method in class harpoon.Analysis.Transformation.MethodMutator
Returns a HCodeFactory containing representations for the methods altered by the MethodMutator.
codeFactory() - Method in class harpoon.Analysis.Transformation.MethodSplitter
Returns a HCodeFactory containing representations for the methods split by the MethodSplitter.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Tree.AlgebraicSimplification
Code factory for applying the default set of simplifications to the given tree form.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Tree.Canonicalize
Code factory for applying the default set of simplifications to the given tree form.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Tree.DeadCodeElimination
Code factory for applying DeadCodeElimination to a canonical tree.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Tree.DerivationChecker
Create an HCodeFactory that will check the derivations of every "converted" HCode.
codeFactory() - Method in class harpoon.Analysis.Tree.DominatingMemoryAccess
Standard interface to run this analysis
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Tree.JumpOptimization
Code factory for applying JumpOptimization to a canonical tree.
codeFactory(HCodeFactory) - Static method in class harpoon.Analysis.Tree.MemHoisting
Code factory for applying MemHoisting to a canonical tree.
codeFactory(HCodeFactory, List<Simplification.Rule>) - Static method in class harpoon.Analysis.Tree.Simplification
Code factory for applying a set of simplification rules to tree form.
codeFactory(RegAlloc.IntermediateCodeFactory, Frame) - Method in class harpoon.Backend.Analysis.BasicGCInfo
Returns an IntermediateCodeFactory that inserts InstrLABELs at garbage collection points and stores the information needed by the garbage collector in this.
codeFactory(HCodeFactory) - Method in class harpoon.Backend.Analysis.GCTraceStore
 
codeFactory(HCodeFactory) - Static method in class harpoon.Backend.Analysis.InsertWriteBarrier
Code factory for inserting write barriers to a tree.
codeFactory(HCodeFactory, Frame) - Static method in class harpoon.Backend.Analysis.MakeGCThreadSafe
Code factory for adding GC polling calls to a canonical tree.
codeFactory(RegAlloc.IntermediateCodeFactory, Frame) - Method in class harpoon.Backend.Generic.GCInfo
Creates an IntermediateCodeFactory that prepares the code for garbage collection.
codeFactory() - Static method in class harpoon.IR.Bytecode.Code
Return an HCodeFactory for Bytecode form.
codeFactory(HCodeFactory) - Static method in class harpoon.IR.LowQuad.LowQuadNoSSA
Return a code factory for LowQuadNoSSA, given a code factory for either LowQuadSSI.
codeFactory() - Static method in class harpoon.IR.LowQuad.LowQuadNoSSA
Return a code factory for LowQuadNoSSA, using the default code factory for LowQuadSSI
codeFactory(HCodeFactory) - Static method in class harpoon.IR.LowQuad.LowQuadSSA
Return a code factory for LowQuadSSA, given a code factory for LowQuadSSI.
codeFactory() - Static method in class harpoon.IR.LowQuad.LowQuadSSA
Return a code factory for LowQuadSSA, using the default code factory for LowQuadSSI
codeFactory(HCodeFactory) - Static method in class harpoon.IR.LowQuad.LowQuadSSI
Return a code factory for LowQuadSSI, given a code factory for QuadSSI.
codeFactory() - Static method in class harpoon.IR.LowQuad.LowQuadSSI
Return a code factory for LowQuadSSI, using the default code factory for harpoon.IR.Quads.QuadSSI
codeFactory(HCodeFactory) - Static method in class harpoon.IR.Quads.QuadNoSSA
Return a code factory for QuadNoSSA, given a code factory for QuadWithTry or QuadSSI.
codeFactory() - Static method in class harpoon.IR.Quads.QuadNoSSA
Return a code factory for QuadNoSSA, using the default code factory for QuadWithTry.
codeFactory(HCodeFactory) - Static method in class harpoon.IR.Quads.QuadRSSx
Return a code factory for QuadRSSx, given a code factory for QuadNoSSA or QuadSSI.
codeFactory(HCodeFactory) - Static method in class harpoon.IR.Quads.QuadSSA
Return a code factory for QuadSSA, given a code factory for QuadNoSSA.
codeFactory() - Static method in class harpoon.IR.Quads.QuadSSA
Return a code factory for QuadSSA, using the default code factory for QuadSSI.
codeFactory(HCodeFactory) - Static method in class harpoon.IR.Quads.QuadSSI
Return a code factory for QuadSSI, given a code factory for QuadNoSSA.
codeFactory() - Static method in class harpoon.IR.Quads.QuadSSI
Return a code factory for QuadSSI, using the default code factory for QuadNoSSA.
codeFactory(HCodeFactory) - Static method in class harpoon.IR.Quads.QuadWithTry
Return a code factory for QuadWithTry, given a code factory for Bytecode or QuadNoSSA.
codeFactory() - Static method in class harpoon.IR.Quads.QuadWithTry
Return a code factory for QuadWithTry, using the default code factory for Bytecode.
codeFactory(HCodeFactory, ClassHierarchy) - Static method in class harpoon.IR.Quads.ResilientNoSSA
Return a code factory for ResilientNoSSA, given a code factory for QuadWithTry.
codeFactory(HCodeFactory, Set, Set) - Static method in class harpoon.IR.Quads.ThreadInliner
Returns a HCodeFactory that uses LoopOptimize.
codeFactory(HCodeFactory, Frame) - Static method in class harpoon.IR.Tree.CanonicalTreeCode
Return a code factory for CanonicalTreeCode, given a code factory for TreeCode.
codeFactory(Frame) - Static method in class harpoon.IR.Tree.CanonicalTreeCode
Return a code factory for CanonicalTreeCode, using the default code factory for TreeCode
codeFactory(HCodeFactory, Frame) - Static method in class harpoon.IR.Tree.OptimizedTreeCode
Return a code factory for OptimizedTreeCode, given a code factory for CanonicalTreeCode.
codeFactory(HCodeFactory, Frame, OptimizedTreeCode.TreeOptimizer[]) - Static method in class harpoon.IR.Tree.OptimizedTreeCode
Return a code factory for OptimizedTreeCode, given a code factory for CanonicalTreeCode, a Frame, and a set of optimizations to perform.
codeFactory(Frame) - Static method in class harpoon.IR.Tree.OptimizedTreeCode
Return a code factory for LowQuadNoSSA, using the default code factory for LowQuadNoSSA
codeFactory(HCodeFactory, Frame) - Static method in class harpoon.IR.Tree.TreeCode
Returns a code factory for TreeCode, given a code factory for LowQuadNoSSA or LowQuadSSI.
codeFactory(Frame) - Static method in class harpoon.IR.Tree.TreeCode
Return a code factory for TreeCode, using the default code factory for LowQuadSSI
codeFactoryWithTypes(HCodeFactory) - Static method in class harpoon.IR.Quads.QuadNoSSA
Return a code factory for QuadNoSSA, given a code factory for QuadSSI.
CodeGen - Class in harpoon.Backend.Generic
Generic.CodeGen is a general class for specific Backends to extend.
CodeGen(Frame) - Constructor for class harpoon.Backend.Generic.CodeGen
Creates a Generic.CodeGen.
CodeGen - Class in harpoon.Backend.MIPS
MIPS.CodeGen is a code-generator for the MIPS II architecture.
CodeGen(Frame, boolean) - Constructor for class harpoon.Backend.MIPS.CodeGen
 
CodeGen - Class in harpoon.Backend.Sparc
Sparc.CodeGen is a code-generator for the Sparc architecture.
CodeGen(Frame) - Constructor for class harpoon.Backend.Sparc.CodeGen
 
CodeGen - Class in harpoon.Backend.StrongARM
StrongARM.CodeGen is a code-generator for the ARM architecture.
CodeGen(Frame, boolean) - Constructor for class harpoon.Backend.StrongARM.CodeGen
 
CodeGen.InstrCC - Class in harpoon.Backend.Sparc
Sub-class to indicate dependencies on the condition code register for later optimization.
CodeGen.InstrCC(InstrFactory, HCodeElement, String, Temp[], Temp[]) - Constructor for class harpoon.Backend.Sparc.CodeGen.InstrCC
 
CodeGen.InstrCC(InstrFactory, HCodeElement, String, Temp[], Temp[], boolean, List<Label>) - Constructor for class harpoon.Backend.Sparc.CodeGen.InstrCC
 
CodeGen.InstrDELAYSLOT - Class in harpoon.Backend.Sparc
Sub-class to represent delay-slots.
CodeGen.InstrDELAYSLOT(InstrFactory, HCodeElement) - Constructor for class harpoon.Backend.Sparc.CodeGen.InstrDELAYSLOT
 
CodeGenerator - Class in harpoon.Main
CodeGenerator
CodeGenerator() - Constructor for class harpoon.Main.CodeGenerator
 
CodeGeneratorGenerator - Class in harpoon.Tools.PatMat
CodeGeneratorGenerator generates a java program to convert Trees into Instr sequences.
CodeGeneratorGenerator(Spec, String) - Constructor for class harpoon.Tools.PatMat.CodeGeneratorGenerator
Creates a CodeGeneratorGenerator.
codename - Static variable in class harpoon.Analysis.LowQuad.Loop.MyLowQuadNoSSA
 
codename - Static variable in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
codename - Static variable in class harpoon.IR.Bytecode.Code
The name of this code view.
codename - Static variable in class harpoon.IR.LowQuad.LowQuadNoSSA
The name of this code view.
codename - Static variable in class harpoon.IR.LowQuad.LowQuadSSA
The name of this code view.
codename - Static variable in class harpoon.IR.LowQuad.LowQuadSSI
The name of this code view.
codename - Static variable in class harpoon.IR.Quads.QuadNoSSA
The name of this code view.
codename - Static variable in class harpoon.IR.Quads.QuadRSSx
The name of this code view.
codename - Static variable in class harpoon.IR.Quads.QuadSSA
The name of this code view.
codename - Static variable in class harpoon.IR.Quads.QuadSSI
The name of this code view.
codename - Static variable in class harpoon.IR.Quads.QuadWithTry
The name of this code view.
codename - Static variable in class harpoon.IR.Quads.ResilientNoSSA
The name of this code view.
codename - Static variable in class harpoon.IR.Tree.CanonicalTreeCode
The getName() method return codename, which is "canonical-tree" for this Code.
codename - Static variable in class harpoon.IR.Tree.OptimizedTreeCode
 
codename - Static variable in class harpoon.IR.Tree.TreeCode
The getName() method return codename, which is "tree" for this Code.
COLL_HACK - Static variable in class harpoon.Analysis.MetaMethods.MetaCallGraphImpl
 
COLLECT_RUNTIME_STATS - Static variable in class harpoon.Analysis.Realtime.Realtime
Add code to the executable to enable gathering of runtime statistics.
CollectSyncStats - Class in harpoon.Analysis.Quads
CollectSyncStats is used at run time to collect information about synchronization operations.
CollectSyncStats() - Constructor for class harpoon.Analysis.Quads.CollectSyncStats
 
COLON - Static variable in class harpoon.Tools.Annotation.Sym
 
COLON - Static variable in class harpoon.Tools.PatMat.Sym
 
Color - Class in harpoon.Analysis.GraphColoring
Color is a placeholder for specific graph colorers.
Color() - Constructor for class harpoon.Analysis.GraphColoring.Color
Creates a Color.
color - Variable in class harpoon.Analysis.GraphColoring.ColorableGraph.IllegalColor
Color intended for assignment.
color - Variable in class harpoon.Analysis.GraphColoring.ColorableNode
 
color(ColorableGraph, List) - Method in class harpoon.Analysis.GraphColoring.GraphColorer
Attempts to color graph.
color(ColorableGraph, List) - Method in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer
 
color(ColorableGraph, List) - Method in class harpoon.Analysis.GraphColoring.SimpleGraphColorer
Colors graph.
color(ColorableGraph, List) - Method in class harpoon.Analysis.GraphColoring.UnboundedGraphColorer
 
ColorableGraph - Interface in harpoon.Analysis.GraphColoring
ColorableGraph extends GraphColoring.Graph with methods that are useful for a graph-coloring system.
ColorableGraph.AlreadyColoredException - Exception in harpoon.Analysis.GraphColoring
AlreadyColoredException will be thrown on attempt to call g.setColor(node,color) when n is present in the node -> color mapping.
ColorableGraph.AlreadyColoredException(Object) - Constructor for exception harpoon.Analysis.GraphColoring.ColorableGraph.AlreadyColoredException
 
ColorableGraph.AlreadyColoredException(String, Object) - Constructor for exception harpoon.Analysis.GraphColoring.ColorableGraph.AlreadyColoredException
 
ColorableGraph.AlreadyHiddenException - Exception in harpoon.Analysis.GraphColoring
AlreadyHiddenException will be thrown on attempt to call g.addNode(n) while n is a member of the set of hidden nodes in g.
ColorableGraph.AlreadyHiddenException() - Constructor for exception harpoon.Analysis.GraphColoring.ColorableGraph.AlreadyHiddenException
 
ColorableGraph.AlreadyHiddenException(String) - Constructor for exception harpoon.Analysis.GraphColoring.ColorableGraph.AlreadyHiddenException
 
ColorableGraph.IllegalColor - Class in harpoon.Analysis.GraphColoring
IllegalColor will be thrown on an attempt to color a node with a color that for some reason is not legal for that node in this graph.
ColorableGraph.IllegalColor(Object, Color) - Constructor for class harpoon.Analysis.GraphColoring.ColorableGraph.IllegalColor
Constructs an IllegalColor with node = n and color = c.
ColorableNode - Class in harpoon.Analysis.GraphColoring
ColorableNode
ColorableNode() - Constructor for class harpoon.Analysis.GraphColoring.ColorableNode
 
ColorFactory - Class in harpoon.Analysis.GraphColoring
ColorFactory
ColorFactory() - Constructor for class harpoon.Analysis.GraphColoring.ColorFactory
Creates a ColorFactory.
colorGraph(Collection, MultiMap) - Static method in class harpoon.Analysis.MemOpt.MyGraphColorer
 
colorToReg() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
comesFrom(Node) - Method in class harpoon.Backend.CSAHack.Graph.Node
 
COMMA - Static variable in class harpoon.Tools.Annotation.Sym
 
COMMA - Static variable in class harpoon.Tools.PatMat.Sym
 
commit() - Method in class harpoon.Runtime.Transactions.CommitRecord
Commit this (sub)transaction, if possible.
commit(CommitRecord) - Static method in class harpoon.Runtime.Transactions.CommitRecord
Commit a transaction, if possible.
CommitRecord - Class in harpoon.Runtime.Transactions
A CommitRecord keeps track of the status of a transaction.
COMMITTED - Static variable in class harpoon.Runtime.Transactions.CommitRecord
 
commitTransaction() - Method in class harpoon.Runtime.Transactions.CommitRecord
 
commonInterface(HClass, HClass) - Static method in class harpoon.Util.HClassUtil
Find and return the first common superinterface of a pair of interfaces.
commonParent(HClass, HClass) - Static method in class harpoon.Util.HClassUtil
Find a class which is a common parent of both supplied classes.
commonSuper(HClass, HClass) - Static method in class harpoon.Util.HClassUtil
Find and return the first common superclass of a pair of classes.
CommutativityExpander - Class in harpoon.Tools.PatMat
The CommutativityExpander tool expands a set of Spec.Rules to include add'l valid patterns generated from the commutative properties of various Spec.ExpBinops.
COMP - Static variable in class harpoon.Tools.Annotation.Sym
 
comp2impl(HClass) - Method in class harpoon.Analysis.Transactions.AltArrayTransformer
 
compare(HMember, HMember) - Method in class harpoon.ClassFile.HMember.MemberComparator
 
compare(List<T>, List<T>) - Method in class harpoon.Util.ListComparator
 
compare(Map<K, V>, Map<K, V>) - Method in class harpoon.Util.MapComparator
 
compare(SortedMap<K, V>, SortedMap<K, V>) - Method in class harpoon.Util.SortedMapComparator
 
compare(Object, Object) - Method in class harpoon.Util.UComp
Compares its two arguments for order.
compareTo(HClass) - Method in class harpoon.ClassFile.HClass
Compares two HClasses by lexicographic order of their descriptors.
compareTo(HMember) - Method in interface harpoon.ClassFile.HMember
Compares two HMembers lexicographically; first by declaring class, then by name, and lastly by descriptor.
compareTo(Object) - Method in class harpoon.IR.Bytecode.Code.ExceptionEntry
 
compareTo(Instr) - Method in class harpoon.IR.Bytecode.Instr
Natural ordering on Instrs.
compareTo(Quad) - Method in class harpoon.IR.Quads.Quad
 
compareTo(Temp) - Method in class harpoon.Temp.Temp
Comparable interface: sorted by fullname().
compareTo(Object) - Method in class harpoon.Util.Tuple
Does an element-by-element comparison of two Tuples.
compArgs - Variable in class harpoon.Util.Options.Option
 
compatible(PANode, HClass) - Static method in class harpoon.Analysis.PA2.TypeFilter
 
CompilerStage - Class in harpoon.Main
CompilerStage
CompilerStage(String) - Constructor for class harpoon.Main.CompilerStage
 
CompilerStageEZ - Class in harpoon.Main
CompilerStageEZ
CompilerStageEZ(String) - Constructor for class harpoon.Main.CompilerStageEZ
Creates a CompilerStageEZ.
CompilerState - Class in harpoon.Main
CompilerState is an immutable tuple that encapsulates the date required while compiling a program.
CompleteClazNumbering - Class in harpoon.Backend.RuntimeTiny
CompleteClazNumbering extends PreOrderClazNumbering to create a numbering valid for all classes in the given classhierarchy.
CompleteClazNumbering(ClassHierarchy, PreOrderClazNumbering) - Constructor for class harpoon.Backend.RuntimeTiny.CompleteClazNumbering
Creates a CompleteClazNumbering.
CompleteClazNumbering(ClassHierarchy) - Constructor for class harpoon.Backend.RuntimeTiny.CompleteClazNumbering
 
componentCheck(Quad, Temp, Temp, QuadWithTry, UseDef) - Static method in class harpoon.IR.Quads.Pattern
 
componentOf(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which tests the given object expression for membership in the component type of the given array expression.
componentOf(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
COMPONENTOF - Class in harpoon.IR.Quads
COMPONENTOF objects implement the test needed to determine if an ASET needs to throw an exception.
COMPONENTOF(QuadFactory, HCodeElement, Temp, Temp, Temp) - Constructor for class harpoon.IR.Quads.COMPONENTOF
Creates a COMPONENTOF representing a typecheck test.
COMPONENTOF - Static variable in class harpoon.IR.Quads.QuadKind
 
ComponentOfReducer - Class in harpoon.Analysis.Quads
The ComponentOfReducer pass attempts to transform COMPONENTOF operations into (more efficient) INSTANCEOF operations, when this is safe to do.
ComponentOfReducer(HCodeFactory, ExactTypeMap<Quad>, FinalMap) - Constructor for class harpoon.Analysis.Quads.ComponentOfReducer
Creates a ComponentOfReducer.
ComponentOfReducer(HCodeFactory, TypeMap<Quad>, FinalMap) - Constructor for class harpoon.Analysis.Quads.ComponentOfReducer
 
ComponentOfReducer(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.ComponentOfReducer
 
componentTypeOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
If hc is an array type, returns the offset of its component type's class pointer
COMPRESS_LOST_NODES - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
If true, compress all load nodes that escape into an unanalyzed method and/or a static field into the single summar node NodeRepository.LOST_SUMMARY (currently, this is done only at the end of a method, when producing the external version of the ParIntGraph).
compressLostNodes(Set) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
 
CompStagePipeline - Class in harpoon.Main
CompStagePipeline is a special CompilerStage that is the sequential composition of a list of CompilerStages.
CompStagePipeline(List<CompilerStage>, String) - Constructor for class harpoon.Main.CompStagePipeline
Creates a CompStagePipeline.
CompStagePipeline(List<CompilerStage>) - Constructor for class harpoon.Main.CompStagePipeline
 
CompStagePipeline(CompilerStage, CompilerStage, String) - Constructor for class harpoon.Main.CompStagePipeline
 
CompStagePipeline(CompilerStage, CompilerStage) - Constructor for class harpoon.Main.CompStagePipeline
 
compute(Graph<N, E>) - Method in class harpoon.Analysis.Companions.DataFlowSolver
Compute all dataflow facts on the given Graph.
compute(Graph<N, E>) - Method in class harpoon.Analysis.Companions.DataFlowSolver.Forward
 
computeBasicBlocks() - Method in class harpoon.Analysis.Instr.RegAlloc
Computes BasicBlocks for the Code associated with this.
computeEdgeSum(WeightedGraph, WeightedGraph) - Static method in class harpoon.Analysis.Partition.Partition
 
computeInterProcMu(CALL, ParIntGraph, ParIntGraph, PANode[], PointerAnalysis) - Static method in class harpoon.Analysis.PointerAnalysis.ComputeInterProcMuClosure
Compute the node mappings for the inter-procedural analysis, according to the method outlined in Alex Salcianu's SM thesis (Figure 2-8, page 39).
ComputeInterProcMuClosure - Class in harpoon.Analysis.PointerAnalysis
ComputeMuClosure is a [functional-programming style] closure for the computeInterProcMu method.
computeSCCLBB(HMethod) - Method in class harpoon.Util.LightBasicBlocks.CachingSCCLBBFactory
Computes the topologically sorted graph of all the light basic blocks of the hm method.
computeSCCLBB(HMethod) - Method in class harpoon.Util.LightBasicBlocks.SCCLBBFactory
Generates the code of the method hm using the HCodeFactory passed to the constructor of this object, cut it into pieces (i.e.
concreteSpillFactory(RegAlloc.IntermediateCodeFactory, Frame) - Static method in class harpoon.Analysis.Instr.RegAlloc
Produces an HCodeFactory which will transform the abstract spills into concrete spills.
concreteTypes() - Method in interface harpoon.Analysis.PointsToAnalysis.Node
 
CONDENSED_ESCAPE_INFO - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
If false, do not keep track of all un-analyzed methods where a node escapes.
conditionallySingular(HMethod, StaticValue<Quad>) - Method in class harpoon.Analysis.Companions.SingularFinder
 
conditionallySingular(HMethod, StaticValue<HCE>) - Method in interface harpoon.Analysis.Companions.SingularOracle
Returns a set of parameters the given static value is conditionally singular dependent on, or null if there is no such set (the static value is not singular).
configurationSet - Variable in class harpoon.Backend.Generic.Runtime
Return a Set of labels which specify configuration dependencies.
configure(String) - Static method in class harpoon.Analysis.Realtime.Realtime
Configure Realtime Java based on the following command-line options.
conservative(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
conservative coalescing heuristic due to Preston Briggs.
conservative(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
conservative(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
CONSIDER_TYPES - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
If true, then we do not introduce edges about which we can infer that they violate the type declarations: e.g., an edge on the field "foo" from an inside node for new Integer.
CONST - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: constant objects (e.g., Strings)
CONST - Class in harpoon.IR.Quads
CONST objects represent an assignment of a constant value to a compiler temporary.
CONST(QuadFactory, HCodeElement, Temp, Object, HClass) - Constructor for class harpoon.IR.Quads.CONST
Creates a CONST from a destination temporary, and object value and its class type.
CONST - Static variable in class harpoon.IR.Quads.QuadKind
 
CONST - Class in harpoon.IR.Tree
CONST objects are expressions which stand for a constant value.
CONST(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.CONST
 
CONST(TreeFactory, HCodeElement, long) - Constructor for class harpoon.IR.Tree.CONST
 
CONST(TreeFactory, HCodeElement, float) - Constructor for class harpoon.IR.Tree.CONST
 
CONST(TreeFactory, HCodeElement, double) - Constructor for class harpoon.IR.Tree.CONST
 
CONST(TreeFactory, HCodeElement) - Constructor for class harpoon.IR.Tree.CONST
Creates a CONST representing the constant null.
CONST(TreeFactory, HCodeElement, int, boolean, int) - Constructor for class harpoon.IR.Tree.CONST
Creates a CONST with a precisely defined type.
CONST - Static variable in class harpoon.IR.Tree.TreeKind
 
CONST - Static variable in class harpoon.Tools.Annotation.Sym
 
CONST - Static variable in class harpoon.Tools.PatMat.Sym
 
constant() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
constant() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
constant(int) - Method in class harpoon.IR.RawClass.AttributeCode
Lookup a Constant in the constant_pool.
Constant - Class in harpoon.IR.RawClass
The Constant class represents a single item in the constant pool of a class file.
Constant(ClassFile) - Constructor for class harpoon.IR.RawClass.Constant
 
constant_pool - Variable in class harpoon.IR.RawClass.ClassFile
The constant_pool is a table of variable-length structures representing various string constants, class names, field names, and other constants that are referred to within the ClassFile structure and its substructures.
constant_pool_count() - Method in class harpoon.IR.RawClass.ClassFile
 
ConstantClass - Class in harpoon.IR.RawClass
The CONSTANT_Class_info structure is used to represent a class or an interface.
ConstantClass(ClassFile, int) - Constructor for class harpoon.IR.RawClass.ConstantClass
Constructor.
ConstantDouble - Class in harpoon.IR.RawClass
The CONSTANT_Double_info structure represents eight-byte floating-point numeric constants.
ConstantDouble(ClassFile, double) - Constructor for class harpoon.IR.RawClass.ConstantDouble
Constructor.
ConstantFieldref - Class in harpoon.IR.RawClass
The CONSTANT_Fieldref structure represents a field.
ConstantFieldref(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.ConstantFieldref
Constructor.
ConstantFloat - Class in harpoon.IR.RawClass
The CONSTANT_Float_info structure represents four-byte floating-point numeric constants.
ConstantFloat(ClassFile, float) - Constructor for class harpoon.IR.RawClass.ConstantFloat
Constructor.
ConstantInteger - Class in harpoon.IR.RawClass
The CONSTANT_Integer_info structure represents four-byte integer numeric constants.
ConstantInteger(ClassFile, int) - Constructor for class harpoon.IR.RawClass.ConstantInteger
Constructor.
ConstantInterfaceMethodref - Class in harpoon.IR.RawClass
The CONSTANT_InterfaceMethodref structure represents an interface method.
ConstantInterfaceMethodref(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.ConstantInterfaceMethodref
Constructor.
ConstantLong - Class in harpoon.IR.RawClass
The CONSTANT_Long_info structure represents eight-byte integer numeric constants.
ConstantLong(ClassFile, long) - Constructor for class harpoon.IR.RawClass.ConstantLong
Constructor.
ConstantMethodref - Class in harpoon.IR.RawClass
The CONSTANT_Methodref structure represents a method.
ConstantMethodref(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.ConstantMethodref
Constructor.
ConstantNameAndType - Class in harpoon.IR.RawClass
The CONSTANT_NameAndType_info structure is used to represent a field or method, without indicating which class or interface type it belongs to.
ConstantNameAndType(ClassFile, int, int) - Constructor for class harpoon.IR.RawClass.ConstantNameAndType
Constructor.
ConstantPropagation - Class in harpoon.Analysis.Tree
ConstantPropagation performs constant propagation on canonical tree form.
ConstantPropagation(HCodeFactory) - Constructor for class harpoon.Analysis.Tree.ConstantPropagation
Creates a ConstantPropagation.
ConstantString - Class in harpoon.IR.RawClass
The CONSTANT_String_info structure is used to represent constant objects of the type java.lang.String.
ConstantString(ClassFile, int) - Constructor for class harpoon.IR.RawClass.ConstantString
Constructor.
ConstantUtf8 - Class in harpoon.IR.RawClass
The CONSTANT_Utf8_info structure is used to represent constant string values.
ConstantUtf8(ClassFile, String) - Constructor for class harpoon.IR.RawClass.ConstantUtf8
Constructor.
constantValue(HMethod, HField) - Method in class harpoon.Analysis.SizeOpt.ConstructorClassifier
Returns the constant value which field hf is set to whenever the given constructor is executed.
ConstantValue - Class in harpoon.IR.RawClass
The ConstantValue interface provides a standard way for constants to return a wrapped version of their values.
ConstantValue(ClassFile) - Constructor for class harpoon.IR.RawClass.ConstantValue
 
constantvalue_index - Variable in class harpoon.IR.RawClass.AttributeConstantValue
The value of the constantvalue_index must be a valid index into the constant_pool table.
constantvalue_index() - Method in class harpoon.IR.RawClass.AttributeConstantValue
 
ConstMap<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
ConstMap is a mapping from temporaries to their constant values.
constMap(HCE, Temp) - Method in interface harpoon.Analysis.Maps.ConstMap
Determine the constant value of a given temporary in the context of a specific definition.
constMap(HCE, Temp) - Method in class harpoon.Analysis.Maps.ConstMapProxy
 
constMap(HCE, Temp) - Method in class harpoon.Analysis.Maps.DefaultMap
 
constMap(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine the constant value of Temp t.
constMap(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SimpleConstMap
 
constMap(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the constant value of Temp t.
constMap(HField) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the constant value of HField hf.
ConstMapProxy<HCE extends HCodeElement> - Class in harpoon.Analysis.Maps
A ConstMapProxy implements a ConstMap for a cloned HCode given the HCodeAndMaps which specifies its relationship to an HCode for which a ConstMap is known.
ConstMapProxy(HCodeAndMaps<HCE>, ConstMap<HCE>) - Constructor for class harpoon.Analysis.Maps.ConstMapProxy
Creates a ConstMapProxy.
constructMRoots(Set, ClassHierarchy) - Static method in class harpoon.Analysis.MetaMethods.SmartCallGraph
Constructs the set of method roots for the compiled program.
ConstructorClassifier - Class in harpoon.Analysis.SizeOpt
The ConstructorClassifier class takes a look at constructor invocations and determines whether we can do one of several 'mostly-zero field' transformations.
ConstructorClassifier(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.SizeOpt.ConstructorClassifier
Creates a ConstructorClassifier.
contains(WGNode) - Method in class harpoon.Analysis.Partition.WeightedGraph
 
contains(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
contains(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkList
 
contains(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkSet
 
contains(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAWorkStack
 
contains(Object, Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Checks the existence of the relation <key,value>.
contains(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
contains(int, int) - Static method in class harpoon.Analysis.Tree.Simplification
Convenience function to test whether any of the bits in mask are set in val.
contains(HandlerSet, HANDLER) - Static method in class harpoon.IR.Quads.HandlerSet
Determines if a given HandlerSet contains a given HANDLER.
contains(int) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Checks if this contains type.
contains(A, B) - Method in interface harpoon.Util.BinaryRelation
Checks if this relation holds for a given pair.
contains(Object) - Method in class harpoon.Util.BinHeapPriorityQueue
 
contains(Object) - Method in interface harpoon.Util.Worklist
Determines if the Worklist contains an item.
containsEseq(Tree) - Static method in class harpoon.Analysis.Tree.Canonicalize
Testing function, for use in assertions that a given tree is canonical.
containsKey(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
containsKey(Object) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
containsKey(Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Checks the existence of the key key in this relation.
containsKey(Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
containsSigned(int) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Returns true if this contains the specified signed precise type.
containsSmall() - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Returns true if this contains any small types.
containsUnsigned(int) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Returns true if this contains the specified unsigned precise type.
containsValue(Object) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Unsupported yet.
ContBuilder - Class in harpoon.Analysis.ContBuilder
ContBuilder builds continuations for a given CALL using the CALL's HCode, storing the Code for the continuation in the CachingCodeFactory.
ContBuilder(CachingCodeFactory, HCode, CALL, HClass, Temp[]) - Constructor for class harpoon.Analysis.ContBuilder.ContBuilder
Creates a ContBuilder for the designated CALL, given the HCode from which it came.
ContCode - Class in harpoon.Analysis.EventDriven
ContCode builds the code for a Continuation using quad-no-ssa HCode.
ContCode(HMethod) - Constructor for class harpoon.Analysis.EventDriven.ContCode
Creates a ContCode for an HMethod using the HCode from which we want to build the continuation and the CALL at which we want the continuation built.
ContCodeNoSSA - Class in harpoon.Analysis.EventDriven
ContCodeNoSSA builds the code for a Continuation using quad-no-ssa HCode.
ContCodeNoSSA(HMethod) - Constructor for class harpoon.Analysis.EventDriven.ContCodeNoSSA
Creates a ContCodeNoSSA for an HMethod using the HCode from which we want to build the continuation and the CALL at which we want the continuation built.
ContCodeNoSSA(QuadSSI) - Constructor for class harpoon.Analysis.EventDriven.ContCodeNoSSA
 
ContCodeSSI - Class in harpoon.Analysis.EventDriven
ContCodeSSI builds the code for a Continuation using quad-no-ssa HCode.
ContCodeSSI(HMethod) - Constructor for class harpoon.Analysis.EventDriven.ContCodeSSI
Creates a ContCodeSSI for an HMethod using the HCode from which we want to build the continuation and the CALL at which we want the continuation built.
ContCodeSSI(QuadNoSSA) - Constructor for class harpoon.Analysis.EventDriven.ContCodeSSI
 
Context<E> - Class in harpoon.Analysis
A Context object is an opaque representation of a method's calling context, intended to make it easier to generalize across context-sensitive and context-insensitive analyses.
Context() - Constructor for class harpoon.Analysis.Context
 
CONTEXT_INSENSITIVE - Static variable in class harpoon.Analysis.Context
 
CONTEXT_SENSITIVE_1 - Static variable in class harpoon.Analysis.Context
 
CONTEXT_SENSITIVE_2 - Static variable in class harpoon.Analysis.Context
 
CONTINUE - Static variable in class harpoon.Tools.Annotation.Sym
 
convert(MetaCallGraph) - Method in class harpoon.Analysis.EventDriven.EventDriven
Returns the converted main
convert(HMethod) - Method in class harpoon.Analysis.EventDriven.LockRemove
 
convert(HMethod) - Method in interface harpoon.Analysis.Instr.RegAlloc.IntermediateCodeFactory
The HCodes returned by this method are guaranteed to implement the IntermediateCode interface.
convert(Map, Relation) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
convert(Map, Relation) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Convert this relation through the mapping map.
convert(Map, Relation) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
convert(HMethod) - Method in class harpoon.Analysis.Quads.MethodInliningCodeFactory
Make an HCode from an HMethod.
convert(HMethod) - Method in class harpoon.Analysis.Quads.QuadCounter
Converts HMethod m into an HCode and counts the number of Quads returned.
convert(HMethod) - Method in class harpoon.Analysis.Realtime.PrintFactory
 
convert(HMethod) - Method in class harpoon.Analysis.Transactions.ArrayCopyImplementer
 
convert(HMethod) - Method in class harpoon.Analysis.Transactions.CloneImplementer
 
convert(HMethod) - Method in class harpoon.Analysis.UseDefChecker
 
convert(HMethod) - Method in class harpoon.ClassFile.CachingCodeFactory
Convert a method to an HCode, caching the result.
convert(HMethod) - Method in interface harpoon.ClassFile.HCodeFactory
Make an HCode from an HMethod.
convert(Object, Map) - Static method in class harpoon.Util.Util
Converts an objects using the reflexive closure of a map.
convert2bb(HMethod) - Method in class harpoon.Util.BasicBlocks.BBConverter
Converts the code of the method hm to basic blocks.
convert2bb(HMethod) - Method in class harpoon.Util.BasicBlocks.CachingBBConverter
Converts the code of the method hm to BasicBlock.Factory, a basic block view of hm's code.
convert2lbb(HMethod) - Method in class harpoon.Util.LightBasicBlocks.CachingLBBConverter
Returns a LighBasicBlock.Factory for the body of a method.
convert2lbb(HMethod) - Method in class harpoon.Util.LightBasicBlocks.LBBConverter
Returns a LightBasicBlock.Factory for the body of a method.
copied - Variable in class harpoon.Analysis.LowQuad.Loop.Induction
 
copy() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
copy() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
copy(Object) - Method in class harpoon.Analysis.PA2.EdgeSetVar
 
copy(Object) - Method in class harpoon.Analysis.PA2.NodeSetVar
 
copy(Object) - Method in class harpoon.Analysis.PA2.WVar
 
copy(ArrayFactory<T>, T[]) - Static method in class harpoon.Util.Util
Deprecated. The clone() method on arrays works much better, and should be used instead of this method.
copyEdges(PANode, PAEdgeSet) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
copyEdges(PANode, PAEdgeSet) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
count() - Method in class harpoon.Analysis.Quads.QuadCounter
Returns the current count of the number of Quads converted.
counter - Static variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
counter - Static variable in class harpoon.Analysis.GraphColoring.DefaultSparseNode
 
CounterFactory - Class in harpoon.Analysis.Counters
CounterFactory is a state-less instrumentation package, with the goal of making it as easy as possible to add counters and timers to executable code.
Counters - Class in harpoon.Runtime
Counters uses reflection to provide a very light-weight counter package -- light-weight in terms of FLEX code required to add/enable counters, not necessarily light-weight in terms of execution time.
CounterSupport - Class in harpoon.Runtime
CounterSupport provides support for simple instrumentation.
CounterSupport() - Constructor for class harpoon.Runtime.CounterSupport
 
countSA(Code) - Static method in class harpoon.Analysis.PA2.AllocSync.Debug
 
create() - Method in class harpoon.Analysis.PA2.MapRelEdgeSetFactory
 
create(PAEdgeSet) - Method in class harpoon.Analysis.PA2.MapRelEdgeSetFactory
 
createMutableClass(String, HClass) - Method in class harpoon.ClassFile.Linker
Creates a new mutable class with the given name which is based on the given template class.
createMutableClass(String, HClass) - Method in class harpoon.ClassFile.Relinker
Creates a mutable class with the given name which is based on the given template class.
CREATOR - Static variable in class harpoon.Analysis.PreciseGC.RCTransformer
The CREATOR token represents the transformed version of the method.
cs - Variable in class harpoon.Analysis.PA2.IntraProc
 
csSpecialize(Map, CALL) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
 
csSpecialize(CALL) - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the specialized node of this node for call_site.
csSpecialize(Map, CALL) - Method in class harpoon.Analysis.PointerAnalysis.PASync
Specializes this action for a specific call site.
CycleEq - Class in harpoon.Analysis
CycleEq computes cycle equivalence classes for edges in a control flow graph, in O(E) time.
CycleEq(HCode) - Constructor for class harpoon.Analysis.CycleEq
 

D

D2F - Static variable in class harpoon.IR.Bytecode.Op
 
D2F - Static variable in class harpoon.IR.Quads.Qop
Converts a double to a float.
D2I - Static variable in class harpoon.IR.Bytecode.Op
 
D2I - Static variable in class harpoon.IR.Quads.Qop
Converts a double to an int.
D2L - Static variable in class harpoon.IR.Bytecode.Op
 
D2L - Static variable in class harpoon.IR.Quads.Qop
Converts a double to a long.
DADD - Static variable in class harpoon.IR.Bytecode.Op
 
DADD - Static variable in class harpoon.IR.Quads.Qop
Computes the sum of two double values.
DALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
daNum(HCodeElement) - Method in class harpoon.Backend.MIPS.Frame
 
DASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
Data - Class in harpoon.Backend.Runtime1
Data is an abstract superclass with handy useful methods for the harpoon.IR.Tree.Data subclasses in Runtime1.
Data(String, HClass, Frame) - Constructor for class harpoon.Backend.Runtime1.Data
Creates a Data.
Data - Class in harpoon.IR.Tree
Data is an abstract implementation of HData for IR.Tree form.
Data(String, Frame) - Constructor for class harpoon.IR.Tree.Data
 
data - Variable in class harpoon.Tools.PatMat.Spec.StmData
A IR.Tree.CONST or IR.Tree.NAME specifying the value with which to initialize this location.
Data.TreeFactory - Class in harpoon.IR.Tree
Create a proper TreeFactory.
DataClaz - Class in harpoon.Backend.Runtime1
DataClaz lays out the claz tables, including the interface and class method dispatch tables.
DataClaz(Frame, HClass, ClassHierarchy, Runtime.ExtraClazInfo) - Constructor for class harpoon.Backend.Runtime1.DataClaz
Creates a ClassData.
DataClazTable - Class in harpoon.Backend.RuntimeTiny
DataClazTable outputs an indirection table listing all the claz structures used in the program.
DataClazTable(Frame, HClass, ClassHierarchy, ClazNumbering) - Constructor for class harpoon.Backend.RuntimeTiny.DataClazTable
Creates a DataClazTable.
DataConfigChecker - Class in harpoon.Backend.Runtime1
DataConfigChecker outputs some (never used) references which will be unresolved (resulting in linker errors at build-time) unless the runtime configuration matches the flex configuration.
DataConfigChecker(Frame, HClass) - Constructor for class harpoon.Backend.Runtime1.DataConfigChecker
Creates a DataConfigChecker.
DataFlowBasicBlockVisitor - Class in harpoon.Analysis.DataFlow
DataFlowBasicBlockVisitor is a specialized BasicBlockVisitor for performing data flow analysis on a set of BasicBlock.
DataFlowBasicBlockVisitor() - Constructor for class harpoon.Analysis.DataFlow.DataFlowBasicBlockVisitor
 
DataFlowQuadVisitor - Class in harpoon.Analysis.DataFlow
DataFlowQuadVisitor
DataFlowQuadVisitor() - Constructor for class harpoon.Analysis.DataFlow.DataFlowQuadVisitor
 
DataFlowSolver<N extends Graph.Node<N,E>,E extends Graph.Edge<N,E>,FACT> - Class in harpoon.Analysis.Companions
The DataFlowSolver class provides a parameterized framework for building simple data flow analyses for various IRs.
DataFlowSolver() - Constructor for class harpoon.Analysis.Companions.DataFlowSolver
 
DataFlowSolver.Forward<N extends Graph.Node<N,E>,E extends Graph.Edge<N,E>,FACT> - Class in harpoon.Analysis.Companions
DataFlowSolver.Forward is a dataflow solver for forward dataflow analyses.
DataFlowSolver.Forward() - Constructor for class harpoon.Analysis.Companions.DataFlowSolver.Forward
 
DataGC - Class in harpoon.Backend.Runtime1
DataGC outputs the tables needed by the garbage collector.
DataGC(Frame, HClass) - Constructor for class harpoon.Backend.Runtime1.DataGC
Creates a DataGC.
DataInitializers - Class in harpoon.Backend.Runtime1
DataInitializers outputs a table listing the static initializers needed for the program, in the proper dependency order.
DataInitializers(Frame, HClass, List) - Constructor for class harpoon.Backend.Runtime1.DataInitializers
Creates a DataInitializers.
DataInterfaceList - Class in harpoon.Backend.Runtime1
DataInterfaceList lays out the expanded list of interfaces.
DataInterfaceList(Frame, HClass, ClassHierarchy) - Constructor for class harpoon.Backend.Runtime1.DataInterfaceList
Creates a DataInterfaceList.
DataJavaMain - Class in harpoon.Backend.Runtime1
DataJavaMain outputs a labeled string pointer ("FNI_javamain") which tells the runtime with which method to begin execution of this java program.
DataJavaMain(Frame, HClass, HMethod) - Constructor for class harpoon.Backend.Runtime1.DataJavaMain
Creates a DataInitializers.
DataReflection1 - Class in harpoon.Backend.Runtime1
DataReflection1 creates tables which the JNI interface will use.
DataReflection1(Frame, HClass, ClassHierarchy) - Constructor for class harpoon.Backend.Runtime1.DataReflection1
Creates a DataReflection1.
DataReflection2 - Class in harpoon.Backend.Runtime1
DataReflection2 generates class information tables for each class, with lots of juicy information needed by JNI and java language reflection.
DataReflection2(Frame, HClass, ClassHierarchy) - Constructor for class harpoon.Backend.Runtime1.DataReflection2
Creates a DataReflection2.
DataReflectionMemberList - Class in harpoon.Backend.Runtime1
DataReflectionMemberList creates tables which the JNI interface will use.
DataReflectionMemberList(Frame, HClass, ClassHierarchy) - Constructor for class harpoon.Backend.Runtime1.DataReflectionMemberList
Creates a DataReflectionMemberList.
DataStaticFields - Class in harpoon.Backend.Runtime1
DataStaticFields lays out the static fields of a class.
DataStaticFields(Frame, HClass) - Constructor for class harpoon.Backend.Runtime1.DataStaticFields
Creates a DataStaticFields.
DataStrings - Class in harpoon.Backend.Runtime1
DataStrings lays out string constant objects.
DataStrings(Frame, HClass, Set<String>) - Constructor for class harpoon.Backend.Runtime1.DataStrings
Creates a DataStrings containing tables corresponding to the given set of strings.
DATUM - Class in harpoon.IR.Tree
DATUM objects are statements which write a value to memory at the time when a program is loaded.
DATUM(TreeFactory, HCodeElement, Exp) - Constructor for class harpoon.IR.Tree.DATUM
Class constructor.
DATUM(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.DATUM
Class constructor.
DATUM(TreeFactory, HCodeElement, int, boolean) - Constructor for class harpoon.IR.Tree.DATUM
Class constructor.
DATUM - Static variable in class harpoon.IR.Tree.TreeKind
 
DATUM - Static variable in class harpoon.Tools.PatMat.Sym
 
db(String) - Static method in class harpoon.Analysis.DataFlow.DataFlowBasicBlockVisitor
 
db(String) - Static method in class harpoon.Analysis.DataFlow.DataFlowQuadVisitor
 
db(String) - Static method in class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
db(String) - Static method in class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
db(String) - Static method in class harpoon.Analysis.DataFlow.TreeSolver
 
DCMPEQ - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if double values are equal and neither is NaN, or false otherwise.
DCMPG - Static variable in class harpoon.IR.Bytecode.Op
 
DCMPGE - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if first double value is greater than or equal to the second double value and neither is NaN, or false otherwise.
DCMPGT - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if first double value is greater than the second double value and neither is NaN, or false otherwise.
DCMPL - Static variable in class harpoon.IR.Bytecode.Op
 
DCONST_0 - Static variable in class harpoon.IR.Bytecode.Op
 
DCONST_1 - Static variable in class harpoon.IR.Bytecode.Op
 
DDIV - Static variable in class harpoon.IR.Bytecode.Op
 
DDIV - Static variable in class harpoon.IR.Quads.Qop
Computes the quotient of two double values.
DeadCode - Class in harpoon.Analysis.Quads
DeadCode removes dead code (unused definitions/useless jmps/one-argument phi functions/all moves) from a method.
DeadCode() - Constructor for class harpoon.Analysis.Quads.DeadCode
 
DeadCodeElimination - Class in harpoon.Analysis.Tree
DeadCodeElimination removes unused MOVEs, useless EXPRs, and whatever other cruft it can detect using a liveness analysis.
DEBUG - Static variable in class harpoon.Analysis.DataFlow.DataFlowQuadVisitor
 
DEBUG - Static variable in class harpoon.Analysis.DataFlow.LiveVars
 
DEBUG - Static variable in class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
DEBUG - Static variable in class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
DEBUG - Static variable in class harpoon.Analysis.DataFlow.TreeSolver
 
DEBUG - Static variable in class harpoon.Analysis.Instr.RegAlloc
Flags whether debugging information should be printed to System.out.
Debug - Class in harpoon.Analysis.PA2.AllocSync
Debug
Debug() - Constructor for class harpoon.Analysis.PA2.AllocSync.Debug
 
Debug - Class in harpoon.Analysis.PointerAnalysis
Debug
Debug() - Constructor for class harpoon.Analysis.PointerAnalysis.Debug
 
DEBUG - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
Activates a lot of debug messages.
DEBUG - Static variable in class harpoon.Analysis.PointerAnalysis.InterThreadPA
Activates a lot of debug messages.
DEBUG - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
 
DEBUG - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
DEBUG - Static variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
 
debug(String) - Method in class harpoon.Backend.Generic.CodeGen
 
DEBUG - Class in harpoon.IR.Quads
DEBUG prints a debugging string to standard error.
DEBUG(QuadFactory, HCodeElement, String) - Constructor for class harpoon.IR.Quads.DEBUG
Creates a DEBUG object.
DEBUG - Static variable in class harpoon.IR.Quads.QuadKind
 
DEBUG - Static variable in class harpoon.IR.Tree.TreeVerifyingVisitor
 
DEBUG - Static variable in class harpoon.Util.TypeInference.TypeInference
 
DEBUG2 - Static variable in class harpoon.Analysis.PointerAnalysis.InterThreadPA
Activates even more debug messages!
DEBUG2 - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
 
DEBUG2 - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
DEBUG_AS - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Debug for the aggressive shrinking.
DEBUG_INTRA - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
debug_lex() - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
DEBUG_REF - Static variable in class harpoon.Analysis.Realtime.Realtime
Add additional information on calls to RTJ_malloc to store information about the def. points of all objects which are allocated.
DEBUG_SCC - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
dec(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Decrements the value attached to n
DECLARE(DerivationGenerator, HClass, Exp) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
Declare the type of an expression.
DECLARE(DerivationGenerator, HClass, Temp, Exp) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
Declare the type of an expression and the variable associated with it.
DECLARE(DerivationGenerator, Derivation.DList, Exp) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
Declare a derived pointer.
DECLARE(DerivationGenerator, HClass, Exp) - Static method in class harpoon.Analysis.Realtime.QuantaChecker
 
DECLARE(DerivationGenerator, HClass, Temp, Exp) - Static method in class harpoon.Analysis.Realtime.QuantaChecker
 
DECLARE(DerivationGenerator, HClass, Exp) - Static method in class harpoon.Backend.Analysis.GCTraceStore
Declare the type of an expression.
DECLARE(DerivationGenerator, HClass, Temp, Exp) - Static method in class harpoon.Backend.Analysis.GCTraceStore
Declare the type of an expression and the variable associated with it.
DECLARE(DerivationGenerator, Derivation.DList, Exp) - Static method in class harpoon.Backend.Analysis.GCTraceStore
Declare a derived pointer.
declare(Temp, HClass) - Method in class harpoon.Backend.Generic.CodeGen
 
declare(Temp, Derivation.DList) - Method in class harpoon.Backend.Generic.CodeGen
 
declare(Temp, TreeDerivation, Exp) - Method in class harpoon.Backend.Generic.CodeGen
 
declare(Temp, HClass) - Method in class harpoon.Backend.Generic.MaxMunchCG
 
declare(Temp, Derivation.DList) - Method in class harpoon.Backend.Generic.MaxMunchCG
 
DECLARE(DerivationGenerator, HClass, Exp) - Static method in class harpoon.Backend.Runtime1.MallocAllocationStrategy
 
DECLARE(DerivationGenerator, HClass, Temp, Exp) - Static method in class harpoon.Backend.Runtime1.MallocAllocationStrategy
 
DECLARE(DerivationGenerator, HClass, Exp) - Static method in class harpoon.Backend.Runtime1.TreeBuilder
 
DECLARE(DerivationGenerator, HClass, Temp, Exp) - Static method in class harpoon.Backend.Runtime1.TreeBuilder
 
DECLARE(DerivationGenerator, Derivation.DList, Exp) - Static method in class harpoon.Backend.Runtime1.TreeBuilder
 
DECLARE(DerivationGenerator, HClass, Exp) - Static method in class harpoon.Instrumentation.AllocationStatistics.InstrumentedAllocationStrategy
 
declaredFields(HClass) - Method in class harpoon.Backend.Analysis.ClassFieldMap
Return the declared fields of the specified class in the order in which they should be allocated.
declaredFields(HClass) - Method in class harpoon.Backend.Analysis.SortedClassFieldMap
 
declaredFields(HClass) - Method in class harpoon.Backend.RuntimeTiny.TinyClassFieldMap
 
declName() - Method in class harpoon.Analysis.PA2.Mutation.ParamInfo
 
decode(int) - Static method in class harpoon.IR.Tree.SEGMENT
Converts a segtype into its string representation.
decodeLabel(Label) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
 
decrementDegree(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Updates m to account for n being removed from the interference graph.
decrementDegree(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
decrementDegree(AppelRegAllocClasses.Node, AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
DeepInliner - Class in harpoon.Analysis.Quads.DeepInliner
DeepInliner contains the code responsible with inlining a set of InlineChains.
def - Variable in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor.LiveVarInfo
 
def(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
def - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
def - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.TempDefPoint
 
def(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
 
def(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.FlowGraph
The set of temporaries defined by this instruction or block
def() - Method in class harpoon.IR.Assem.Instr
Returns the Temps defined by this Instr.
def() - Method in class harpoon.IR.LowQuad.PCALL
 
def() - Method in class harpoon.IR.LowQuad.PCONST
 
def() - Method in class harpoon.IR.LowQuad.PGET
 
def() - Method in class harpoon.IR.LowQuad.PPTR
 
def() - Method in class harpoon.IR.LowQuad.PSET
 
def() - Method in interface harpoon.IR.Properties.UseDefable
Return all the Temps defined by this HCodeElement.
def(HCE) - Method in class harpoon.IR.Properties.UseDefer
Return all the Temps defined by hce.
def() - Method in class harpoon.IR.Quads.AGET
Returns the Temp defined by this quad.
def() - Method in class harpoon.IR.Quads.ALENGTH
Returns the Temp defined by this Quad.
def() - Method in class harpoon.IR.Quads.ANEW
Returns the Temp defined by this Quad.
def() - Method in class harpoon.IR.Quads.CALL
Returns all the Temps defined by this Quad.
def() - Method in class harpoon.IR.Quads.COMPONENTOF
Returns the Temps defined by this quad.
def() - Method in class harpoon.IR.Quads.CONST
Returns the Temp defined by this Quad.
def() - Method in class harpoon.IR.Quads.GET
Returns the Temp defined by this Quad.
def() - Method in class harpoon.IR.Quads.HANDLER
 
def() - Method in class harpoon.IR.Quads.INSTANCEOF
Returns the Temps defined by this quad.
def() - Method in class harpoon.IR.Quads.METHOD
Returns the Temps defined by this Quad.
def() - Method in class harpoon.IR.Quads.MOVE
Returns the Temps defined by this Quad.
def() - Method in class harpoon.IR.Quads.NEW
Returns the Temp defined by this Quad.
def() - Method in class harpoon.IR.Quads.OPER
Returns the Temps defined by this OPER.
def() - Method in class harpoon.IR.Quads.PHI
Returns all the Temps defined by this Quad.
def() - Method in class harpoon.IR.Quads.Quad
Return all the Temps defined by this Quad.
def() - Method in class harpoon.IR.Quads.SIGMA
 
def - Variable in class harpoon.IR.Quads.TempChain
 
DEFAULT - Static variable in class harpoon.IR.Properties.CFGrapher
Default CFGrapher for HCodeElements which implement CFGraphable.
DEFAULT - Static variable in class harpoon.IR.Properties.UseDefer
Default UseDefer for HCodeElements which implement UseDefable.
DEFAULT - Static variable in class harpoon.Tools.Annotation.Sym
 
DEFAULT_RULES - Static variable in class harpoon.Analysis.Tree.AlgebraicSimplification
Default alegraic simplification rules.
DefaultAllocationInformation - Class in harpoon.Analysis
DefaultAllocationInformation returns a simple no-analysis AllocationInformation structure which works for allocation sites in quad form.
DefaultAllocationInformationMap - Class in harpoon.Analysis
DefaultAllocationInformationMap is a combination of AllocationInformationMap and DefaultAllocationInformation.
DefaultAllocationInformationMap() - Constructor for class harpoon.Analysis.DefaultAllocationInformationMap
Creates a DefaultAllocationInformationMap.
DefaultClassDepthMap - Class in harpoon.Backend.Maps
A DefaultClassDepthMap computes class depth simply and efficiently.
DefaultClassDepthMap(ClassHierarchy) - Constructor for class harpoon.Backend.Maps.DefaultClassDepthMap
Creates a DefaultClassDepthMap using the given ClassHierarchy to compute the maximum class depth.
DefaultFinalMap - Class in harpoon.Backend.Maps
DefaultFinalMap is a stupid implementation of FinalMap that just looks for the final access modifier.
DefaultFinalMap() - Constructor for class harpoon.Backend.Maps.DefaultFinalMap
Creates a DefaultFinalMap.
DefaultFrame - Class in harpoon.Interpret.Tree
The DefaultFrame class implements the abstract methods of the Frame class.
DefaultFrame(HMethod, ClassHierarchy, OffsetMap, AllocationStrategy) - Constructor for class harpoon.Interpret.Tree.DefaultFrame
 
DefaultInlineMap - Class in harpoon.Backend.Maps
A DefaultInlineMap returns the conservate answer that we can't inline anything.
DefaultInlineMap() - Constructor for class harpoon.Backend.Maps.DefaultInlineMap
Creates a DefaultInlineMap.
DefaultMap<HCE extends HCodeElement> - Class in harpoon.Analysis.Maps
A DefaultMap returns conservative values for const and exec information: namely that no temp corresponds to a constant and that every node and edge is potentially executable.
DefaultMap() - Constructor for class harpoon.Analysis.Maps.DefaultMap
 
DefaultNameMap - Class in harpoon.Backend.Maps
DefaultNameMap implements a JNI-compliant method name mangling, and class and field name mangling "in the spirit of" the JNI.
DefaultNameMap(boolean) - Constructor for class harpoon.Backend.Maps.DefaultNameMap
Creates a DefaultNameMap.
DefaultSparseNode - Class in harpoon.Analysis.GraphColoring
DefaultSparseNode
DefaultSparseNode() - Constructor for class harpoon.Analysis.GraphColoring.DefaultSparseNode
Creates a DefaultSparseNode.
defC(HCodeElement) - Method in class harpoon.Analysis.Instr.BasePointerPreservingUseDefer
 
defC(HCodeElement) - Method in class harpoon.Analysis.Instr.IgnoreSpillUseDefer
 
defC() - Method in class harpoon.Analysis.Instr.RegAlloc.SpillStore
 
defC(HCodeElement) - Method in class harpoon.Backend.Generic.RegUseDefer
 
defC() - Method in class harpoon.IR.Assem.Instr
 
defC() - Method in interface harpoon.IR.Properties.UseDefable
Returns a Collection of all the Temps defined in this HCodeElement.
defC(HCE) - Method in class harpoon.IR.Properties.UseDefer
Returns a Collection of all the Temps that are defined by hce.
defC() - Method in class harpoon.IR.Quads.Quad
 
defC(Tree) - Method in class harpoon.IR.Tree.TreeUseDefer
Returns a collection of Temps defined by hce.
defCN(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
defCT(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
DefiniteInitOracle - Class in harpoon.Analysis.Quads
A DefiniteInitOracle tells you whether a given field is "definitely initialized" before control flow leaves every constructor of its declaring class.
DefiniteInitOracle(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.DefiniteInitOracle
Creates a DefiniteInitOracle which will use the given code factory and hierarchy approximation.
defMap(HCode<HCE>, Temp) - Method in interface harpoon.Analysis.Maps.UseDefMap
Return an array of HCodeElements that define Temp t.
defMap(HCode<HCE>, Temp) - Method in class harpoon.Analysis.UseDef
Return the HCodeElements which define a given Temp.
defs - Variable in class harpoon.Analysis.Quads.SSIStats
How many variable uses are in this code.
degree() - Method in class harpoon.Analysis.Partition.WGNode
 
degree() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
DELAY_SLOT - Static variable in class harpoon.IR.Assem.InstrGroup
groups code with special delay slot instructions...
deleteMax() - Method in class harpoon.Util.BinHeapPriorityQueue
 
deleteMax() - Method in interface harpoon.Util.MaxPriorityQueue
Returns and removes the Object in this with the highest priority.
DemandDrivenRegAlloc - Class in harpoon.Analysis.Instr
DemandDrivenRegAlloc performs Demand-Driven Register Allocation for a set of Instrs in a Code.
DemandDrivenRegAlloc(Code) - Constructor for class harpoon.Analysis.Instr.DemandDrivenRegAlloc
Creates a DemandDrivenRegAlloc.
depth() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
depth() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
depth - Variable in class harpoon.Analysis.PointerAnalysis.PASync
The depth of the call-path specialization chain; if 0, the sync took place in the current method.
depthFirst() - Method in class harpoon.Analysis.SESE
Iterate through SESE regions, depth-first.
derivation(HCodeElement, Temp) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadNoSSA
 
derivation(Quad, Temp) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
Derivation<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
Derivation provides a means to access the derivation of a particular derived pointer.
derivation(HCE, Temp) - Method in interface harpoon.Analysis.Maps.Derivation
Map compiler temporaries to their derivations.
derivation(HCodeElement, Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.DerivationGenerator
 
derivation(HCE, Temp) - Method in class harpoon.IR.LowQuad.DerivationMap
 
derivation - Variable in class harpoon.IR.Quads.SSIRename
Derivation for the new quads, or null if no Derivation for the old quads was supplied.
derivation - Variable in class harpoon.IR.Quads.SSIToSSA
Derivation for the new quads, or null if no Derivation for the old quads was supplied.
derivation(Exp) - Method in class harpoon.IR.Tree.DerivationGenerator
 
derivation(Exp) - Method in interface harpoon.IR.Tree.TreeDerivation
Returns the derivation of a given tree expression exp.
Derivation.DList - Class in harpoon.Analysis.Maps
Structure of the derivation information.
Derivation.DList(Temp, boolean, Derivation.DList) - Constructor for class harpoon.Analysis.Maps.Derivation.DList
Constructor.
DerivationChecker - Class in harpoon.Analysis.LowQuad
A DerivationChecker checks that all temps defined in a LowQuad.Code have proper derivations.
DerivationChecker - Class in harpoon.Analysis.Tree
A DerivationChecker checks that all subtrees in a Tree.Code have proper derivations.
DerivationGenerator - Class in harpoon.Backend.CSAHack.RegAlloc
DerivationGenerator helps maintain the accuracy of the Derivation while the register allocator creates spills.
DerivationGenerator(Instr, Derivation) - Constructor for class harpoon.Backend.CSAHack.RegAlloc.DerivationGenerator
Creates a DerivationGenerator.
DerivationGenerator - Class in harpoon.IR.Tree
DerivationGenerator takes a partial map of Tree.Exps-to-type/derivations and answers type/derivation queries as if the complete map were present.
DerivationGenerator() - Constructor for class harpoon.IR.Tree.DerivationGenerator
Creates a DerivationGenerator.
DerivationMap<HCE extends HCodeElement> - Class in harpoon.IR.LowQuad
DerivationMap is a simple map-based implementation of common Derivation functionality.
DerivationMap() - Constructor for class harpoon.IR.LowQuad.DerivationMap
Creates a DerivationMap.
desc - Variable in class harpoon.IR.Tree.Data
 
descCache - Variable in class harpoon.ClassFile.Linker
private linker cache, for efficiency.
description - Variable in class harpoon.Util.Options.Option
 
description() - Method in class harpoon.Util.Options.Option
 
descriptor() - Method in class harpoon.IR.RawClass.ConstantNameAndType
 
descriptor() - Method in class harpoon.IR.RawClass.FieldInfo
 
descriptor() - Method in class harpoon.IR.RawClass.LocalVariableTable
 
descriptor() - Method in class harpoon.IR.RawClass.MethodInfo
 
descriptor_index - Variable in class harpoon.IR.RawClass.ConstantNameAndType
the value of the descriptor_index must be a valid index into the constant_pool table.
descriptor_index() - Method in class harpoon.IR.RawClass.ConstantNameAndType
 
descriptor_index - Variable in class harpoon.IR.RawClass.FieldInfo
The value of the descriptor_index item must be a valid index into the constant_pool table.
descriptor_index() - Method in class harpoon.IR.RawClass.FieldInfo
 
descriptor_index - Variable in class harpoon.IR.RawClass.LocalVariableTable
The value of the descriptor_index item must be a valid index into the constant_pool table.
descriptor_index() - Method in class harpoon.IR.RawClass.LocalVariableTable
 
descriptor_index - Variable in class harpoon.IR.RawClass.MethodInfo
The value of the descriptor_index item must be a valid index into the constant_pool table.
descriptor_index() - Method in class harpoon.IR.RawClass.MethodInfo
 
details() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns a detailed description of this node for debug purposes.
details - Variable in class harpoon.Tools.PatMat.Spec.Rule
List of the extra details associated with this (speed-cost, size-cost, predicates, etc.).
DETAILS2 - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
DETERMINISTIC - Static variable in class harpoon.Analysis.MetaMethods.MetaCallGraphImpl
Make sure the results of the query methods (getCalles like) don't depend on the run; facilitate the debugging.
DETERMINISTIC - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Makes the pointer analysis deterministic to make the debug easier.
df(HCodeElement) - Method in class harpoon.Analysis.DomFrontier
Return an array of HCodeElements in the (post)dominance frontier of n.
dfS(HCodeElement) - Method in class harpoon.Analysis.DomFrontier
Return an immutable Set of HCodeElements in the (post)dominance frontier of n.
difference(PAEdgeSet, PAEdgeSet) - Static method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
Computes the difference between two sets of edges.
dims - Variable in class harpoon.IR.Quads.ANEW
Lengths of each dimension to create.
dims() - Method in class harpoon.IR.Quads.ANEW
Returns an array of Temps holding the length of each array dimension.
dims(int) - Method in class harpoon.IR.Quads.ANEW
Returns a particular element of the dims array.
dims(HClass) - Static method in class harpoon.Util.HClassUtil
Count the number of dimensions of an array type.
dimsLength() - Method in class harpoon.IR.Quads.ANEW
Returns the length of the dims array.
directCallers(HMethod) - Method in class harpoon.Analysis.AllCallers
Returns all the direct callers of the hm method.
directCallerSet(HMethod) - Method in class harpoon.Analysis.AllCallers
Returns all the direct callers of the hm method.
DirectedGraph - Interface in harpoon.Analysis.GraphColoring
DirectedGraph is an extension of the Graph interface that tracks the direction of the edges that have been added to the graph.
DISASSEMBLE - Static variable in class harpoon.Main.Javap
Print out disassembled code.
DispatchTreeTransformation - Class in harpoon.Analysis.Quads
DispatchTreeTransformation replaces dynamic dispatch call sites with TYPESWITCHes leading to static dispatch calls.
DispatchTreeTransformation(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.DispatchTreeTransformation
Creates a DispatchTreeTransformation.
displaySize() - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the size of the display information of the specified class
DIV - Static variable in class harpoon.IR.Tree.Bop
Division.
DIV - Static variable in class harpoon.Tools.Annotation.Sym
 
DIV - Static variable in class harpoon.Tools.PatMat.Sym
 
div2mul(Exp, int) - Static method in class harpoon.Analysis.Tree.AlgebraicSimplification
Converts an arbitrary division by a constant into a series of multiplications, shifts, and bitwise operations.
DIVEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
DLOAD - Static variable in class harpoon.IR.Bytecode.Op
 
DLOAD_0 - Static variable in class harpoon.IR.Bytecode.Op
 
DLOAD_1 - Static variable in class harpoon.IR.Bytecode.Op
 
DLOAD_2 - Static variable in class harpoon.IR.Bytecode.Op
 
DLOAD_3 - Static variable in class harpoon.IR.Bytecode.Op
 
DMUL - Static variable in class harpoon.IR.Bytecode.Op
 
DMUL - Static variable in class harpoon.IR.Quads.Qop
Computes the product of two double values.
DNEG - Static variable in class harpoon.IR.Bytecode.Op
 
DNEG - Static variable in class harpoon.IR.Quads.Qop
Computes the negation of a double value.
DO - Static variable in class harpoon.Tools.Annotation.Sym
 
do_action(int, lr_parser, Stack, int) - Method in class harpoon.Tools.Annotation.Java12
invoke a user supplied parse action
do_action(int, lr_parser, Stack, int) - Method in class harpoon.Tools.PatMat.Parser
invoke a user supplied parse action
do_inlining() - Method in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Checks whether any inlining is requested.
DO_INLINING_FOR_SA - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Enables the application of some method inlining to increase the effectiveness of the stack allocation.
DO_INLINING_FOR_TA - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Enables the application of some method inlining to increase the effectiveness of the thread local heap allocation.
DO_INTRA_PROC_TRIMMING - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
DO_PREALLOCATION - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Enables the use of preallocation: if an object will be accessed only by a thread (ie it is created just to pass some parameters to a thread), it can be preallocated into the heap of that thread.
DO_STACK_ALLOCATION - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Controls the generation of stack allocation hints.
DO_THREAD_ALLOCATION - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Controls the generation of thread local heap allocation hints.
doAllInductions(Loops, WorkSet, HashMap) - Method in class harpoon.Analysis.LowQuad.Loop.AllInductions
Returns a Hashmap mapping induction Temps to Induction objects containing information on their derivation.
doClass(String) - Static method in class harpoon.Main.Javap
 
doesIO(HMethod) - Method in class harpoon.Analysis.IOEffectAnalysis
Checks whether the method hm (transitively) executes any input/output operation.
doInduction(Loops, WorkSet) - Method in class harpoon.Analysis.LowQuad.Loop.BasicInductions
Creates a HashMap mapping Temps to Induction classes describing the induction variable.
DomFrontier - Class in harpoon.Analysis
DomFrontier computes the dominance frontier of a flowgraph-structured IR.
DomFrontier(DomTree) - Constructor for class harpoon.Analysis.DomFrontier
Creates a DomFrontier using a pre-existing DomTree.
DomFrontier(HCode, boolean) - Constructor for class harpoon.Analysis.DomFrontier
Creates a DomFrontier for the given HCode using the default grapher; if isPost is false creates the dominance frontier; otherwise creates the postdominance frontier.
DomFrontier(HCode, CFGrapher, boolean) - Constructor for class harpoon.Analysis.DomFrontier
Creates a DomFrontier for the given HCode using the given CFGrapher; if isPost is false creates the dominance frontier; otherwise creates the postdominance frontier.
DominatingMemoryAccess - Class in harpoon.Analysis.Tree
DominatingMemoryAccess is an analysis that uses information about memory operations to determine which of them need to do cache tag checks, and which don't.
DominatingMemoryAccess(HCodeFactory, Frame, ClassHierarchy) - Constructor for class harpoon.Analysis.Tree.DominatingMemoryAccess
 
DominatingMemoryAccess.daNum - Class in harpoon.Analysis.Tree
 
DominatingMemoryAccess.daNum(int, boolean) - Constructor for class harpoon.Analysis.Tree.DominatingMemoryAccess.daNum
 
DomTree<HCE extends HCodeElement> - Class in harpoon.Analysis
DomTree computes the dominator tree of a flowgraph-structured IR.
DomTree(HCode<HCE>, boolean) - Constructor for class harpoon.Analysis.DomTree
Creates a new DomTree with the dominator tree for the given HCode; if isPost is true, creates a postdominator tree instead.
DomTree(HCode<HCE>, CFGrapher<HCE>, boolean) - Constructor for class harpoon.Analysis.DomTree
Creates a new DomTree with the dominator tree for the given HCode; if isPost is true, creates a postdominator tree instead.
DOT - Static variable in class harpoon.Tools.Annotation.Sym
 
Double - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type double.
DOUBLE - Static variable in class harpoon.IR.Tree.Type
64-bit floating-point type.
DOUBLE - Static variable in interface harpoon.IR.Tree.Typed
 
DOUBLE - Static variable in class harpoon.Tools.Annotation.Sym
 
DOUBLE - Static variable in class harpoon.Tools.PatMat.Sym
 
doubleArrayFactory - Static variable in class harpoon.Temp.Temp
Returns an array of Temp[]s.
doubleGET(Object, Object, double) - Static method in class harpoon.Runtime.MZFExternalMap
 
doubleRep(double, int) - Static method in class harpoon.Util.Util
Returns the string representation of the double d, with a certain number of decimals.
doubleRep(double, int, int) - Static method in class harpoon.Util.Util
Returns the string representation of the double d, with a certain number of decimals.
doubleSET(Object, Object, double, double) - Static method in class harpoon.Runtime.MZFExternalMap
 
doubleValue() - Method in class harpoon.IR.RawClass.ConstantDouble
Returns the value of this constant.
DREM - Static variable in class harpoon.IR.Bytecode.Op
 
DREM - Static variable in class harpoon.IR.Quads.Qop
Computes the remainder of two double values.
DRETURN - Static variable in class harpoon.IR.Bytecode.Op
 
DSFactories - Class in harpoon.Analysis.PA2
DSFactories
DSFactories() - Constructor for class harpoon.Analysis.PA2.DSFactories
 
dst - Variable in class harpoon.Backend.CSAHack.RegAlloc.MoveList
 
dst - Variable in class harpoon.IR.LowQuad.PCONST
The Temp in which to store the offset or constant.
dst() - Method in class harpoon.IR.LowQuad.PCONST
Returns the Temp in which to store the offset or constant.
dst - Variable in class harpoon.IR.LowQuad.PGET
Temp in which to store the fetched field or array element.
dst() - Method in class harpoon.IR.LowQuad.PGET
Returns the Temp in which to store the fetched field or array element.
dst - Variable in class harpoon.IR.LowQuad.PPTR
The Temp in which to store the computed POINTER value.
dst() - Method in class harpoon.IR.LowQuad.PPTR
Returns the Temp in which to store the computed POINTER value.
dst - Variable in class harpoon.IR.Quads.AGET
The Temp in which to store the fetched element.
dst() - Method in class harpoon.IR.Quads.AGET
Returns the destination Temp.
dst - Variable in class harpoon.IR.Quads.ALENGTH
The Temp in which to store the array length.
dst() - Method in class harpoon.IR.Quads.ALENGTH
Returns the destination Temp.
dst - Variable in class harpoon.IR.Quads.ANEW
The Temp in which to store the new array reference.
dst() - Method in class harpoon.IR.Quads.ANEW
Returns the destination Temp.
dst - Variable in class harpoon.IR.Quads.COMPONENTOF
The Temp in which to store the result of the test.
dst() - Method in class harpoon.IR.Quads.COMPONENTOF
Returns the Temp in which to store the result of the type check test.
dst - Variable in class harpoon.IR.Quads.CONST
The destination Temp.
dst() - Method in class harpoon.IR.Quads.CONST
Returns the Temp which will contain the specified constant value.
dst - Variable in class harpoon.IR.Quads.GET
Temp in which to store the fetched field contents.
dst() - Method in class harpoon.IR.Quads.GET
Returns the Temp in which to store the fetched field.
dst - Variable in class harpoon.IR.Quads.INSTANCEOF
The Temp in which to store the result of the test.
dst() - Method in class harpoon.IR.Quads.INSTANCEOF
Returns the Temp in which to store the result of the instanceof test.
dst - Variable in class harpoon.IR.Quads.MOVE
The destination Temp.
dst() - Method in class harpoon.IR.Quads.MOVE
Returns the destination Temp.
dst - Variable in class harpoon.IR.Quads.NEW
The Temp in which to store the new object.
dst() - Method in class harpoon.IR.Quads.NEW
Returns the Temp in which to store the new object.
dst - Variable in class harpoon.IR.Quads.OPER
The Temp in which to store the result of the operation.
dst() - Method in class harpoon.IR.Quads.OPER
Returns the Temp in which to store the result of the operation.
dst - Variable in class harpoon.IR.Quads.PHI
dst[i] is the left-hand side of the i'th phi function in this block.
dst(int) - Method in class harpoon.IR.Quads.PHI
Returns the right hand side of the nPhi'th phi function assignment in the block.
dst - Variable in class harpoon.IR.Quads.SIGMA
dst[i][j] is the j'th element of the tuple on the left-hand side of the i'th sigma function in this block.
dst(int, int) - Method in class harpoon.IR.Quads.SIGMA
Returns the nTuple'th element of the tuple returned by the nSigma'th sigma function in the block.
dst(int) - Method in class harpoon.IR.Quads.SIGMA
Returns an array holding the elements of the tuple returned by the nSigma'th sigma function in the block.
dst() - Method in class harpoon.IR.Quads.SIGMA
 
dst - Variable in class harpoon.Tools.PatMat.Spec.StmMove
Expression yielding the destination of this move.
DSTORE - Static variable in class harpoon.IR.Bytecode.Op
 
DSTORE_0 - Static variable in class harpoon.IR.Bytecode.Op
 
DSTORE_1 - Static variable in class harpoon.IR.Bytecode.Op
 
DSTORE_2 - Static variable in class harpoon.IR.Bytecode.Op
 
DSTORE_3 - Static variable in class harpoon.IR.Bytecode.Op
 
DSUB - Static variable in class harpoon.IR.Bytecode.Op
 
dump() - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
 
dump(boolean) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
 
dump() - Static method in class harpoon.Analysis.Quads.CollectSyncStats
 
dumpCFG() - Method in class harpoon.Analysis.BasicBlock.Factory
 
dumpCFG(BasicBlock) - Static method in class harpoon.Analysis.BasicBlock.Factory
 
dumpElems() - Method in class harpoon.Analysis.BasicBlock
Returns a String composed of the statements comprising this.
dumpElems() - Method in class harpoon.Analysis.DataFlow.LiveTemps
Returns a String containing a human-readable version of the analysis results.
dumpMaps() - Method in class harpoon.Analysis.PointerAnalysis.InstrumentSyncOps
 
DUP - Static variable in class harpoon.IR.Bytecode.Op
 
DUP2 - Static variable in class harpoon.IR.Bytecode.Op
 
DUP2_X1 - Static variable in class harpoon.IR.Bytecode.Op
 
DUP2_X2 - Static variable in class harpoon.IR.Bytecode.Op
 
DUP_X1 - Static variable in class harpoon.IR.Bytecode.Op
 
DUP_X2 - Static variable in class harpoon.IR.Bytecode.Op
 
DuplicateClassException - Exception in harpoon.ClassFile
DuplicateClassException is thrown to indicate an attempt to create a class whose name conflicts with another class already known to the linker.
DuplicateClassException(String) - Constructor for exception harpoon.ClassFile.DuplicateClassException
Creates a DuplicateClassException with the supplied detail message.
DuplicateMemberException - Exception in harpoon.ClassFile
DuplicateMemberException is thrown to indicate an attempt to add a member to a class already containing a member of the same name.
DuplicateMemberException(String) - Constructor for exception harpoon.ClassFile.DuplicateMemberException
Creates a DuplicateMemberException with the supplied detail message.
DynamicSyncImpl - Class in harpoon.Runtime
DynamicSyncImpl is a helper class to implement dynamic synchronization removal.
DynamicSyncImpl() - Constructor for class harpoon.Runtime.DynamicSyncImpl
 
DynamicSyncRemoval - Class in harpoon.Main
DynamicSyncRemoval
DynamicSyncRemoval() - Constructor for class harpoon.Main.DynamicSyncRemoval
 
DynamicSyncRemoval.QuadPass - Class in harpoon.Main
 
DynamicSyncRemoval.QuadPass() - Constructor for class harpoon.Main.DynamicSyncRemoval.QuadPass
 
DynamicSyncRemoval.TreePass - Class in harpoon.Main
 
DynamicSyncRemoval.TreePass() - Constructor for class harpoon.Main.DynamicSyncRemoval.TreePass
 
DynamicWBInserter - Class in harpoon.Analysis.PreciseGC
DynamicWBInserter inserts instructions where needed to set and clear the per-object bit for dynamic write barriers.
DynamicWBInserter(HCodeFactory, Linker, ClassHierarchy, DynamicWBInserter.DynamicWBAnalysis) - Constructor for class harpoon.Analysis.PreciseGC.DynamicWBInserter
Creates a DynamicWBInserter.
DynamicWBInserter.DynamicWBAnalysis - Interface in harpoon.Analysis.PreciseGC
A DynamicWBAnalysis identifies NEW and ANEW Quads for which corresponding write barriers are removed.
DynamicWBQuadPass - Class in harpoon.Analysis.PreciseGC
DynamicWBQuadPass inserts dynamic write barriers, where possible and identifies SETs and ASETs for which static write barriers are unnecessary.
DynamicWBQuadPass(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.PreciseGC.DynamicWBQuadPass
Creates a DynamicWBQuadPass.
DynamicWBTreePass - Class in harpoon.Analysis.PreciseGC
DynamicWBTreePass performs some low-level transformations to the output of DynamicWBQuadPass which cannot be done in the quad form on which DynamicWBQuadPass operates.

E

e - Variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
The escape function.
Edge - Class in harpoon.IR.Quads
Edge objects connect Quad nodes in the control-flow graph.
edgeC() - Method in class harpoon.IR.Assem.Instr
Returns the control flow edges of this.
edgeC() - Method in class harpoon.IR.Bytecode.Instr
 
edgeC() - Method in interface harpoon.IR.Properties.CFGraphable
Returns a List of all the edges to and from this HCodeElement.
edgeC(HCE) - Method in class harpoon.IR.Properties.CFGrapher
Returns a List of all the edges to and from this HCodeElement.
edgeC() - Method in class harpoon.IR.Quads.Quad
 
EdgeNotPresentException - Exception in harpoon.Analysis.GraphColoring
EdgeNotPresentException
EdgeNotPresentException() - Constructor for exception harpoon.Analysis.GraphColoring.EdgeNotPresentException
Creates a EdgeNotPresentException.
EdgeNotPresentException(String) - Constructor for exception harpoon.Analysis.GraphColoring.EdgeNotPresentException
Creates a EdgeNotPresentException.
EdgeOrdering - Class in harpoon.Analysis.PointerAnalysis
EdgeOrdering models the ordering relation between the inside and the outside edges belonging to the same analysis scope.
EdgeOrdering() - Constructor for class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Creates a EdgeOrdering object.
edgeReversed() - Method in class harpoon.IR.Properties.CFGrapher
Returns an edge-reversed grapher based on this one.
edges() - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
edges() - Method in interface harpoon.Analysis.GraphColoring.DirectedGraph
Returns a collection view of the edges contained in this graph.
edges() - Method in interface harpoon.Analysis.GraphColoring.Graph
Returns a collection view of the edges contained in this graph.
edges() - Method in class harpoon.IR.Assem.Instr
Returns the control flow edges of this.
edges() - Method in class harpoon.IR.Bytecode.Instr
 
edges() - Method in interface harpoon.IR.Properties.CFGraphable
Returns an array of all the edges to and from this CFGraphable.
edges() - Method in class harpoon.IR.Quads.Quad
 
edgeSetFactory - Static variable in class harpoon.Analysis.PA2.DSFactories
Factory used to generate all set of edges (inside and outside).
EdgeSetVar - Class in harpoon.Analysis.PA2
EdgeSetVar
EdgeSetVar() - Constructor for class harpoon.Analysis.PA2.EdgeSetVar
 
edgesFor(Object) - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
edgesFor(Object) - Method in interface harpoon.Analysis.GraphColoring.DirectedGraph
Returns a collection view of the edges joining node to nodes in the graph.
edgesFor(Object) - Method in interface harpoon.Analysis.GraphColoring.Graph
Returns a collection view of the edges joining node to nodes in the graph.
EdgesIterator - Class in harpoon.Analysis
EdgesIterator is a generic iterator for a set of CFGraphable objects.
EdgesIterator(CFGraphable) - Constructor for class harpoon.Analysis.EdgesIterator
Convenience constructor.
EdgesIterator(HCodeElement, CFGrapher) - Constructor for class harpoon.Analysis.EdgesIterator
Creates a EdgesIterator for all the edges reachable by recursively traversing the successors of e.
EdgeToTemps - Variable in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
EDMain - Class in harpoon.Main
EDMain is a program to compile java classes to some approximation of StrongARM assembly.
EDMain() - Constructor for class harpoon.Main.EDMain
 
EDXMain - Class in harpoon.Main
EDXMain is a program to compile java classes to some approximation of StrongARM assembly.
EDXMain() - Constructor for class harpoon.Main.EDXMain
 
elementArrayFactory() - Method in class harpoon.ClassFile.HCode
Return an ArrayFactory for the HCodeElements composing this HCode.
elementArrayFactory() - Method in class harpoon.IR.Assem.Code
Returns an array factory to create the instruction elements of this codeview.
elementArrayFactory() - Method in class harpoon.IR.Bytecode.Code
 
elementArrayFactory() - Method in class harpoon.IR.Quads.Code
 
elementArrayFactory() - Method in class harpoon.IR.Tree.Code
 
elementIndexer() - Method in class harpoon.ClassFile.HCode
Return an Indexer for the HCodeElements composing this HCode.
elementMap() - Method in class harpoon.ClassFile.HCodeAndMaps
An immutable mapping from ancestor HCodeElements to newly-cloned HCodeElements.
elements() - Method in class harpoon.Analysis.CycleEq
Return List of edges in DFS order.
elements(HandlerSet) - Static method in class harpoon.IR.Quads.HandlerSet
Deprecated. Use iterator(hs) instead.
elementsOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset of the first array element if hc is an array type, otherwise generates an assertion failure
ELLIPSIS - Static variable in class harpoon.Tools.Annotation.Sym
 
ELSE - Static variable in class harpoon.Tools.Annotation.Sym
 
emit(Instr) - Method in class harpoon.Backend.Generic.CodeGen
Emits i as the next instruction in the instruction stream.
emit(TreeFactory, Frame, HClass, ClassHierarchy) - Method in class harpoon.Backend.Runtime1.Runtime.ExtraClazInfo
Here's your chance to insert your stuff.
emitStrings(TreeFactory, HCodeElement) - Static method in class harpoon.Analysis.Realtime.RealtimeAllocationStrategy
Emit all of the const char*'s used so far in the file and flush the list.
emitUtf8String(String) - Method in class harpoon.Backend.Runtime1.Data
 
EMPTY_GRAPH - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Default (empty) graph.
EMPTY_STATE - Static variable in class harpoon.Main.CompilerState
 
enabled() - Method in class harpoon.Analysis.MemOpt.PreallocOpt.QuadPass
 
enabled() - Method in class harpoon.Analysis.MemOpt.PreallocOpt.TreePass
 
ENABLED - Static variable in class harpoon.Analysis.PA2.AllocSync.Debug
 
enabled() - Method in class harpoon.Analysis.PA2.AllocSync.WPAllocSyncCompStage
 
enabled() - Method in class harpoon.Analysis.PA2.Mutation.WPMutationAnalysisCompStage
 
enabled() - Method in class harpoon.Analysis.PA2.WPPointerAnalysisCompStage
 
enabled() - Method in class harpoon.Analysis.PointerAnalysis.AllocSyncOptCompStage
 
enabled() - Method in class harpoon.Analysis.PointerAnalysis.PARTJSupportCompStage
 
enabled() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
 
enabled - Static variable in class harpoon.Analysis.Quads.CollectSyncStats
Whether stats collection is currently enabled.
enabled() - Method in class harpoon.Analysis.Realtime.Realtime.QuadPass
 
enabled() - Method in class harpoon.Analysis.Realtime.Realtime.TreePass
 
enabled() - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
 
ENABLED - Static variable in class harpoon.Main.CodeGenerator
Tells whether the code generator stage is enabled.
enabled() - Method in class harpoon.Main.CodeGenerator
 
enabled() - Method in class harpoon.Main.CompilerStage
 
enabled() - Method in class harpoon.Main.CompStagePipeline
 
enabled() - Method in class harpoon.Main.DynamicSyncRemoval.QuadPass
 
enabled() - Method in class harpoon.Main.DynamicSyncRemoval.TreePass
 
enabled() - Method in class harpoon.Main.EventDrivenTransformation.QuadPass1
 
enabled() - Method in class harpoon.Main.EventDrivenTransformation.QuadPass2
 
enabled() - Method in class harpoon.Main.MIPSOptimizations.QuadPass
 
enabled() - Method in class harpoon.Main.MIPSOptimizations.TreePass
 
enabled() - Method in class harpoon.Main.MZFCompilerStage
 
enabled() - Method in class harpoon.Main.RoleInference
 
enabled() - Method in class harpoon.Main.Transactions.QuadPass
 
enabled() - Method in class harpoon.Main.Transactions.TreePass
 
enabled() - Method in class harpoon.Main.WriteBarriers.DynamicWBQuadPass
 
enabled() - Method in class harpoon.Main.WriteBarriers.WBDynamicWBTreePass
 
enabled() - Method in class harpoon.Main.WriteBarriers.WBQuadPass
 
enableMoves(AppelRegAllocClasses.NodeIter) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
enableMoves(AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
encode(String) - Static method in class harpoon.IR.Tree.SEGMENT
Converts a segtype string into its enumerated value.
end_pc - Variable in class harpoon.IR.RawClass.ExceptionTable
The values of the two items start_pc and end_pc indicate the ranges in the code array at which the exception handler is active.
end_pc() - Method in class harpoon.IR.RawClass.LocalVariableTable
 
END_WITH - Static variable in class harpoon.Tools.PatMat.Sym
 
endGroup(InstrGroup) - Method in class harpoon.Backend.Generic.CodeGen
 
enterImmutableEpoch() - Static method in class harpoon.ClassFile.HClass
Notifies the HClass implementation that Flex enters an immutability epoch, i.e., a period of time when no HClass will be mutated.
entry - Variable in class harpoon.Analysis.SESE.Region
entry edge of the region.
entrySet() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Returns an unmodifiable set view of the map entries.
entrySize() - Method in class harpoon.IR.RawClass.Constant
 
entrySize() - Method in class harpoon.IR.RawClass.ConstantDouble
 
entrySize() - Method in class harpoon.IR.RawClass.ConstantLong
 
ENUM - Static variable in class harpoon.Tools.Annotation.Sym
 
EnumerationIterator<E> - Class in harpoon.Util
An EnumerationIterator converts an Enumeration into an Iterator.
EnumerationIterator(Enumeration<E>) - Constructor for class harpoon.Util.EnumerationIterator
Creates a EnumerationIterator.
env - Variable in class harpoon.Analysis.ContBuilder.ContBuilder
 
EnvBuilder - Class in harpoon.Analysis.EnvBuilder
EnvBuilder
EnvBuilder(CachingCodeFactory, HCode, HCodeElement, Temp[], Linker, TypeMap, boolean) - Constructor for class harpoon.Analysis.EnvBuilder.EnvBuilder
Creates a EnvBuilder.
EnvCode - Class in harpoon.Analysis.EnvBuilder
EnvCode
EnvCode(HMethod, HField[], Linker) - Constructor for class harpoon.Analysis.EnvBuilder.EnvCode
Creates a EnvCode.
eo - Variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Maintains the (conservative) ordering relations between the inside and the outside edges.
EOF - Static variable in class harpoon.Tools.Annotation.Sym
 
EOF - Static variable in class harpoon.Tools.PatMat.Sym
 
EOF_sym() - Method in class harpoon.Tools.Annotation.Java12
EOF Symbol index
EOF_sym() - Method in class harpoon.Tools.PatMat.Parser
EOF Symbol index
eomAllEsc() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
eomAllEsc() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
 
eomAllGblEsc() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
eomAllGblEsc() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
All nodes that escape *globally* at the end of the method.
eomDirGblEsc() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
eomDirGblEsc() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Nodes that escape *globally* at the end of the method and are relevant for the inter-proc analysis (we try to avoid including here nodes that are unreachable from the caller).
eomI() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
eomI() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Inside edges at the end of the method.
eomO() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
eomO() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Outside edges at the end of the method.
eomWrites() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
eomWrites() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Abstract fields written by the method and its transitive callees.
EQ - Static variable in class harpoon.Tools.Annotation.Sym
 
EQEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
EqTempSets - Class in harpoon.Analysis.Instr
EqTempSets tracks a set of disjoint set of temps, and potentially associates each set with a favored register temp (which itself is not part of the set) Overview: an EqTempSets is a pair <S,M>, where S is a set of disjoint sets of temps M is a mapping from disjoint sets to register temps.
EqTempSets() - Constructor for class harpoon.Analysis.Instr.EqTempSets
 
equals(Object) - Method in class harpoon.Analysis.Context
 
equals(Object) - Method in class harpoon.Analysis.GraphColoring.DefaultSparseNode
 
equals(Object) - Method in class harpoon.Analysis.GraphColoring.Node
 
equals(Object) - Method in class harpoon.Analysis.Instr.TempInstrPair
 
equals(Object) - Method in class harpoon.Analysis.Maps.Derivation.DList
Equality test.
equals(Object) - Method in class harpoon.Analysis.MetaMethods.GenType
Checks the equality of this object with object o.
equals(Object) - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Checks the equality of this object with object o.
equals(Object) - Method in class harpoon.Analysis.PA2.AnalysisPolicy
 
equals(Object) - Method in class harpoon.Analysis.PA2.Mutation.ParamInfo
 
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Checks the equality of two ActionRepositorys.
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Checks the equality of two NodeOrdering objects.
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAEdge
Checks the equality of two edges.
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Checks the equality of two PAEscapeFunc objects.
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Check the equality of two ParIntGraphs.
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.PASync
Checks the equality of this object with another one.
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Checks the equality of two PAThreadMaps
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Checks the equality of two PointsToGraphs.
equals(Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Checks the equality of two relations
equals(Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
equals(Object) - Method in class harpoon.Analysis.SESE.Region
Compare two regions for equality.
equals(Object) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
equals(Object) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
equals(Object) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.KGroup
 
equals(Object) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.NameDefPoint
 
equals(Object) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.TempDefPoint
 
equals(Object) - Method in class harpoon.Backend.Generic.GCInfo.WrappedMachineRegLoc
Compares two WrappedMachineRegLoc objects for equality.
equals(Object) - Method in class harpoon.Backend.Generic.GCInfo.WrappedStackOffsetLoc
Compares two WrappedStackOffsetLoc objects for equality.
equals(Object) - Method in interface harpoon.ClassFile.HField
Compares this HField against the specified object.
equals(Object) - Method in interface harpoon.ClassFile.HMethod
Compares this HMethod against the specified object.
equals(Object) - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Returns true if obj is an InterfaceListPointer which points to the same location as this InterfaceListPointer.
equals(Object) - Method in class harpoon.Interpret.Tree.StringPointer
Returns true if obj is a StringPointer that points to the same location as this StringPointer.
equals(Object) - Method in class harpoon.IR.Assem.InstrEdge
 
equals(Object) - Method in class harpoon.IR.Bytecode.Instr
 
equals(Object) - Method in class harpoon.IR.Quads.Edge
Compares two Edges for equality.
equals(Object) - Method in class harpoon.IR.Quads.HandlerSet
Determines if an object is equal to this HandlerSet.
equals(HandlerSet, HandlerSet) - Static method in class harpoon.IR.Quads.HandlerSet
Determines if two HandlerSets are equal.
equals(Object) - Method in class harpoon.Temp.Label
 
EQUALS - Static variable in class harpoon.Tools.PatMat.Sym
 
equals(Object) - Method in class harpoon.Util.Tuple
Does an element-by-element comparison of two Tuples.
equals(Object) - Method in class harpoon.Util.TypeInference.ExactTemp
Checks the equality of two ExactTemps.
equals(Object) - Method in class harpoon.Util.UComp
Indicates whether some other object is "equal" to" this Comparator.
error - Static variable in class harpoon.Tools.Annotation.Sym
 
error - Static variable in class harpoon.Tools.PatMat.Sym
 
error_sym() - Method in class harpoon.Tools.Annotation.Java12
error Symbol index
error_sym() - Method in class harpoon.Tools.PatMat.Parser
error Symbol index
errorMsg(String, Symbol) - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
errorMsg(String, Symbol) - Method in interface harpoon.Tools.Annotation.Lexer
report an error
escape(PANode, Collection<PANode>) - Static method in class harpoon.Analysis.PA2.PAUtil
 
escape(String) - Static method in class harpoon.Util.Util
Escape the contents of a String so they are safe to print.
escapeAny(Collection<PANode>, Collection<PANode>) - Static method in class harpoon.Analysis.PA2.PAUtil
 
escaped(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Tests whether node node is an escaped node.
escapedNodes() - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Returns the set of escaped nodes.
EscapedUnicodeReader - Class in harpoon.Tools.Annotation.Lex
 
EscapedUnicodeReader(Reader) - Constructor for class harpoon.Tools.Annotation.Lex.EscapedUnicodeReader
 
escapesOnlyInCaller(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Checks whether node escapes at most in the caller.
ESEQ - Class in harpoon.IR.Tree
ESEQ objects are expressions which chain a statement and an expression together.
ESEQ(TreeFactory, HCodeElement, Stm, Exp) - Constructor for class harpoon.IR.Tree.ESEQ
Constructor.
ESEQ(Stm, Exp) - Constructor for class harpoon.IR.Tree.ESEQ
Convenient constructor: the tree factory and the source arguments are identical to those for the statement and the expression.
ESEQ - Static variable in class harpoon.IR.Tree.TreeKind
 
evalType() - Method in class harpoon.IR.LowQuad.POPER
Determines the result type of an OPER.
evalType() - Method in class harpoon.IR.Quads.OPER
Determines the result type of an OPER.
evaluate(int, Object[]) - Static method in class harpoon.IR.Quads.Qop
Evaluates a constant value for the result of an OPER, given constant values for the operands.
evaluation(int, Object[]) - Static method in class harpoon.IR.LowQuad.LQop
Evaluates a constant value for the result of an OPER, given constant values for the operands.
evalValue(Object[]) - Method in class harpoon.IR.LowQuad.POPER
Evaluates a constant value for the result of an OPER, given constant values for the operands.
evalValue(Object[]) - Method in class harpoon.IR.Quads.OPER
Evaluates a constant value for the result of an OPER, given constant values for the operands.
evalValue(TreeFactory, int, int, Object, Object) - Static method in class harpoon.IR.Tree.BINOP
Evaluates a constant value for the result of a BINOP, given constant values for the operands.
evalValue(TreeFactory, int, int, Object) - Static method in class harpoon.IR.Tree.UNOP
 
EVar - Class in harpoon.Analysis.PA2
EVar
EVar() - Constructor for class harpoon.Analysis.PA2.EVar
 
EventDriven - Class in harpoon.Analysis.EventDriven
EventDriven
EventDriven(CachingCodeFactory, HCode, ClassHierarchy, Linker, boolean, boolean) - Constructor for class harpoon.Analysis.EventDriven.EventDriven
Creates a EventDriven.
EventDriven - Class in harpoon.Main
EventDriven
EventDriven() - Constructor for class harpoon.Main.EventDriven
 
EventDrivenCode - Class in harpoon.Analysis.EventDriven
EventDrivenCode
EventDrivenCode(HMethod, HMethod, Temp[], Linker) - Constructor for class harpoon.Analysis.EventDriven.EventDrivenCode
Creates a EventDrivenCode.
EventDrivenTransformation - Class in harpoon.Main
EventDrivenTransformation
EventDrivenTransformation() - Constructor for class harpoon.Main.EventDrivenTransformation
 
EventDrivenTransformation.QuadPass1 - Class in harpoon.Main
 
EventDrivenTransformation.QuadPass1() - Constructor for class harpoon.Main.EventDrivenTransformation.QuadPass1
 
EventDrivenTransformation.QuadPass2 - Class in harpoon.Main
 
EventDrivenTransformation.QuadPass2() - Constructor for class harpoon.Main.EventDrivenTransformation.QuadPass2
 
ex() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
ex() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Nodes thrown from the method as exceptions.
ExactTemp - Class in harpoon.Util.TypeInference
ExactTemp is simply a pair of a Quad and a Temp.
ExactTemp(Quad, Temp) - Constructor for class harpoon.Util.TypeInference.ExactTemp
Creates a ExactTemp.
ExactTypeMap<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
ExactTypeMap is an extension of TypeMap that allows the indication of 'exact' types -- that is, temporaries that can be guaranteed to contain an object of the indicated type and not a subtype of that type.
ExactTypeMap.ExactType - Class in harpoon.Analysis.Maps
Implementors of ExactTypeMap will probably find this pair type useful.
ExactTypeMap.ExactType(HClass, boolean) - Constructor for class harpoon.Analysis.Maps.ExactTypeMap.ExactType
 
ExactTypeMapProxy<HCE extends HCodeElement> - Class in harpoon.Analysis.Maps
An ExactTypeMapProxy implements an ExactTypeMap for a cloned HCode given the HCodeAndMaps which specifies its relationship to an HCode for which an ExactTypeMap is known.
ExactTypeMapProxy(HCodeAndMaps<HCE>, ExactTypeMap<HCE>) - Constructor for class harpoon.Analysis.Maps.ExactTypeMapProxy
Creates a ExactTypeMapProxy.
EXCEPT - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: Exception node.
exception_index_table - Variable in class harpoon.IR.RawClass.AttributeExceptions
Each nonzero value in the exception_index_table must be a valid index into the constant_pool table.
exception_index_table(int) - Method in class harpoon.IR.RawClass.AttributeExceptions
Returns the CONSTANT_Class_info corresponding to an entry in the exception_index_table.
exception_table - Variable in class harpoon.IR.RawClass.AttributeCode
Each entry in the exception_table array describes one exception handler in the code array.
exception_table_length() - Method in class harpoon.IR.RawClass.AttributeCode
 
exceptionAnalysis - Static variable in class harpoon.Analysis.TypeInference.IntraProc
 
exceptionCheck(Quad) - Static method in class harpoon.IR.Quads.Pattern
 
ExceptionTable - Class in harpoon.IR.RawClass
Each ExceptionTable object describes one exception handler in the code array of an AttributeCode.
ExceptionTable(ClassFile, int, int, int, int) - Constructor for class harpoon.IR.RawClass.ExceptionTable
Constructor.
exceptionTemp - Variable in class harpoon.IR.Quads.HANDLER
The Temp holding the caught exception on invocation of this HANDLER.
exceptionTemp() - Method in class harpoon.IR.Quads.HANDLER
Returns the Temp which will hold the exception on the invocation of this HANDLER.
exchange(String[]) - Method in class gnu.getopt.Getopt
Exchange the shorter segment with the far end of the longer segment.
exchange(WeightedGraph, WeightedGraph) - Static method in class harpoon.Analysis.Partition.Partition
 
exchange(WeightedGraph, WGNode, WeightedGraph, WGNode) - Static method in class harpoon.Analysis.Partition.WeightedGraph
 
excp - Variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
The set of objects which are returned as exception
execMap(HCE) - Method in class harpoon.Analysis.Maps.DefaultMap
 
execMap(HCodeEdge<HCE>) - Method in class harpoon.Analysis.Maps.DefaultMap
 
ExecMap<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
ExecMap is a mapping from HCodeElements to their executable status.
execMap(HCE) - Method in interface harpoon.Analysis.Maps.ExecMap
Returns the executable status of an HCodeElement.
execMap(HCodeEdge<HCE>) - Method in interface harpoon.Analysis.Maps.ExecMap
Returns the executable status of an HCodeEdge.
execMap(HCE) - Method in class harpoon.Analysis.Maps.ExecMapProxy
 
execMap(HCodeEdge<HCE>) - Method in class harpoon.Analysis.Maps.ExecMapProxy
 
execMap(HCodeElement) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine whether Quad q is executable.
execMap(HCodeEdge) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine whether Edge e is executable.
execMap(HCodeEdge) - Method in class harpoon.Analysis.Quads.SCC.SCCOptimize
 
execMap(HCodeElement) - Method in class harpoon.Analysis.Quads.SCC.SCCOptimize
 
execMap(HCodeElement) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether Quad q is executable.
execMap(HCodeEdge) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether Edge e is executable.
ExecMapProxy<HCE extends HCodeElement> - Class in harpoon.Analysis.Maps
An ExecMapProxy implements an ExecMap for a cloned HCode given the HCodeAndMaps which specifies its relationship to an HCode for which a ExecMap is known.
ExecMapProxy(HCodeAndMaps<HCE>, ExecMap<HCE>) - Constructor for class harpoon.Analysis.Maps.ExecMapProxy
Creates an ExecMapProxy.
exit - Variable in class harpoon.Analysis.SESE.Region
exit edge of the region.
exitImmutableEpoch() - Static method in class harpoon.ClassFile.HClass
Notifies the HClass implementation that Flex exits an immutability epoch (i.e., in the future, Flex may mutate one or more HClass.
exitOutOfMemory() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
Exp - Class in harpoon.IR.Tree
Exp objects are expressions which stand for the computation of some value (possibly with side effects).
Exp(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.Exp
 
exp - Variable in class harpoon.Tools.PatMat.Spec.ExpUnop
 
exp - Variable in class harpoon.Tools.PatMat.Spec.RuleExp
Expression this matches.
exp - Variable in class harpoon.Tools.PatMat.Spec.StmExp
Expression for this.
exp - Variable in class harpoon.Tools.PatMat.Spec.StmJump
Expression which yields the target of this jump.
expand(Temp) - Method in class harpoon.Analysis.Instr.RegAlloc
Returns a List of the Component Temps that compose texpand(Temp) - Method in class harpoon.Backend.Generic.RegFileInfo
Returns a List of the Component Temps that compose t.
expand(Temp) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
expand(Spec) - Static method in class harpoon.Tools.PatMat.CommutativityExpander
 
ExpList - Class in harpoon.IR.Tree
ExpLists form singly-linked lists of Exps.
ExpList(Exp, ExpList) - Constructor for class harpoon.IR.Tree.ExpList
List constructor.
exported - Variable in class harpoon.IR.Tree.LABEL
Flag indicating whether the label should be exported.
EXPR - Class in harpoon.IR.Tree
EXPR objects evaluate an expression (for side-effects) and then throw away the result.
EXPR(TreeFactory, HCodeElement, Exp) - Constructor for class harpoon.IR.Tree.EXPR
Constructor.
EXPR - Static variable in class harpoon.IR.Tree.TreeKind
 
EXPR - Static variable in class harpoon.Tools.PatMat.Sym
 
EXTENDS - Static variable in class harpoon.Tools.Annotation.Sym
 
extras - Variable in class harpoon.Tools.PatMat.Spec.DetailExtra
 

F

F2D - Static variable in class harpoon.IR.Bytecode.Op
 
F2D - Static variable in class harpoon.IR.Quads.Qop
Converts a float to a double.
F2I - Static variable in class harpoon.IR.Bytecode.Op
 
F2I - Static variable in class harpoon.IR.Quads.Qop
Converts a float to an int.
F2L - Static variable in class harpoon.IR.Bytecode.Op
 
F2L - Static variable in class harpoon.IR.Quads.Qop
Converts a float to a long.
f_label - Variable in class harpoon.Tools.PatMat.Spec.StmCjump
Label to branch to on a False value.
FACTORY - Static variable in class harpoon.Analysis.Instr.GraphColoringRegAlloc
 
FACTORY - Static variable in class harpoon.Analysis.Instr.LocalCffRegAlloc
 
factory(RegAlloc.Factory) - Method in class harpoon.Analysis.Instr.RegAllocOpts
 
FADD - Static variable in class harpoon.IR.Bytecode.Op
 
FADD - Static variable in class harpoon.IR.Quads.Qop
Computes the sum of two float values.
FakeMetaCallGraph - Class in harpoon.Analysis.MetaMethods
FakeMetaCallGraph converts a classic CallGraph to a MetaCallGraph.
FakeMetaCallGraph(CallGraph, Set) - Constructor for class harpoon.Analysis.MetaMethods.FakeMetaCallGraph
Creates a FakeMetaCallGraph.
FakeMetaCallGraph(CallGraph) - Constructor for class harpoon.Analysis.MetaMethods.FakeMetaCallGraph
 
FALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
FASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
FCFGBasicBlock - Class in harpoon.Analysis
FCFGBasicBlock is a basic block structure for the Factored Control Flow Graph (FCFG) representation.
FCFGBasicBlock(Quad, FCFGBasicBlock.Factory) - Constructor for class harpoon.Analysis.FCFGBasicBlock
Creates a FCFGBasicBlock.
FCFGBasicBlock.Factory - Class in harpoon.Analysis
Factory structure for generating FCFGBasicBlock views of an HCode.
FCFGBasicBlock.Factory(HCode) - Constructor for class harpoon.Analysis.FCFGBasicBlock.Factory
Produces a FCFGBasicBlock view of hcode hcode must be in "quad-with-try" format.
FCMPEQ - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if the float values are equal and neither is NaN, or false otherwise.
FCMPG - Static variable in class harpoon.IR.Bytecode.Op
 
FCMPGE - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if the first float value is greater than or equal to the second float value and neither is NaN, or false otherwise.
FCMPGT - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if the first float value is greater than the second float value and neither is NaN, or false otherwise.
FCMPL - Static variable in class harpoon.IR.Bytecode.Op
 
FCONST_0 - Static variable in class harpoon.IR.Bytecode.Op
 
FCONST_1 - Static variable in class harpoon.IR.Bytecode.Op
 
FCONST_2 - Static variable in class harpoon.IR.Bytecode.Op
 
FDIV - Static variable in class harpoon.IR.Bytecode.Op
 
FDIV - Static variable in class harpoon.IR.Quads.Qop
Computes the quotient of two float values.
fetchHash(TreeFactory, HCodeElement, Exp) - Method in class harpoon.Backend.Runtime2.TreeBuilder
 
field - Variable in class harpoon.Analysis.Transactions.BitFieldNumbering.BitFieldTuple
 
field - Variable in class harpoon.IR.LowQuad.PFCONST
The HField to address.
field() - Method in class harpoon.IR.LowQuad.PFCONST
Returns the field whose POINTER constant is computed.
field - Variable in class harpoon.IR.LowQuad.PFOFFSET
The HField to address.
field() - Method in class harpoon.IR.LowQuad.PFOFFSET
Returns the field whose offset is computed.
field - Variable in class harpoon.IR.Quads.GET
The field description.
field() - Method in class harpoon.IR.Quads.GET
Returns the field to fetch.
field - Variable in class harpoon.IR.Quads.SET
The field description.
field() - Method in class harpoon.IR.Quads.SET
Returns the description of the field to set.
field2getter - Variable in class harpoon.Analysis.SizeOpt.Field2Method
This maps fields to 'getter' methods.
Field2Method - Class in harpoon.Analysis.SizeOpt
The Field2Method code factory converts all GET and SET operations on a given set of fields into calls to accessor getter/setter methods.
Field2Method(HCodeFactory, Set<HField>) - Constructor for class harpoon.Analysis.SizeOpt.Field2Method
Creates a Field2Method code factory which converts all GET and SET operations on the fields in the fields2convert Set into calls to accessor getter/setter methods.
field2mlabel(HField) - Static method in class harpoon.Analysis.PA2.Mutation.MLabel
 
field2setter - Variable in class harpoon.Analysis.SizeOpt.Field2Method
This maps fields to 'setter' methods.
FIELD_TYPE - Variable in class harpoon.Analysis.Transactions.BitFieldNumbering
 
fieldAlignment(HField) - Method in class harpoon.Backend.Maps.FieldMap
 
fieldBase(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing the field base of the object referenced by the given objectref expression.
fieldBase(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
fieldConst(TreeFactory, HCodeElement, DerivationGenerator, HField) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which represents a reference to a java.lang.reflect.Field constant.
fieldConst(TreeFactory, HCodeElement, DerivationGenerator, HField) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
FieldInfo - Class in harpoon.IR.RawClass
Each field is described by a variable-length field_info structure.
FieldInfo(ClassFile, AccessFlags, int, int, Attribute[]) - Constructor for class harpoon.IR.RawClass.FieldInfo
Constructor.
fieldList(HClass) - Method in class harpoon.Backend.Analysis.ClassFieldMap
 
fieldList(HClass) - Method in class harpoon.Backend.Analysis.PackedClassFieldMap
Return an unmodifiable List over all appropriate fields in the given class, in order from smallest to largest offset.
fieldList(HClass) - Method in class harpoon.Backend.Maps.FieldMap
Return an unmodifiable List over all appropriate fields in the given class, in order from smallest to largest offset.
fieldList(HClass) - Method in class harpoon.Backend.RuntimeTiny.TinyPackedClassFieldMap
Return an unmodifiable List over all appropriate fields in the given class, in order from smallest to largest offset.
FieldMap - Class in harpoon.Backend.Maps
A FieldMap assigns an ordering to a set of fields.
FieldMap() - Constructor for class harpoon.Backend.Maps.FieldMap
 
fieldOffset(HField) - Method in class harpoon.Backend.Analysis.ClassFieldMap
 
fieldOffset(HField) - Method in class harpoon.Backend.Analysis.PackedClassFieldMap
Return an offset to the given field.
fieldOffset(TreeFactory, HCodeElement, DerivationGenerator, HField) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing an offset from the field base required to access the given field.
fieldOffset(HField) - Method in class harpoon.Backend.Maps.FieldMap
Return an offset to the given field.
fieldOffset(TreeFactory, HCodeElement, DerivationGenerator, HField) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
fieldOffset(HField) - Method in class harpoon.Backend.RuntimeTiny.TinyClassFieldMap
 
fieldOffset(HField) - Method in class harpoon.Backend.RuntimeTiny.TinyPackedClassFieldMap
Return an offset to the given field.
fieldPreferredAlignment(HField) - Method in class harpoon.Backend.RuntimeTiny.TinyClassFieldMap
Use this function to indicate a *preferred* but not *mandatory* alignment for the given field.
fieldPreferredAlignment(HField) - Method in class harpoon.Backend.RuntimeTiny.TinyPackedClassFieldMap
Override this function to indicate a *preferred* but not *mandatory* alignment for the given field.
FieldReducer - Class in harpoon.Analysis.SizeOpt
The FieldReducer code factory uses the results of a BitWidthAnalysis to shrink field types and eliminate unused and constant fields from objects.
FieldReducer(HCodeFactory, Frame, ClassHierarchy, Set, String) - Constructor for class harpoon.Analysis.SizeOpt.FieldReducer
Creates a FieldReducer.
fieldRef(TreeFactory, HCodeElement, DerivationGenerator, HClass, int, String, String) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
foo.bar
fields(PANode) - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
fields(PANode) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
fields - Variable in class harpoon.IR.RawClass.ClassFile
Each value in the fields table must be a variable-length field_info structure giving a complete description of a field in the class or interface type.
fields_count() - Method in class harpoon.IR.RawClass.ClassFile
 
fields_size() - Method in class harpoon.Backend.Runtime1.Runtime.ExtraClazInfo
Return the number of bytes of fields you're planning on sticking into the claz structure.
fieldSize(HField) - Method in class harpoon.Backend.Maps.FieldMap
Return the allocated size of a given field.
fieldsOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset of the first field in an object of the specified type
fieldsRead(HMethod) - Method in class harpoon.Analysis.Quads.FieldSyncOracle
Returns a Set of HFields read, either directly or indirectly, by HMethod hm.
fieldsWritten(HMethod) - Method in class harpoon.Analysis.Quads.FieldSyncOracle
Returns a Set of HFields written, either directly or indirectly, by HMethod hm.
FieldSyncOracle - Class in harpoon.Analysis.Quads
A FieldSyncOracle tells which fields a given method could possibly access (either directly, or via a method call), and whether the given method will ever acquire/release a lock (either directly, or via a method call).
FieldSyncOracle(HCodeFactory, ClassHierarchy, CallGraph) - Constructor for class harpoon.Analysis.Quads.FieldSyncOracle
Creates a FieldSyncOracle.
FieldType - Class in harpoon.Analysis.TypeInference
FieldType
FieldType() - Constructor for class harpoon.Analysis.TypeInference.FieldType
Creates a FieldType.
filterData(Frame, Iterator<HData>) - Method in class harpoon.Analysis.Transactions.SyncTransformer
Munge HDatas to insert bit-field numbering information.
filterData(Frame, Iterator<HData>) - Static method in class harpoon.Main.Transactions
 
FINAL - Static variable in class harpoon.Tools.Annotation.Sym
 
finalAction() - Method in class harpoon.Analysis.Quads.DeepInliner.InlineChain
 
finalize() - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
FINALLY - Static variable in class harpoon.Tools.Annotation.Sym
 
FinalMap - Class in harpoon.Backend.Maps
A FinalMap determines whether a class or method is final.
FinalMap() - Constructor for class harpoon.Backend.Maps.FinalMap
 
findColoring(ColorableGraph) - Method in class harpoon.Analysis.GraphColoring.UnboundedGraphColorer
Finds a coloring for graph.
findUniverse(Set) - Method in class harpoon.Analysis.DataFlow.LiveTemps
Constructs a Set of all of the Temps in blocks.
findUniverse(Set) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Constructs a Set of all of the referenced variables in blocks.
findUniverse(Iterator) - Method in class harpoon.Analysis.DataFlow.ReachingHCodeElements
Constructs a Set of all of the HCodeElements in blocks which have non-empty def sets.
FINE_TIMING - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
first - Variable in class harpoon.Analysis.FCFGBasicBlock
 
first - Variable in class harpoon.Backend.Generic.MaxMunchCG
 
first_nonopt - Variable in class gnu.getopt.Getopt
The index of the first non-option in argv[]
firstStm(BasicBlock) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
fixAlign - Static variable in class harpoon.Backend.RuntimeTiny.Runtime
 
fixupSpillCode() - Method in class harpoon.Analysis.Instr.RegAlloc
Replaces the proxy instructions with symbolic loads and stores.
flag - Variable in class gnu.getopt.LongOpt
If this variable is not null, then the value stored in "val" is stored here when this long option is encountered.
Flags - Class in harpoon.Analysis.PA2
Flags
Flags() - Constructor for class harpoon.Analysis.PA2.Flags
 
FLOAD - Static variable in class harpoon.IR.Bytecode.Op
 
FLOAD_0 - Static variable in class harpoon.IR.Bytecode.Op
 
FLOAD_1 - Static variable in class harpoon.IR.Bytecode.Op
 
FLOAD_2 - Static variable in class harpoon.IR.Bytecode.Op
 
FLOAD_3 - Static variable in class harpoon.IR.Bytecode.Op
 
Float - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type float.
FLOAT - Static variable in class harpoon.IR.Tree.Type
32-bit floating-point type.
FLOAT - Static variable in interface harpoon.IR.Tree.Typed
 
FLOAT - Static variable in class harpoon.Tools.Annotation.Sym
 
FLOAT - Static variable in class harpoon.Tools.PatMat.Sym
 
floatGET(Object, Object, float) - Static method in class harpoon.Runtime.MZFExternalMap
 
FLOATING_POINT_LITERAL - Static variable in class harpoon.Tools.Annotation.Sym
 
floatSET(Object, Object, float, float) - Static method in class harpoon.Runtime.MZFExternalMap
 
floatValue() - Method in class harpoon.IR.RawClass.ConstantFloat
Returns the floating-point value of this constant.
FLOW_SENSITIVITY - Static variable in class harpoon.Analysis.PA2.Flags
 
FlowGraph - Class in harpoon.Backend.CSAHack.FlowGraph
A control flow graph is a directed graph in which each edge indicates a possible flow of control.
FlowGraph() - Constructor for class harpoon.Backend.CSAHack.FlowGraph.FlowGraph
 
flowSensitivity - Variable in class harpoon.Analysis.PA2.AnalysisPolicy
Selects flow sensitivity: if on, the analysis will compute one distinct set of inside edges for each program point; o.w., the analysis will compute one set of inside edges per method.
flushCaches() - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Flushes the internal caches in this PointsToGraph.
FMUL - Static variable in class harpoon.IR.Bytecode.Op
 
FMUL - Static variable in class harpoon.IR.Quads.Qop
Computes the product of two float values.
FNEG - Static variable in class harpoon.IR.Bytecode.Op
 
FNEG - Static variable in class harpoon.IR.Quads.Qop
Computes the negation of a float value.
fold() - Method in class harpoon.Analysis.Tree.TreeFolding
Performs the tree-folding optimization on this class's tree code.
follow() - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
FOOTER - Class in harpoon.IR.Quads
FOOTER nodes are used to anchor the bottom end of the quad graph.
FOOTER(QuadFactory, HCodeElement, int) - Constructor for class harpoon.IR.Quads.FOOTER
Creates a FOOTER.
footer() - Method in class harpoon.IR.Quads.HEADER
Returns the FOOTER corresponding to this HEADER.
FOOTER - Static variable in class harpoon.IR.Quads.QuadKind
 
FOR - Static variable in class harpoon.Tools.Annotation.Sym
 
forAllActions(ActionVisitor) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Visits all the actions from this repository.
forAllEdges(PANode, PAEdgeSet.EdgeAction) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
forAllEdges(PAEdgeSet.EdgeAction) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
forAllEdges(Temp, PAEdgeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllEdges(PANode, PAEdgeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllEdges(PAEdgeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllEdges(PANode, PAEdgeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
forAllEdges(Temp, PAEdgeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forAllEdges(PANode, PAEdgeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forAllEdges(PAEdgeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forAllEntries(RelationEntryVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
forAllEntries(RelationEntryVisitor) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Visits all the entry of this edge ordering relation.
forAllEntries(RelationEntryVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Visits all the entries <key,value> of this relation and calls visitor.visit on each of them.
forAllEntries(RelationEntryVisitor) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
forAllNodes(PANodeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllNodes(PANodeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forAllNodes(PANodeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Visits all the nodes that appear in this graph.
forAllParActions(ParActionVisitor) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Visits all the "parallel action" items of information from this repository (i.e. all the action || thread elements.
forAllPointedNodes(Temp, PANodeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllPointedNodes(PANode, String, PANodeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllPointedNodes(PANode, PANodeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
forAllPointedNodes(PANode, PANodeVisitor) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
forAllPointedNodes(Temp, PANodeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forAllPointedNodes(PANode, String, PANodeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forAllPointedNodes(PANode, PANodeVisitor) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
forClass(Class) - Method in class harpoon.ClassFile.Linker
Deprecated. Don't use java.lang.Class objects if you can help it.
forDescriptor(String) - Method in class harpoon.Analysis.AbstractClassFixupRelinker
 
forDescriptor(String) - Method in class harpoon.ClassFile.Linker
Returns the HClass object associated with the ComponentType descriptor given.
forDescriptor0(String) - Method in class harpoon.ClassFile.Linker
Sub-classes will provide implementation for the forDescriptor0 method in order to implement a linking strategy.
forDescriptor0(String) - Method in class harpoon.ClassFile.Relinker
 
forField(TreeFactory, String, String) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
foo.bar
forloop(HCode, Loops) - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis
forloop takes in an HCode and Loops to analyze.
formatCommentedInstr(String, String) - Static method in class harpoon.IR.Assem.Code
Returns an assembly code String version of exec with orig in the comments for exec.
forName(String) - Method in class harpoon.ClassFile.Linker
Returns the HClass object associated with the class with the given string name.
forString(String) - Static method in class harpoon.IR.LowQuad.LQop
 
forString(String) - Static method in class harpoon.IR.Quads.Qop
Returns the enumerated Qop that corresponds to a given descriptive string.
forward_rpo_solver(BasicBlock, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.TreeSolver
 
ForwardDataFlowBasicBlockVisitor - Class in harpoon.Analysis.DataFlow
ForwardDataFlowBasicBlockVisitor
ForwardDataFlowBasicBlockVisitor() - Constructor for class harpoon.Analysis.DataFlow.ForwardDataFlowBasicBlockVisitor
 
ForwardDataFlowQuadVisitor - Class in harpoon.Analysis.DataFlow
ForwardDataFlowQuadVisitor
ForwardDataFlowQuadVisitor() - Constructor for class harpoon.Analysis.DataFlow.ForwardDataFlowQuadVisitor
 
forwardRPOSolve(BasicBlock, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.Solver
 
fpMaxIter - Variable in class harpoon.Analysis.PA2.AnalysisPolicy
Maximum numbers of iterations in each inter-proc. fixed-point equations, i.e., how many times a method may be re-examined before the fixed-point computations gives up and considers that all calls to that method are unanalyzable
frame - Variable in class harpoon.Analysis.Instr.RegAlloc
Generic.Frame for this.
frame - Variable in class harpoon.Backend.Generic.CodeGen
 
Frame - Class in harpoon.Backend.Generic
A Frame encapsulates the machine-dependent information needed for compilation.
Frame() - Constructor for class harpoon.Backend.Generic.Frame
 
Frame - Class in harpoon.Backend.MIPS
Frame contains the machine-dependant information necessary to compile for the MIPS processor.
Frame(HMethod) - Constructor for class harpoon.Backend.MIPS.Frame
 
Frame(HMethod, String) - Constructor for class harpoon.Backend.MIPS.Frame
 
Frame - Class in harpoon.Backend.PreciseC
Frame contains the machine/runtime information necessary to compile for the preciseC backend.
Frame(HMethod) - Constructor for class harpoon.Backend.PreciseC.Frame
 
Frame(HMethod, AllocationStrategyFactory) - Constructor for class harpoon.Backend.PreciseC.Frame
Creates a Frame.
frame - Variable in class harpoon.Backend.Runtime1.MallocAllocationStrategy
 
frame - Variable in class harpoon.Backend.Runtime1.Runtime
 
Frame - Class in harpoon.Backend.Sparc
Sparc.Frame contains architecture specific info for the Sparc Backend.
Frame(HMethod) - Constructor for class harpoon.Backend.Sparc.Frame
 
Frame - Class in harpoon.Backend.StrongARM
Frame contains the machine-dependant information necessary to compile for the StrongARM processor.
Frame(HMethod) - Constructor for class harpoon.Backend.StrongARM.Frame
 
frame - Variable in class harpoon.IR.Assem.Code
The Frame associated with this codeview.
frame - Variable in class harpoon.IR.Tree.Code
The Frame containing machine-specific information
frame - Variable in class harpoon.IR.Tree.Data
 
frame - Variable in class harpoon.Main.CompilerStageEZ
 
frameSize() - Method in class harpoon.Backend.MIPS.StackInfo
 
freeze() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
FREM - Static variable in class harpoon.IR.Bytecode.Op
 
FREM - Static variable in class harpoon.IR.Quads.Qop
Computes the remainder of two float values.
freshStart() - Method in class harpoon.Util.Timer
 
FRETURN - Static variable in class harpoon.IR.Bytecode.Op
 
from() - Method in interface harpoon.ClassFile.HCodeEdge
Returns the source of this HCodeEdge.
from - Variable in class harpoon.IR.Assem.InstrEdge
 
from() - Method in class harpoon.IR.Assem.InstrEdge
 
from() - Method in class harpoon.IR.Properties.CFGEdge
Returns the source of this CFGEdge.
from() - Method in class harpoon.IR.Quads.Edge
Returns the source vertex of this Edge.
from() - Method in class harpoon.Util.Collections.AbstractGraph.Edge
 
from() - Method in interface harpoon.Util.Collections.Graph.Edge
Returns the node this edge comes from.
fsc(Object, Field, Object, int) - Static method in class harpoon.Runtime.PreciseGC.WriteBarrier
dummy write barrier for SETs
FSTORE - Static variable in class harpoon.IR.Bytecode.Op
 
FSTORE_0 - Static variable in class harpoon.IR.Bytecode.Op
 
FSTORE_1 - Static variable in class harpoon.IR.Bytecode.Op
 
FSTORE_2 - Static variable in class harpoon.IR.Bytecode.Op
 
FSTORE_3 - Static variable in class harpoon.IR.Bytecode.Op
 
FSUB - Static variable in class harpoon.IR.Bytecode.Op
 
FullAnalysisResult - Class in harpoon.Analysis.PA2
FullAnalysisResult models the full information that pointer analysis was able to compute about an analyzed method.
FullAnalysisResult() - Constructor for class harpoon.Analysis.PA2.FullAnalysisResult
 
fullname() - Method in class harpoon.Temp.Temp
Returns the full name of this temporary, including scope information.
fullSolve() - Method in class harpoon.Analysis.PA2.IntraProc
 
func - Variable in class harpoon.Tools.PatMat.Spec.StmCall
Function location expression.
func - Variable in class harpoon.Tools.PatMat.Spec.StmNativeCall
Function location expression.
FVar - Class in harpoon.Analysis.PA2
FVar
FVar() - Constructor for class harpoon.Analysis.PA2.FVar
 

G

G - Variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Points-to escape graph that summarizes the points-to and escape information for the current thread.
GC() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
GC - Static variable in class harpoon.IR.Tree.SEGMENT
R/O storage for GC tables
GC_INDEX - Static variable in class harpoon.IR.Tree.SEGMENT
R/O storage for GC index
GCInfo - Class in harpoon.Backend.Generic
A GCInfo object collects data needed for garbage collection and makes necessary annotations to the instruction stream.
GCInfo() - Constructor for class harpoon.Backend.Generic.GCInfo
 
GCInfo.DLoc - Class in harpoon.Backend.Generic
Derivation information stored as CommonLocs.
GCInfo.DLoc(GCInfo.WrappedMachineRegLoc[], GCInfo.WrappedStackOffsetLoc[], boolean[], boolean[]) - Constructor for class harpoon.Backend.Generic.GCInfo.DLoc
Constructor.
GCInfo.GCPoint - Class in harpoon.Backend.Generic
A GCPoint contains information about all the live objects that the garbage collector needs to add to the root set at a particular GC point.
GCInfo.GCPoint(Instr, Label, Map, Set, Map) - Constructor for class harpoon.Backend.Generic.GCInfo.GCPoint
Creates a GCPoint object
GCInfo.WrappedMachineRegLoc - Class in harpoon.Backend.Generic
WrappedMachineRegLoc is a wrapper object for MachineRegLocs that implement special equals and hashCode methods.
GCInfo.WrappedMachineRegLoc(RegFileInfo.MachineRegLoc) - Constructor for class harpoon.Backend.Generic.GCInfo.WrappedMachineRegLoc
Creates a WrappedMachineRegLoc object
GCInfo.WrappedStackOffsetLoc - Class in harpoon.Backend.Generic
WrappedStackOffsetLoc is a wrapper object for StackOffsetLocs that implement special equals and hashCode methods.
GCInfo.WrappedStackOffsetLoc(RegFileInfo.StackOffsetLoc) - Constructor for class harpoon.Backend.Generic.GCInfo.WrappedStackOffsetLoc
Creates a WrappedStackOffsetLoc object
gcPoint - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
gcPoints(HMethod) - Method in class harpoon.Backend.Analysis.BasicGCInfo
Returns an ordered, unmodifiable List of the GCPoints in a given HMethod.
gcPoints(HMethod) - Method in class harpoon.Backend.Generic.GCInfo
Returns an ordered List of the GCPoints in a given HMethod.
GCTraceStore - Class in harpoon.Backend.Analysis
GCTraceStore traces stores for the purposes of garbage collection.
GCTraceStore() - Constructor for class harpoon.Backend.Analysis.GCTraceStore
 
GEN_SYNC_FLAG - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Controls the detection of the objects for whom there are no concurrent synchronizations.
genCode(Code, InstrFactory) - Method in class harpoon.Backend.Generic.CodeGen
Creates a Instr list from the IR.Tree.Code tree.
genData(Data, InstrFactory) - Method in class harpoon.Backend.Generic.CodeGen
Creates a Instr list from the IR.Tree.Data tree.
generateRegAssignment() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
generateRegAssignment() - Method in class harpoon.Analysis.Instr.DemandDrivenRegAlloc
 
generateRegAssignment() - Method in class harpoon.Analysis.Instr.GraphColoringRegAlloc
 
generateRegAssignment() - Method in class harpoon.Analysis.Instr.LocalCffRegAlloc
 
generateRegAssignment() - Method in class harpoon.Analysis.Instr.RegAlloc
Assigns registers in the code for this.
GenericContextFactory<E> - Class in harpoon.Analysis
A GenericContextFactory can create Context objects for any desired level of context-sensitivity.
GenericContextFactory(int, boolean) - Constructor for class harpoon.Analysis.GenericContextFactory
Creates a GenericContextFactory.
genericFactory(Object[]) - Static method in class harpoon.Util.Util
Deprecated. requires java language reflection.
GenType - Class in harpoon.Analysis.MetaMethods
GenType models a type.
GenType(HClass, int) - Constructor for class harpoon.Analysis.MetaMethods.GenType
Creates a GenType.
GenType(HClass) - Constructor for class harpoon.Analysis.MetaMethods.GenType
Creates a polymorphic type, having hclass as superclass.
get(int) - Method in class harpoon.Analysis.Maps.ExactTypeMap.ExactType
 
get(Object) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
get(CFGEdge) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
get(int) - Method in interface harpoon.Backend.Generic.Runtime.ObjectBuilder.ArrayInfo
 
get(HField) - Method in interface harpoon.Backend.Generic.Runtime.ObjectBuilder.ObjectInfo
 
get(HField, Runtime.ObjectBuilder.Info) - Method in class harpoon.Backend.Runtime1.ObjectBuilder.RootOracle
Returns the override value of the given field hf (more information about the object in question is provided by addlinfo); if this RootOracle doesn't wish to override this field, it should return the constant NOT_A_VALUE.
get(HField) - Method in class harpoon.Interpret.Tree.UndefinedRef
Throws an error.
GET - Class in harpoon.IR.Quads
GET represent field access (get) operations.
GET(QuadFactory, HCodeElement, Temp, HField, Temp) - Constructor for class harpoon.IR.Quads.GET
Creates a GET representing a field access.
GET - Static variable in class harpoon.IR.Quads.QuadKind
 
getActualTypeArguments() - Method in interface harpoon.ClassFile.HParameterizedType
Returns an array of objects representing the type arguments used to instantiate this parameterized type.
getAdjacent() - Method in class harpoon.Analysis.Partition.WGNode
 
getAlias(AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
getAllBBs() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock.Factory
Returns all the LightBasicBlocks of the underlying HCode.
getAllCSSpecializations() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the set of nodes that were obtained by specializing this one function of some call sites.
getAllCSSpecs() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns all the call site specializations of this node.
getAllMetaMethods() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns the set of all the meta methods that might be called during the execution of the program.
getAllMetaMethods() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Returns the set of all the meta methods that might be called during the execution of the program.
getAllNodes() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
 
getAllocatedType(HCodeElement) - Static method in class harpoon.Analysis.PointerAnalysis.MAInfo
 
getAllocatedType(HCodeElement) - Static method in class harpoon.Analysis.PointerAnalysis.NodeRepository
 
getAllocatedTypes(HMethod) - Method in class harpoon.Analysis.PreciseGC.MRAFactory
Returns an unmodifiable Set of HClasses.
getAllocationInformation() - Method in class harpoon.IR.Quads.Code
Return the AllocationInformation for this codeview.
getAllocationInformation() - Method in class harpoon.IR.Quads.RSSxToNoSSA
 
getAllocationInformation() - Method in class harpoon.IR.Quads.ToNoSSA
 
getAllocationStatistics() - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
 
getAllocationStrategy(Frame) - Method in interface harpoon.Backend.Runtime1.AllocationStrategyFactory
Creates an AllocationStrategy object.
getAllocs() - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
Return the set of instrumented allocation sites.
getAllocs(Set, HCodeFactory) - Static method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Return a collection of all the allocation sites (quads) from the methods from the set methods.
getAllParams(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns all the parameter nodes associated with the formal parameters of mmethod.
getAllRegisters() - Method in class harpoon.Backend.Generic.RegFileInfo
Returns an array of Temps which represent all the available registers on the machine.
getAllRegisters() - Method in class harpoon.Backend.MIPS.RegFileInfo
 
getAllRegisters() - Method in class harpoon.Backend.Sparc.RegFileInfo
 
getAllRegisters() - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
getAllRegistersC() - Method in class harpoon.Backend.Generic.RegFileInfo
Returns a Collection of Temps which represent all the available registers on the machine.
getAllTSpecs() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns all the thread specializations of this node.
getArg(int) - Method in class harpoon.Util.Options.Option
 
getArgs() - Method in class harpoon.IR.Tree.INVOCATION
Returns a list of subexpressions for the function arguments.
getAssem() - Method in class harpoon.IR.Assem.Instr
 
getAttributes() - Method in class harpoon.Main.CompilerState
 
getBack(Instr) - Method in class harpoon.Analysis.Instr.RegAlloc
returns the root backing i.
getBarVersion() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the bar version of this node.
getBase() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Returns an InterfaceList representing the base of this InterfaceListPointer.
getBase() - Method in class harpoon.Interpret.Tree.StringPointer
Returns a Label representing the base of this StringPointer
getBase() - Method in class harpoon.Interpret.Tree.UndefinedPointer
Returns an UndefinedRef object representing the base of this UndefinedPointer.
getBBInterf(HCE) - Method in class harpoon.Analysis.BasicBlock.Factory
Does the same thing as getBlock.
getBBInterf(HCE) - Method in interface harpoon.Analysis.BasicBlockFactoryInterf
Returns the BasicBlockInterf containing hce.
getBBInterf(HCodeElement) - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Does the same thing as getBlock.
getBeforeEdges(PAEdge) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Returns an iterator over the set of the inside edges that could be already created when the inside edge eo is read.
getBiDiNavigator() - Method in class harpoon.Analysis.CallGraph
Returns a bi-directional top-down graph navigator through this callgraph.
getBiDiNavigator() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns a bi-directional top-down graph navigator through this meta-callgraph.
getBlock(HCE) - Method in class harpoon.Analysis.BasicBlock.Factory
Returns the BasicBlock containing hce.
getBlock(HCodeElement) - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Returns the FCFGBasicBlock containing hce.
getBlock(HCodeElement) - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock.Factory
Returns the LightBasicBlock the instruction hce belongs to.
getBottom() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the bottom field: the last specialization.
getBounds() - Method in interface harpoon.ClassFile.HTypeVariable
Returns an array with HType objects representing the declared bound(s) of the type variable represented by this object.
getCachingSCCLBBFactory() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the SCC LBB factory used by this PointerAnalysis object.
getCallChainDepth() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the specialization depth of this node.
getCallees(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns the meta methods that can be called by mm.
getCallees(MetaMethod, CALL) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns the meta methods that can be called by mm at the call site q.
getCallees(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Returns the meta methods that can be called by mm.
getCallees(MetaMethod, CALL) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Returns the meta methods that can be called by mm at the call site q.
getCallers(AllCallers.MethodSet) - Method in class harpoon.Analysis.AllCallers
getCallers returns a Set that contains all indirect and direct callers of callable methods that fulfill the predicate in the select method of ms.
getCallers(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaAllCallers
Returns the callers of the meta method mm_callee.
getCallGraph() - Method in class harpoon.Analysis.PA2.PointerAnalysis
 
getCallGraph() - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
getCalls() - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationNumbering
Return the set of instrumented CALLs.
getCallSites(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns the set of all the call sites in the code of the meta-method mm.
getCallSites(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Returns the set of all the call sites in the code of the meta-method mm.
getCallSites(HMethod) - Method in class harpoon.Analysis.MetaMethods.SmartCallGraph
Returns a list of all the CALLs quads in the code of hm.
getCallSites(HMethod) - Method in class harpoon.Analysis.Quads.CachingCallGraph
 
getCallSites(HMethod) - Method in class harpoon.Analysis.Quads.CallGraph
Returns a list of all the CALLs quads in the code of hm.
getCFG(BasicBlock) - Static method in class harpoon.Analysis.BasicBlock.Factory
 
getChild(int) - Method in class harpoon.IR.Tree.Tree
Fetch from the child array -- for subclass use only.
getChildrenOf(Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Constructs an enumeration for the children of a specific node.
getClassFieldMap() - Method in class harpoon.Backend.RuntimeTiny.TreeBuilder
 
getClassHierarchy() - Method in class harpoon.Main.CompilerState
 
getClassInitializer() - Method in class harpoon.ClassFile.HClass
Returns the class initializer method, if there is one; otherwise null.
getCode() - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
getCodeFactory() - Method in class harpoon.Analysis.PA2.PointerAnalysis
 
getCodeFactory() - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
getCodeFactory(HCodeFactory) - Method in class harpoon.Backend.Generic.Frame
Returns a code factory for machine-specific IR.Assems, given a code factory for CanonicalTreeCode.
getCodeFactory(HCodeFactory) - Method in class harpoon.Backend.MIPS.Frame
 
getCodeFactory(HCodeFactory) - Method in class harpoon.Backend.PreciseC.Frame
 
getCodeFactory(HCodeFactory) - Method in class harpoon.Backend.Sparc.Frame
 
getCodeFactory(HCodeFactory) - Method in class harpoon.Backend.StrongARM.Frame
 
getCodeFactory(HCodeFactory) - Method in class harpoon.Interpret.Tree.DefaultFrame
 
getCodeFactory() - Method in class harpoon.Main.CompilerState
 
getCodeGen() - Method in class harpoon.Backend.Generic.Frame
Returns the Generic.CodeGen for the backend associated with this.
getCodeGen() - Method in class harpoon.Backend.MIPS.Frame
Returns a MIPS.CodeGen.
getCodeGen() - Method in class harpoon.Backend.PreciseC.Frame
 
getCodeGen() - Method in class harpoon.Backend.Sparc.Frame
 
getCodeGen() - Method in class harpoon.Backend.StrongARM.Frame
Returns a StrongARM.CodeGen.
getCodeGen() - Method in class harpoon.Interpret.Tree.DefaultFrame
Not implemented.
getCodeName() - Method in class harpoon.Analysis.EventDriven.LockRemove
 
getCodeName() - Method in class harpoon.Analysis.Quads.MethodInliningCodeFactory
Returns a string naming the type of the HCode that this factory produces.
getCodeName() - Method in class harpoon.Analysis.Quads.QuadCounter
Gets the code name of this HCodeFactory.
getCodeName() - Method in class harpoon.Analysis.Realtime.PrintFactory
 
getCodeName() - Method in class harpoon.Analysis.Transactions.CloneImplementer
 
getCodeName() - Method in class harpoon.Analysis.UseDefChecker
 
getCodeName() - Method in class harpoon.ClassFile.CachingCodeFactory
Returns the name of the HCodes generated by this CachingCodeFactory.
getCodeName() - Method in interface harpoon.ClassFile.HCodeFactory
Returns a string naming the type of the HCode that this factory produces.
getCodeNode(HCodeElement, int) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
 
getCodeNode(HCodeElement, int, boolean) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
 
getCodeNode(HCodeElement, int, GenType[]) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns a code node: a node associated with the instruction hce: a load node (associated with a GET quad), a return node (associated with a CALL) or an inside node (thread or not) associated with a NEW).
getCodeNode(HCodeElement, int, GenType[], boolean) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns a code node: a node associated with an instruction.
getColor(Object) - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Returns the color of node.
getColor() - Method in class harpoon.Analysis.GraphColoring.ColorableNode
Returns the color of this.
getColor(Object) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Returns the color of node.
getColors() - Method in class harpoon.Analysis.GraphColoring.ColorFactory
Inventory accessor.
getCompatibleClasses() - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Returns a Collection whose members are disjunct Collection of mutually compatible allocation sites (NEW quads in SSI form).
getCompatibleClasses(Collection) - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Similar to the above, except it operates on a specified set of allocation sites.
getComponentType() - Method in class harpoon.ClassFile.HClass
If this class represents an array type, returns the HClass object representing the component type of the array; otherwise returns null.
getConstant() - Method in interface harpoon.ClassFile.HField
Returns the constant value of this HField, if it is a constant field.
getConstant(int) - Method in class harpoon.IR.Bytecode.Code
Look up a constant in the appropriate constant_pool.
getConstNode(Object) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns the node that models the constant object value.
getConstructor(HClass[]) - Method in class harpoon.ClassFile.HClass
Returns an HConstructor object that reflects the specified declared constructor of the class or interface represented by this HClass object.
getConstructors() - Method in class harpoon.ClassFile.HClass
Returns an array of HConstructor objects reflecting all the constructors declared by the class represented by the HClass object.
getContainer() - Method in class harpoon.IR.Assem.InstrGroup
Returns the InstrGroup containing this, or null if this is not contained in any super group.
getCount(Quad) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Returns the number of times the allocation alloc was executed.
getCSParent() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the parent of this node, on the call site specialization brach.
getData(HClass, Frame) - Static method in class harpoon.Analysis.MemOpt.PreallocOpt
 
getData(HClass, Frame) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierStats
returns WriteBarrierData object for inserting static data needed to gather dynamic statistics about write barriers.
getData() - Method in class harpoon.IR.Tree.DATUM
Returns the expression to write to memory.
getDeclaredField(String) - Method in class harpoon.ClassFile.HClass
Returns a HField object that reflects the specified declared field of the class or interface represented by this HClass object.
getDeclaredFields() - Method in class harpoon.ClassFile.HClass
Returns an array of HField objects reflecting all the fields declared by the class or interface represented by this HClass object.
getDeclaredMethod(String, HClass[]) - Method in class harpoon.ClassFile.HClass
Returns a HMethod object that reflects the specified declared method of the class or interface represented by this HClass object.
getDeclaredMethod(String, String) - Method in class harpoon.ClassFile.HClass
Returns a HMethod object that reflects the specified declared method of the class or interface represented by this HClass object.
getDeclaredMethods() - Method in class harpoon.ClassFile.HClass
Returns an array of HMethod objects reflecting all the methods declared by the class or interface represented by this HClass object.
getDeclaringClass() - Method in interface harpoon.ClassFile.HClassTypeVariable
Returns an HClass object representing the class or interface that declared the type variable represented by this object.
getDeclaringClass() - Method in interface harpoon.ClassFile.HField
Returns the HClass object representing the class or interface that declares the field represented by this HField object.
getDeclaringClass() - Method in interface harpoon.ClassFile.HMember
Returns the HClass object representing the class or interface that declares the member or constructor represented by this HMember.
getDeclaringClass() - Method in interface harpoon.ClassFile.HMethod
Returns the HClass object representing the class or interface that declares the method represented by this HMethod object.
getDeclaringMethod() - Method in interface harpoon.ClassFile.HMethodTypeVariable
Returns an HMethod object representing the method that declared the type variable represented by this object.
getDegree(Object) - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
getDegree(Object) - Method in interface harpoon.Analysis.GraphColoring.Graph
Returns the degree of node.
getDegree(Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Returns the degree of node.
getDerivation() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
getDerivation() - Method in class harpoon.Analysis.Instr.DemandDrivenRegAlloc
stub implementation.
getDerivation() - Method in class harpoon.Analysis.Instr.GraphColoringRegAlloc
 
getDerivation() - Method in class harpoon.Analysis.Instr.LocalCffRegAlloc
 
getDerivation() - Method in class harpoon.Analysis.Instr.RegAlloc
returns a Derivation for analyses to use on the register-allocated code.
getDerivation() - Method in class harpoon.Backend.CSAHack.RegAlloc.Code
 
getDerivation() - Method in class harpoon.Backend.Generic.Code
 
getDerivation() - Method in class harpoon.Backend.Generic.MaxMunchCG
 
getDerivation() - Method in class harpoon.IR.Assem.Code
Returns the Derivation associated with this.
getDerivation() - Method in class harpoon.IR.LowQuad.Code
Return a Derivation object for this LowQuad.Code.
getDerivation() - Method in class harpoon.IR.Quads.Code
Return a Derivation for this codeview.
getDerivation() - Method in class harpoon.IR.Quads.ToNoSSA
 
getDesc() - Method in class harpoon.IR.Tree.Data
 
getDescriptor() - Method in class harpoon.ClassFile.HClass
Returns a ComponentType descriptor for the type represented by this HClass object.
getDescriptor() - Method in interface harpoon.ClassFile.HField
Return the type descriptor for this HField object.
getDescriptor() - Method in interface harpoon.ClassFile.HMember
Returns the type descriptor for this member.
getDescriptor() - Method in interface harpoon.ClassFile.HMethod
Returns the descriptor for this method.
getDNEWs(CachingCodeFactory, HMethod, CallGraph) - Static method in class harpoon.Analysis.MemOpt.Util
 
getDotInput(PrintWriter, Graph) - Static method in class harpoon.Analysis.GraphColoring.GraphVisualizer
 
getDst() - Method in class harpoon.IR.Tree.MOVE
Returns the expression giving the destination for the computed value.
getEdgesFrom(PANode, String) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
getEdgesFrom(PANode, String) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
getElements() - Method in class harpoon.ClassFile.HCode
Deprecated. use getElementsL() instead.
getElements(HCode<HCE>) - Method in class harpoon.IR.Properties.CFGrapher
 
getElements() - Method in class harpoon.IR.Quads.Code
Deprecated.  
getElements() - Method in class harpoon.IR.Tree.Code
Deprecated.  
getElements() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the inctructions in this basic block.
getElementsI() - Method in class harpoon.ClassFile.HCode
Return an Iterator over the component objects making up this code view.
getElementsI() - Method in class harpoon.ClassFile.HData
Return an Iterator over the component objects making up this data view.
getElementsI() - Method in class harpoon.IR.Assem.Code
Returns an Iterator over the instructions in this codeview.
getElementsI() - Method in class harpoon.IR.Quads.Code
Returns an iterator over the Quads making up this code view.
getElementsI() - Method in class harpoon.IR.Tree.Code
Returns an Iterator of the Tree Objects making up this code view.
getElementsL() - Method in class harpoon.ClassFile.HCode
Return an ordered Collection (a List) of the component objects making up this code view.
getElementsL() - Method in class harpoon.ClassFile.HData
Return an ordered Collection (a List) of the component objects making up this data view.
getElementsL() - Method in class harpoon.IR.Bytecode.Code
Return an ordered list of the Bytecode.Instrs making up this code view.
getEmptyPAEdgeSet() - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
getEmptyPAEdgeSet() - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
getEmptyRelation() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
getEmptyRelation() - Method in class harpoon.Analysis.PointerAnalysis.LightRelation
 
getEmptyRelation() - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
getEntry(InstrGroup.Type) - Method in class harpoon.IR.Assem.Instr
Returns the entry Instr when the instructions are being viewed as collected by type.
getEscapedIntoMH() - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Returns the set of nodes which escape into a method hole.
getExceptionTypes() - Method in interface harpoon.ClassFile.HMethod
Returns an array of HClass objects that represent the types of the checked exceptions thrown by the underlying method represented by this HMethod object.
getExit(InstrGroup.Type) - Method in class harpoon.IR.Assem.Instr
Returns the exit Instr when the instructions are being viewed as collected by type.
getExp() - Method in class harpoon.IR.Tree.ESEQ
Returns the expression whose value is the the value of the ESEQ.
getExp() - Method in class harpoon.IR.Tree.EXPR
Returns the expression to evaluate.
getExp() - Method in class harpoon.IR.Tree.JUMP
Returns an expression giving the address to jump to.
getExp() - Method in class harpoon.IR.Tree.MEM
Returns a subexpression evaluating to a memory reference location.
getExtParIntGraph(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the simplified (external) ParIntGraph attached to the method hm i.e. the graph at the end of the method.
getExtParIntGraph(HMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getExtraClazInfo() - Method in class harpoon.Backend.Runtime1.Runtime
A means for a subclass to set this.
getExtraClazInfo() - Method in class harpoon.Backend.RuntimeTiny.Runtime
 
getExtThreadInteraction(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getFactory() - Method in class harpoon.Analysis.EventDriven.ContCode
 
getFactory() - Method in class harpoon.Analysis.EventDriven.ContCodeNoSSA
 
getFactory() - Method in class harpoon.Analysis.EventDriven.ContCodeSSI
 
getFactory() - Method in class harpoon.IR.Assem.Instr
Returns the InstrFactory that generated this.
getFactory() - Method in class harpoon.IR.Quads.Quad
Returns the QuadFactory that generated this Quad.
getFactory() - Method in class harpoon.IR.Tree.Tree
Returns the TreeFactory that generated this Tree.
getField(String) - Method in class harpoon.ClassFile.HClass
Returns a HField object that reflects the specified accessible member field of the class or interface represented by this HClass object.
GETFIELD - Static variable in class harpoon.IR.Bytecode.Op
 
GETFIELD2_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
GETFIELD_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
GETFIELD_QUICK_W - Static variable in class harpoon.IR.Bytecode.Op
 
getFields() - Method in class harpoon.ClassFile.HClass
Returns an array containing HField objects reflecting all the accessible fields of the class or interface represented by this HClass object.
getFirst() - Method in class harpoon.Analysis.BasicBlock
Deprecated. Use the standard List view provided by statements() instead
getFirst() - Method in interface harpoon.Analysis.BasicBlockInterf
Returns the first statement of the basic block.
getFirst() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns the first instruction of this basic block.
getFirstChild() - Method in class harpoon.IR.Tree.Tree
Returns the leftmost child of this tree, or null if this node has no children.
getFirstElement(HCode<HCE>) - Method in class harpoon.IR.Properties.CFGrapher
Deprecated. Use getFirstElements() instead.
getFirstElement() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the first instruction from this basic block.
getFirstElements(HCode<HCE>) - Method in class harpoon.IR.Properties.CFGrapher
Returns the first HCodeElements to be executed; that is, the roots of the control-flow graph.
getFlag() - Method in class gnu.getopt.LongOpt
Returns the value of the 'flag' field for this long option
getForwardNavigator() - Method in class harpoon.Analysis.CallGraph
Returns a forward-only top-down graph navigator through this callgraph.
getForwardNavigator() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns a forward-only navigator through this meta-callgraph.
getForwardNavigator() - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
getFPOffset() - Method in class harpoon.Backend.MIPS.StackInfo
 
getFrame(String, HMethod, AllocationStrategyFactory) - Static method in class harpoon.Backend.Backend
Create a frame object, given the name of a backend.
getFrame(String, HMethod) - Static method in class harpoon.Backend.Backend
Create a frame object, given the name of a backend.
getFrame() - Method in class harpoon.IR.Assem.Code
 
getFrame() - Method in class harpoon.IR.Assem.InstrFactory
Returns the Frame which is associated with all of the Instrs generated by this factory.
getFrame() - Method in class harpoon.IR.Tree.Code
 
getFrame() - Method in class harpoon.IR.Tree.Code.TreeFactory
 
getFrame() - Method in class harpoon.IR.Tree.Data.TreeFactory
Returns the HClass to which all HDataElements generated by this factory belong.
getFrame() - Method in class harpoon.IR.Tree.TreeFactory
Returns the Frame to be used to resolve machine-dependent issues for this TreeFactory.
getFrame() - Method in class harpoon.Main.CompilerState
 
getFullResult(HMethod, AnalysisPolicy) - Method in class harpoon.Analysis.PA2.PointerAnalysis
Similar to getInterProcResult but returns all information the pointer analysis is able to infer about hm.
getFullResult(HMethod, AnalysisPolicy) - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
getFullStage() - Static method in class harpoon.Analysis.PointerAnalysis.AllocSyncOptCompStage
Returns a compiler stage consisting of the sequential composition of a pointer analysis stage and a stack/heap allocation and sync removal optimization stage.
getFullStage() - Static method in class harpoon.Analysis.PointerAnalysis.PARTJSupportCompStage
Returns a compiler stage consisting of the sequential composition of a pointer analysis stage and a PARTJSupportCompStage.
getFunc() - Method in class harpoon.IR.Tree.INVOCATION
Returns an expression for the function reference to invoke.
getGCInfo() - Method in class harpoon.Backend.Generic.Frame
Returns the GCInfo for the backend associated with this.
getGCInfo() - Method in class harpoon.Backend.MIPS.Frame
 
getGCInfo() - Method in class harpoon.Backend.PreciseC.Frame
 
getGCInfo() - Method in class harpoon.Backend.Sparc.Frame
 
getGCInfo() - Method in class harpoon.Backend.StrongARM.Frame
 
getGCInfo() - Method in class harpoon.Interpret.Tree.DefaultFrame
There are no plans to ever have the Tree interpreter support GCInfo, so getGCInfo will always return null.
getGeneralRegisters() - Method in class harpoon.Backend.Generic.RegFileInfo
Returns an array of Temps for all the registers that the register allocator can feel free to play with
getGeneralRegisters() - Method in class harpoon.Backend.MIPS.RegFileInfo
 
getGeneralRegisters() - Method in class harpoon.Backend.Sparc.RegFileInfo
 
getGeneralRegisters() - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
getGeneralRegistersC() - Method in class harpoon.Backend.Generic.RegFileInfo
Returns a Collection of Temps for all the registers that the register allocator can feel free to play with
getGenericInterfaces() - Method in class harpoon.ClassFile.HClass
Returns the HTypes representing the interfaces implemented by the class or interface represented by this object.
getGenericParameterTypes() - Method in interface harpoon.ClassFile.HMethod
Returns an array of HType objects that represent the formal parameter types, in declaration order, of the method represented by this HMethod object.
getGenericReturnType() - Method in interface harpoon.ClassFile.HMethod
Returns an HType object that represents the formal return type of the method represented by this HMethod object.
getGenericSuperclass() - Method in class harpoon.ClassFile.HClass
Returns the HType representing the superclass of the entity (class, interface, primitive type or void) represented by this HClass.
getGenericType() - Method in interface harpoon.ClassFile.HField
Returns an HType object that represents the declared compile-time type for the field represented by this HField object.
getGenuine() - Method in class harpoon.Analysis.PointerAnalysis.PANode
 
getGlobalNode() - Method in class harpoon.Analysis.PA2.NodeRepository
 
getGrapher() - Method in class harpoon.IR.Tree.Code
Returns a means to externally associate control flow with this tree code.
getGrapher() - Method in class harpoon.IR.Tree.TreeCode
CFGrapher not valid for non-canonical trees.
getGrapherFor(InstrGroup.Type) - Method in class harpoon.Analysis.Instr.RegAlloc
(Helper method) Returns a CFGrapher that treats InstrGroups of Type t as single atomic elements.
getGrapherFor(InstrGroup.Type) - Method in class harpoon.IR.Assem.InstrFactory
Returns a CFGrapher that treats InstrGroups of Type t as single atomic elements.
getGroups() - Method in class harpoon.IR.Assem.Instr
Returns the Set of InstrGroups that this is an element of.
getHandler() - Method in class harpoon.IR.Tree.CALL
Returns an expression indicating the destination to which we should return if our caller throws an exception.
getHandler() - Method in class harpoon.IR.Tree.THROW
The location of the exception-handling code
getHandlerStartIndex() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the index of the first handler into the array of next (light) basic blocks.
getHasArg() - Method in class gnu.getopt.LongOpt
Returns the value set for the 'has_arg' field for this long option
getHCFWithEmptyInitCode(HCodeFactory) - Static method in class harpoon.Analysis.MemOpt.PreallocOpt
Returns a code factory that provides an intermediate representation for the empty body of the preallocated memory initialization.
getHClass() - Method in class harpoon.Analysis.MetaMethods.GenType
Returns the underlying HClass.
getHClass() - Method in class harpoon.Backend.Runtime1.Data
 
getHClass() - Method in class harpoon.ClassFile.HData
Return the HClass to which this HData belongs.
getHCode() - Method in class harpoon.Analysis.BasicBlock.Factory
Returns the HCode that this factory produces basic blocks of.
getHCode() - Method in interface harpoon.Analysis.BasicBlockFactoryInterf
Returns the HCode that this factory produces basic blocks of.
getHCode() - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Returns the HCode that this factory produces FCFG basic blocks of.
getHCode() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock.Factory
Returns the underlying HCode.
getHigh() - Method in class harpoon.Backend.StrongARM.TwoWordTemp
Returns the Temp representing the high order bits of this.
getHMethod() - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Returns the HMethod that this meta-method is a specialization of.
getId() - Method in class harpoon.Analysis.PA2.PANode
 
getID() - Method in interface harpoon.ClassFile.HCodeElement
Returns a unique numeric identifier for this element.
getID() - Method in interface harpoon.ClassFile.HDataElement
Returns a unique numeric identifier for this element.
getID() - Method in class harpoon.IR.Assem.Instr
 
getID() - Method in class harpoon.IR.Bytecode.Instr
Returns a unique numeric identifier for this element.
getID() - Method in class harpoon.IR.Quads.Quad
Returns a unique numeric identifier for this Quad.
getID() - Method in class harpoon.IR.Tree.Tree
Returns a unique numeric identifier for this Tree.
getIgnoreSet(Code) - Method in class harpoon.Analysis.PreciseGC.DynamicWBQuadPass
 
getIgnoreSet(Code) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierInserter.DefaultWriteBarrierAnalysis
returns the empty Set for all Codes.
getIgnoreSet(Code) - Method in interface harpoon.Analysis.PreciseGC.WriteBarrierInserter.WriteBarrierAnalysis
returns a Set of Quads for the given Code for which write barriers are not required.
getIndex() - Method in class harpoon.IR.Bytecode.OpLocalVariable
Get the local variable index
getInsideNode(Quad) - Method in class harpoon.Analysis.PA2.NodeRepository
 
getInsideNodeType(PANode) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Gets the type of an inside node.
getInstr() - Method in class harpoon.Analysis.Instr.TempInstrPair
 
getInstrBuilder() - Method in class harpoon.Backend.Generic.Frame
Returns the appropriate InstrBuilder for this Frame.
getInstrBuilder() - Method in class harpoon.Backend.MIPS.Frame
 
getInstrBuilder() - Method in class harpoon.Backend.PreciseC.Frame
 
getInstrBuilder() - Method in class harpoon.Backend.Sparc.Frame
 
getInstrBuilder() - Method in class harpoon.Backend.StrongARM.Frame
 
getInstrBuilder() - Method in class harpoon.Interpret.Tree.DefaultFrame
Stub added by FSK.
getInstrFactory() - Method in class harpoon.IR.Assem.Code
Allows access to the InstrFactory used by this codeview.
getInstrFor(Label) - Method in class harpoon.IR.Assem.Instr
Returns the InstrLABEL associated with l in the InstrFactory for this.
getInterestingAGETs(HMethod, HCode) - Method in class harpoon.Util.TypeInference.ArrayInfo
Returns the set of AGET instructions from hcode that access arrays of non primitive objects.
getInterestingAGETs(HMethod, HCode) - Method in class harpoon.Util.TypeInference.CachingArrayInfo
Returns the set of AGET instructions from hcode that access arrays of non primitive objects.
getInterface(int) - Method in class harpoon.Interpret.Tree.InterfaceList
Returns the i'th element of this InterfaceList
getInterfaces() - Method in class harpoon.ClassFile.HClass
Determines the interfaces implemented by the class or interface represented by this object.
getInterProcResult(HMethod, AnalysisPolicy) - Method in class harpoon.Analysis.PA2.PointerAnalysis
The simplified analysis result for the end of the method hm.
getInterProcResult(HMethod, AnalysisPolicy) - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
getIntParIntGraph(MetaMethod, boolean) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the full (internal) ParIntGraph attached to the method hm i.e. the graph at the end of the method.
getIntParIntGraph(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Equivalent to getIntParIntGraph(mm,true).
getIntParIntGraph(HMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
That's what you probably want: equivalent to getIntParIntGraph(new MetaMethod(hm, true)).
getIntThreadInteraction(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getLabel() - Method in class harpoon.IR.Assem.InstrLABEL
Return the code label specified in the constructor.
getLabeledForwardNavigator() - Method in class harpoon.Analysis.PA2.Mutation.MutationNFA
 
getLabelOfPtrToMemoryChunk() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
getLabelOfPtrToMemoryChunk() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
getLabelOfPtrToMemoryChunk() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
getLabelOfPtrToMemoryChunk() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
getLast() - Method in class harpoon.Analysis.BasicBlock
Deprecated. Use the standard List view provided by statements() instead
getLast() - Method in interface harpoon.Analysis.BasicBlockInterf
Returns the last statement of the basic block.
getLast() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns the last instruction of this basic block.
getLastElement() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the last instruction from this basic block.
getLastElements(HCode<HCE>) - Method in class harpoon.IR.Properties.CFGrapher
Returns the last HCodeElements to be executed; that is, the leaves of the control-flow graph.
getLBBConverter() - Method in class harpoon.Util.LightBasicBlocks.SCCLBBFactory
Returns the underlying LBBConverter.
getLeafElements() - Method in class harpoon.ClassFile.HCode
Return the 'leaves' of this code view; that is, the elements with no successors.
getLeafElements() - Method in class harpoon.IR.Assem.Code
 
getLeafElements() - Method in class harpoon.IR.Bytecode.Code
 
getLeafElements() - Method in class harpoon.IR.Quads.Code
Returns the leaves of the control flow graph.
getLeafElements() - Method in class harpoon.IR.Tree.Code
Returns the leaves of the Tree
getLeafElementsL() - Method in class harpoon.IR.Bytecode.Code
 
getLeaves() - Method in class harpoon.Analysis.BasicBlock.Factory
Returns the leaf BasicBlocks.
getLeaves() - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Returns the leaf FCFGBasicBlocks.
getLeavesBBInterf() - Method in class harpoon.Analysis.BasicBlock.Factory
Does the same thing as getLeaves.
getLeavesBBInterf() - Method in interface harpoon.Analysis.BasicBlockFactoryInterf
Returns the leaf BasicBlockInterfs.
getLeavesBBInterf() - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Does the same thing as getLeaves.
getLeft() - Method in class harpoon.IR.Tree.BINOP
Returns the subexpression of the left-hand side of the operator.
getLeft() - Method in class harpoon.IR.Tree.SEQ
Returns the statement to evaluate first.
getLine(HCodeElement) - Static method in class harpoon.Util.Util
Returns the line of the instruction q in the format source_file:line_number.
getLineNumber() - Method in interface harpoon.ClassFile.HCodeElement
Get the line in the original source file that this element is traceable to.
getLineNumber() - Method in class harpoon.IR.Assem.Instr
 
getLineNumber() - Method in class harpoon.IR.Bytecode.Instr
Returns the line in the original source file that this bytecode instruction can be traced to.
getLineNumber() - Method in class harpoon.IR.Quads.Quad
Returns the line in the original source file that this Quad is derived from.
getLineNumber() - Method in class harpoon.IR.Tree.Tree
Returns the line in the original source file that this Tree is derived from.
getLinker() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getLinker() - Method in class harpoon.Backend.Generic.Frame
The Linker object to use when compiling for this Frame.
getLinker() - Method in class harpoon.Backend.MIPS.Frame
 
getLinker() - Method in class harpoon.Backend.PreciseC.Frame
 
getLinker() - Method in class harpoon.Backend.Sparc.Frame
 
getLinker() - Method in class harpoon.Backend.StrongARM.Frame
 
getLinker() - Method in class harpoon.ClassFile.HClass
Returns the linker responsible for the resolution of this HClass object.
getLinker() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
getLinker() - Method in class harpoon.IR.Quads.QuadFactory
Returns the Linker used to resolve class names for all Quads.
getLinker() - Method in class harpoon.Main.CompilerState
 
getLiveAfter(HCodeElement) - Method in class harpoon.Analysis.DataFlow.CachingLiveTemps
 
getLiveAfter(HCodeElement) - Method in class harpoon.Analysis.DataFlow.LiveTemps
Returns the Set of Temps that are live on exit from hce.
getLiveAfter(HCodeElement) - Method in class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
 
getLiveBefore(HCodeElement) - Method in class harpoon.Analysis.DataFlow.LiveTemps
Returns the Set of Temps that are live on on entry to hce.
getLiveIn(HCodeElement) - Method in class harpoon.Analysis.DataFlow.LiveVars
 
getLiveIn(HCE) - Method in class harpoon.Analysis.Liveness
Returns the Set of Temps that are live-in at the HCodeElement.
getLiveIn(Quad) - Method in class harpoon.Analysis.Quads.QuadLiveness
Returns the Set of Temps that are live-in at the HCodeElement.
getLiveInandOutArray(Quad) - Method in class harpoon.Analysis.Quads.QuadLiveness
 
getLiveInArray(Quad) - Method in class harpoon.Analysis.Quads.QuadLiveness
Same as getLiveIn, but returns array of Temps.
getLiveOn(Edge) - Method in class harpoon.Analysis.MemOpt.SSILiveness
 
getLiveOnEntry(BasicBlock) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Returns the Set of variables that are live on entry to b.
getLiveOnExit(BasicBlock) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Returns the Set of variables that are live on exit from b.
getLiveOut(HCodeElement) - Method in class harpoon.Analysis.DataFlow.LiveVars
 
getLiveOut(HCE) - Method in class harpoon.Analysis.Liveness
Returns the Set of Temps that are live-out at the HCodeElement.
getLiveOut(Quad) - Method in class harpoon.Analysis.Quads.QuadLiveness
Returns the Set of Temps that are live-out at the HCodeElement.
getLiveOutArray(Quad) - Method in class harpoon.Analysis.Quads.QuadLiveness
Same as getLiveOut, but returns array of Temps.
getLoadNodeSpecial(HCodeElement, String) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Special function for load instructions that read multiple fields in the same time (the motivating example is that of "clone()") For such an instruction, a load node is generated for each field that is read (f in the parameter list).
getLocationFactory() - Method in class harpoon.Backend.Generic.Frame
Returns the appropriate LocationFactory for this Frame.
getLocationFactory() - Method in class harpoon.Backend.MIPS.Frame
 
getLocationFactory() - Method in class harpoon.Backend.PreciseC.Frame
 
getLocationFactory() - Method in class harpoon.Backend.Sparc.Frame
 
getLocationFactory() - Method in class harpoon.Backend.StrongARM.Frame
 
getLocationFactory() - Method in class harpoon.Interpret.Tree.DefaultFrame
Stub added by CSA.
getLongind() - Method in class gnu.getopt.Getopt
Returns the index into the array of long options (NOT argv) representing the long option that was found.
getLostNodes(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getLow() - Method in class harpoon.Backend.StrongARM.TwoWordTemp
Returns the Temp representing the low order bits of this.
getMain() - Method in class harpoon.Main.CompilerState
 
getMaxID(HCodeElement) - Static method in class harpoon.Analysis.DataFlow.TreeSolver
 
getMaxLocals() - Method in class harpoon.IR.Bytecode.Code
Get the number of local variables used in this method, including the parameters passed to the method on invocation.
getMaxStack() - Method in class harpoon.IR.Bytecode.Code
Get the maximum number of words on the operand stack at any point during execution of this method.
getMemAmount(Quad) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Returns the total amount of memory allocated at the allocation alloc.
getMemLimit() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
getMetaAllCallers() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the all callers graph used by this PointerAnalysis object.
getMetaCallGraph() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the call graph graph used by this PointerAnalysis object.
getMethod(String, HClass[]) - Method in class harpoon.ClassFile.HClass
Returns an HMethod object that reflects the specified accessible method of the class or interface represented by this HClass object.
getMethod(String, String) - Method in class harpoon.ClassFile.HClass
Returns an HMethod object that reflects the specified accessible method of the class or interface represented by this HClass object.
getMethod() - Method in class harpoon.ClassFile.HCode
Return the HMethod to which this HCode belongs.
getMethod(Linker, String, String, HClass[]) - Static method in class harpoon.Instrumentation.AllocationStatistics.InstrumentAllocs
Returns that method of class clsn that is called mn and has arguments of types a_types.
getMethod() - Method in class harpoon.IR.Assem.Code
 
getMethod() - Method in class harpoon.IR.Assem.InstrFactory
Returns the HMethod which corresponds to Instrs generated by this factory.
getMethod() - Method in class harpoon.IR.Bytecode.Code
Return the HMethod this codeview belongs to.
getMethod() - Method in class harpoon.IR.Quads.Code
Return the HMethod this codeview belongs to.
getMethod() - Method in class harpoon.IR.Quads.QuadFactory
Returns the HMethod for which all Quads correspond.
getMethod() - Method in class harpoon.IR.Tree.Code
Return the HMethod this codeview belongs to.
getMethod() - Method in class harpoon.IR.Tree.Code.TreeFactory
Returns the HMethod to which all Exps and Stms generated by this factory belong.
getMethod() - Method in class harpoon.IR.Tree.METHOD
Return the label which should mark the top of the method.
getMethods() - Method in class harpoon.ClassFile.HClass
Returns an array containing HMethod object reflecting all accessible member methods of the class or interface represented by this HClass object, including those declared by the class or interface and those inherited from superclasses and superinterfaces.
getModifiers() - Method in class harpoon.ClassFile.HClass
Returns the Java language modifiers for this class or interface, encoded in an integer.
getModifiers() - Method in interface harpoon.ClassFile.HField
Returns the Java language modifiers for the field represented by this HField object, as an integer.
getModifiers() - Method in interface harpoon.ClassFile.HMember
Returns the Java language modifiers for the member of constructor represented by this HMember, as an integer.
getModifiers() - Method in interface harpoon.ClassFile.HMethod
Returns the Java language modifiers for the method represented by this HMethod object, as an integer.
getMutatedAbstrFields(HMethod) - Method in class harpoon.Analysis.PA2.Mutation.MutationAnalysis
 
getMutationRegExp(HMethod) - Method in class harpoon.Analysis.PA2.Mutation.MutationAnalysis
 
getMutator() - Method in class harpoon.ClassFile.HClass
Returns a mutator for this HClass, or null if this object is immutable.
getMutator() - Method in interface harpoon.ClassFile.HField
Returns a mutator for this HField, or null if the object is immutable.
getMutator() - Method in interface harpoon.ClassFile.HMethod
Returns a mutator for this HMethod, or null if the object is immutable.
getName() - Method in class gnu.getopt.LongOpt
Returns the name of this LongOpt as a String
getName() - Method in class harpoon.Analysis.EnvBuilder.EnvCode
Return the name of this code view.
getName() - Method in class harpoon.Analysis.EventDriven.ContCode
Return the name of this code view.
getName() - Method in class harpoon.Analysis.EventDriven.ContCodeNoSSA
Return the name of this code view.
getName() - Method in class harpoon.Analysis.EventDriven.ContCodeSSI
Return the name of this code view.
getName() - Method in class harpoon.Analysis.EventDriven.EventDrivenCode
Return the name of this code view.
getName() - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadNoSSA
 
getName() - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
getName() - Method in class harpoon.Backend.CSAHack.RegAlloc.Code
 
getName() - Method in class harpoon.Backend.Generic.Code
 
getName() - Method in class harpoon.ClassFile.HClass
Returns the fully-qualified name of the type (class, interface, array, or primitive) represented by this HClass object, as a String.
getName() - Method in class harpoon.ClassFile.HCode
Return the name of this code view.
getName() - Method in interface harpoon.ClassFile.HConstructor
Returns the name of this constructor, as a string.
getName() - Method in interface harpoon.ClassFile.HField
Returns the name of the field represented by this HField object.
getName() - Method in interface harpoon.ClassFile.HInitializer
Returns the name of this class initializer, as a string.
getName() - Method in interface harpoon.ClassFile.HMember
Returns the simple name of the underlying member or constructor represented by this HMember.
getName() - Method in interface harpoon.ClassFile.HMethod
Returns the name of the method represented by this HMethod object, as a String.
getName() - Method in interface harpoon.ClassFile.HTypeVariable
Returns the name of this type variable.
getName() - Method in class harpoon.IR.Bytecode.Code
Return the name of this code view, "bytecode".
getName() - Method in class harpoon.IR.LowQuad.LowQuadNoSSA
Return the name of this code view.
getName() - Method in class harpoon.IR.LowQuad.LowQuadSSA
Return the name of this code view.
getName() - Method in class harpoon.IR.LowQuad.LowQuadSSI
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.Code
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.QuadNoSSA
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.QuadRSSx
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.QuadSSA
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.QuadSSI
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.QuadWithTry
Return the name of this code view.
getName() - Method in class harpoon.IR.Quads.ResilientNoSSA
Return the name of this code view.
getName() - Method in class harpoon.IR.Tree.CanonicalTreeCode
Return the name of this code view.
getName() - Method in class harpoon.IR.Tree.Code
Return the name of this code view.
getName() - Method in class harpoon.IR.Tree.OptimizedTreeCode
Return the name of this code view.
getName() - Method in class harpoon.IR.Tree.TreeCode
Return the name of this code view.
getNameMap() - Method in class harpoon.Backend.Generic.Runtime
Returns a NameMap valid for this Generic.Runtime.
getNameMap() - Method in class harpoon.Backend.Runtime1.Runtime
 
getNeighborsOf(Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Constructs an enumeration for the parents of a specific node.
getNext() - Method in class harpoon.IR.Assem.Instr
The next Instr to output after this.
getNextLBBs() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the array of successor light basic blocks.
getNextPtr() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
getNode(String) - Method in class harpoon.Analysis.Partition.WeightedGraph
 
getNodeRep() - Method in class harpoon.Analysis.PA2.PointerAnalysis
 
getNodeRep() - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
getNodeRepository() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getNodes() - Method in class harpoon.Analysis.Partition.WeightedGraph
 
getObjParamTypes(HMethod) - Static method in class harpoon.Analysis.PA2.PAUtil
Returns a list of the types of the object (=non-primitive) parameters of method hm.
getOffset() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Returns the offset of this ClazPointer.
getOffset() - Method in class harpoon.Interpret.Tree.StringPointer
Returns the offset of this StringPointer.
getOffset() - Method in class harpoon.Interpret.Tree.UndefinedPointer
Returns the offset of this UndefinedPointer.
getOffsetMap() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
getOpcode() - Method in class harpoon.IR.Bytecode.InCti
Return the java bytecode opcode of this instruction.
getOpcode() - Method in class harpoon.IR.Bytecode.InGen
Return the bytecode opcode of this instruction.
getOpcode() - Method in class harpoon.IR.Bytecode.InMerge
Return the java bytecode of this instruction.
getOpcode() - Method in class harpoon.IR.Bytecode.Instr
Returns the java bytecode of this instruction.
getOperand(int) - Method in class harpoon.IR.Bytecode.InGen
Return a specific operand of this instruction.
getOperand() - Method in class harpoon.IR.Bytecode.InRet
Returns the local variable operand of the RET instruction.
getOperand() - Method in class harpoon.IR.Tree.UNOP
Returns the subexpression to be operated upon.
getOperands() - Method in class harpoon.IR.Bytecode.InGen
Get all the operands of this instruction.
Getopt - Class in gnu.getopt
This is a Java port of GNU getopt, a class for parsing command line arguments passed to programs.
Getopt(String, String[], String) - Constructor for class gnu.getopt.Getopt
Construct a basic Getopt instance with the given input data.
Getopt(String, String[], String, LongOpt[]) - Constructor for class gnu.getopt.Getopt
Construct a Getopt instance with given input data that is capable of parsing long options as well as short.
Getopt(String, String[], String, LongOpt[], boolean) - Constructor for class gnu.getopt.Getopt
Construct a Getopt instance with given input data that is capable of parsing long options and short options.
getopt() - Method in class gnu.getopt.Getopt
This method returns a char that is the current option that has been parsed from the command line.
getOptarg() - Method in class gnu.getopt.Getopt
For communication from `getopt' to the caller.
getOptind() - Method in class gnu.getopt.Getopt
optind it the index in ARGV of the next element to be scanned.
getOption(String) - Static method in class harpoon.Util.Options.Option
 
getOptionalArg(int) - Method in class harpoon.Util.Options.Option
 
getOptions() - Method in class harpoon.Analysis.MemOpt.PreallocOpt.QuadPass
 
getOptions() - Method in class harpoon.Analysis.PA2.AllocSync.WPAllocSyncCompStage
 
getOptions() - Method in class harpoon.Analysis.PA2.Mutation.WPMutationAnalysisCompStage
 
getOptions() - Method in class harpoon.Analysis.PA2.WPPointerAnalysisCompStage
 
getOptions() - Method in class harpoon.Analysis.PointerAnalysis.AllocSyncOptCompStage
 
getOptions() - Method in class harpoon.Analysis.PointerAnalysis.PARTJSupportCompStage
 
getOptions() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
 
getOptions() - Method in class harpoon.Analysis.Realtime.Realtime.QuadPass
 
getOptions() - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
 
getOptions() - Method in class harpoon.Main.CodeGenerator
 
getOptions() - Method in class harpoon.Main.CompilerStage
 
getOptions() - Method in class harpoon.Main.CompilerStageEZ
 
getOptions() - Method in class harpoon.Main.CompStagePipeline
 
getOptions() - Method in class harpoon.Main.DynamicSyncRemoval.QuadPass
 
getOptions() - Method in class harpoon.Main.EventDrivenTransformation.QuadPass1
 
getOptions() - Method in class harpoon.Main.MZFCompilerStage
 
getOptions() - Method in class harpoon.Main.RoleInference
 
getOptions() - Static method in class harpoon.Main.Settings
 
getOptions() - Method in class harpoon.Main.Transactions.QuadPass
 
getOptions() - Method in class harpoon.Main.WriteBarriers.WBQuadPass
 
getOptopt() - Method in class gnu.getopt.Getopt
When getopt() encounters an invalid option, it stores the value of that option in optopt which can be retrieved with this method.
getOrderedMethods(HClass) - Method in class harpoon.Backend.Analysis.BasicGCInfo
Returns an ordered, unmodifiable List of HMethods with the following properties: - The declaring class of the HMethod is HClass
getOrderedMethods(HClass) - Method in class harpoon.Backend.Generic.GCInfo
Returns a List of HMethods with the following properties: - The declaring class of the HMethod is HClass
getPAAndAppsStage() - Static method in class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
Returns a compiler stage that is the sequential composition of a Pointer Analysis Construction stage (PointerAnalysisCompStage), a stage that uese pointer analysis information for allocation optimizations and synchronization removal (AllocSyncOptCompStage, and a stage that offers support for debugging and optimizing RTJ programs (PARTJSupportCompStage).
getPackage() - Method in class harpoon.ClassFile.HClass
Returns the package name of this HClass.
getParameterNames() - Method in interface harpoon.ClassFile.HMethod
Returns an array of String objects giving the declared names of the formal parameters of the method.
getParameterTypes() - Method in interface harpoon.ClassFile.HMethod
Returns an array of HClass objects that represent the formal parameter types, in declaration order, of the method represented by this HMethod object.
getParamNode(MetaMethod, int) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns the parameter node associated with the countth formal parameter of mmethod.
getParamNodes(HMethod) - Method in class harpoon.Analysis.PA2.NodeRepository
 
getParamNodes(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the parameter nodes of the method hm.
getParams() - Method in class harpoon.IR.Tree.METHOD
Return the temporary variables used for method formals.
getParams(int) - Method in class harpoon.IR.Tree.METHOD
 
getParamsLength() - Method in class harpoon.IR.Tree.METHOD
 
getParamTypes(HMethod) - Static method in class harpoon.Analysis.PA2.PAUtil
 
getParent() - Method in class harpoon.IR.Assem.InstrFactory
Returns the HCode to which all Instrs generated by this factory belong.
getParent() - Method in class harpoon.IR.Quads.QuadFactory
Returns the HCode to which all Quads generated by this QuadFactory belong.
getParent() - Method in class harpoon.IR.Tree.Code.TreeFactory
Returns the HCode to which all Exps and Stms generated by this factory belong.
getParent() - Method in class harpoon.IR.Tree.Data.TreeFactory
Returns the HCode to which all HDataElements generated by this factory belong.
getParent() - Method in class harpoon.IR.Tree.Tree
Returns the parent of this tree.
getParentsOf(Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Constructs an enumeration for the parents of a specific node.
getPigAfterQuad(MetaMethod, Quad) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the parallel interaction graph attached to the program point right after q in the body of meta-method mm.
getPIGAtQuad(MetaMethod, Quad) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the parallel interaction graph attached to the program point right after q in the body of meta-method mm.
getPIGAtQuad(HMethod, Quad) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getPigBeforeQuad(MetaMethod, Quad) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the parallel interaction graph attached to the program point right before q in the body of meta-method mm.
getPigForQuad(MetaMethod, Quad, int) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
getPossibleClasses() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns an array of GenTypes describing all the possible types (ie HClasses) this node can have.
getPotentialSpills() - Method in exception harpoon.Backend.Generic.RegFileInfo.SpillException
Returns an iterator of spill candidates.
getPrecedenceRelation() - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
getPrecedenceRelation() - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
Returns a relation that contains all the pairs <n2,n1> such that there was an edge from n1 to n2 (through some field f).
getPrefix(HClass) - Static method in class harpoon.Analysis.ContBuilder.ContBuilder
Builds the continuation.
getPrev() - Method in class harpoon.IR.Assem.Instr
The Instr that is output prior to this.
getPrevLBBs() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the array of predecessor light basic blocks.
getPriority(Object) - Method in class harpoon.Util.BinHeapPriorityQueue
 
getPriority(Object) - Method in interface harpoon.Util.MaxPriorityQueue
Returns the priority currently associated with this item.
getProtectedStartIndex() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Returns the index of the first protected basic block in the array of (light) basic blocks.
getQuad() - Method in class harpoon.Analysis.PA2.NodeRepository.INode
 
getQuadMapNoSSA2SSI() - Method in class harpoon.IR.Quads.QuadSSI
Every QuadSSI is built from a QuadNoSSA.
getQuadMapSSI2NoSSA() - Method in class harpoon.IR.Quads.QuadSSI
Returns the reverse of the map returned by getQuadMapNoSSA2SSI.
getQuads() - Method in class harpoon.IR.Quads.RSSxToNoSSA
 
getQuads() - Method in class harpoon.IR.Quads.ToNoSSA
 
getRAOffset() - Method in class harpoon.Backend.MIPS.StackInfo
 
getRawClass() - Method in interface harpoon.ClassFile.HParameterizedType
Returns an HClass object representing the generic class or interface that this parameterized type instantiates.
getReachableFromExcp() - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Returns the set of nodes reachable from the exceptionally returned nodes (including the exceptionally returned nodes).
getReachableFromR() - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Returns the set of nodes reachable from the returned nodes (including the returned nodes).
getReachingAfter(HCodeElement) - Method in class harpoon.Analysis.DataFlow.ReachingHCodeElements
Returns the Set of HCodeElementss which represent a definition that reaches the point directly after hce.
getReachingBefore(HCodeElement) - Method in class harpoon.Analysis.DataFlow.ReachingHCodeElements
Returns the Set of HCodeElementss which represent a definition that reaches the point directly before hce.
getReg(Temp) - Method in class harpoon.Analysis.Instr.EqTempSets
Returns the register temp associated with t.
getRegAssignments(Temp) - Method in class harpoon.Backend.Generic.RegFileInfo
Produces a mutable Set of register assignments that can hold t.
getRegAssignments(Temp) - Method in class harpoon.Backend.MIPS.RegFileInfo
 
getRegAssignments(Temp) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
getRegFileInfo() - Method in class harpoon.Backend.Generic.Frame
Returns the appropriate RegFileInfo for this Frame.
getRegFileInfo() - Method in class harpoon.Backend.MIPS.Frame
 
getRegFileInfo() - Method in class harpoon.Backend.PreciseC.Frame
 
getRegFileInfo() - Method in class harpoon.Backend.Sparc.Frame
 
getRegFileInfo() - Method in class harpoon.Backend.StrongARM.Frame
 
getRegFileInfo() - Method in class harpoon.Interpret.Tree.DefaultFrame
Stub added by FSK.
getRegister(int) - Method in class harpoon.Backend.Generic.RegFileInfo
Returns a specific register on the machine.
getRegister(int) - Method in class harpoon.Backend.MIPS.RegFileInfo
 
getRegister(int) - Method in class harpoon.Backend.Sparc.RegFileInfo
 
getRegister(int) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
getRegisterName(Instr, Temp, String) - Method in class harpoon.Backend.CSAHack.RegAlloc.Code
 
getRegisterName(Instr, Temp, String) - Method in class harpoon.IR.Assem.Code
Returns an assembly code identifier for the register that val will be stored into.
getRegisters(Instr, Temp) - Method in class harpoon.Backend.Generic.Code
Returns all of the Register Temps that val maps to in i.
getRemovalSuggestions() - Method in class harpoon.Analysis.GraphColoring.UnableToColorGraph
returns a Collection of nodes that are suggested for removal to make some external graph colorable.
getRemovalSuggestionsBackup() - Method in class harpoon.Analysis.GraphColoring.UnableToColorGraph
returns a Collection of nodes that are suggested for removal to make some external graph colorable.
getRep(Temp) - Method in class harpoon.Analysis.Instr.EqTempSets
Returns the rep for t.
getResourceAsStream(String) - Static method in class harpoon.ClassFile.Loader
Open an InputStream on a resource found somewhere in the CLASSPATH.
getRetex() - Method in class harpoon.IR.Tree.CALL
Returns the destination expression for any exception which the callee might throw.
getRetex() - Method in class harpoon.IR.Tree.THROW
The exceptional value to return
getReturnType(HCode) - Method in class harpoon.Analysis.TypeInference.InterProc
 
getReturnType() - Method in interface harpoon.ClassFile.HMethod
Returns a HClass object that represents the formal return type of the method represented by this HMethod object.
getReturnType() - Method in class harpoon.IR.Tree.METHOD
Return an integer enumeration (see Typed) of the return type of the method.
getRetval() - Method in class harpoon.IR.Tree.INVOCATION
Returns the expression indicating the destination of the return value.
getRetval() - Method in class harpoon.IR.Tree.RETURN
Returns the value to return.
getRight() - Method in class harpoon.IR.Tree.BINOP
Returns the subexpression of the right-hand side of the operator.
getRight() - Method in class harpoon.IR.Tree.SEQ
Returns the statement to evaluate last.
getRoot() - Method in class harpoon.Analysis.BasicBlock.Factory
Returns the root BasicBlock.
getRoot() - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Returns the root FCFGBasicBlock.
getRoot() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the root of this node.
getRoot() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock.Factory
Returns the root LightBasicBlock.
getRootBBInterf() - Method in class harpoon.Analysis.BasicBlock.Factory
Does the same thing as getRoot.
getRootBBInterf() - Method in interface harpoon.Analysis.BasicBlockFactoryInterf
Returns the root BasicBlockInterfs.
getRootBBInterf() - Method in class harpoon.Analysis.FCFGBasicBlock.Factory
Does the same thing as getRoot.
getRootElement() - Method in class harpoon.Backend.Runtime1.Data
 
getRootElement() - Method in class harpoon.ClassFile.HCode
Return the 'root' element of this code view.
getRootElement() - Method in class harpoon.ClassFile.HData
Return the 'root' element of this data view.
getRootElement() - Method in class harpoon.IR.Assem.Code
 
getRootElement() - Method in class harpoon.IR.Quads.Code
Returns the root of the control flow graph.
getRootElement() - Method in class harpoon.IR.Tree.Code
Returns the root of the Tree
getRootloop(HCode) - Method in class harpoon.Analysis.Loops.LoopFinder
This method returns the Root level loop for a given HCode.
getRoots() - Method in class harpoon.Analysis.CallGraph
 
getRoots() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
 
getRoots() - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
getRoots(Linker) - Static method in class harpoon.Analysis.Realtime.Realtime
 
getRoots() - Method in class harpoon.Main.CompilerState
 
getRunMetaMethods() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns the set of the meta-methods that could be called as the body of some thread.
getRunMetaMethods() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
 
getRunMethods() - Method in class harpoon.Analysis.CallGraph
 
getRunMethods() - Method in class harpoon.Analysis.MetaMethods.SmartCallGraph
 
getRunMethods() - Method in class harpoon.Analysis.Quads.CachingCallGraph
 
getRuntime() - Method in class harpoon.Backend.Generic.Frame
Returns the appropriate Generic.Runtime for this Frame.
getRuntime() - Method in class harpoon.Backend.MIPS.Frame
 
getRuntime() - Method in class harpoon.Backend.PreciseC.Frame
 
getRuntime() - Method in class harpoon.Backend.Sparc.Frame
 
getRuntime() - Method in class harpoon.Backend.StrongARM.Frame
 
getRuntime() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
getSafeParamIndices(HMethod) - Method in class harpoon.Analysis.PA2.Mutation.MutationAnalysis
 
getSafeParams(HMethod) - Method in class harpoon.Analysis.PA2.Mutation.MutationAnalysis
 
getScope() - Method in class harpoon.Temp.TempFactory
Returns the static scope of this TempFactory.
getSibling() - Method in class harpoon.IR.Tree.Tree
Returns the right sibling of this tree, null if there are no siblings to the right of this node.
getSize(Temp) - Method in class harpoon.Backend.Generic.InstrBuilder
Returns the size of temp on the stack.
getSize(Temp) - Method in class harpoon.Backend.MIPS.InstrBuilder
 
getSize(Temp) - Method in class harpoon.Backend.MIPS.RegFileInfo
 
getSize(Temp) - Method in class harpoon.Backend.StrongARM.InstrBuilder
 
getSLR(HClass, String) - Static method in class harpoon.Main.Lint
method for caching sourcelinereaders
getSourceFile() - Method in class harpoon.ClassFile.HClass
Return the name of the source file for this class, or a zero-length string if the information is not available.
getSourceFile() - Method in interface harpoon.ClassFile.HCodeElement
Get the original source file name that this element is derived from.
getSourceFile() - Method in interface harpoon.ClassFile.HDataElement
Get the original source file name that this element is derived from.
getSourceFile() - Method in class harpoon.IR.Assem.Instr
 
getSourceFile() - Method in class harpoon.IR.Bytecode.Instr
Returns the original source file name that this bytecode instruction is derived from.
getSourceFile() - Method in class harpoon.IR.Quads.Quad
Returns the original source file name that this Quad is derived from.
getSourceFile() - Method in class harpoon.IR.Tree.Tree
Returns the original source file name that this Tree is derived from.
getSpecialInside(Quad, GenType) - Method in class harpoon.Analysis.PA2.NodeRepository
 
getSpecialLoad(Quad, HField) - Method in class harpoon.Analysis.PA2.NodeRepository
 
getSplitRelation() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Computes the split relation.
getSplitRelation() - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Computes the split relation.
getSrc() - Method in class harpoon.IR.Tree.MOVE
Returns the expression for the computed value.
getSSIQuad(Quad) - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Takes a Quad in NoSSA form, and returns the corresponding quad in SSI form, generated by the HCodeFactory used to create this IncompatibilityAnalysis instance.
getStackInfo() - Method in class harpoon.Backend.MIPS.CodeGen
 
getStage(int) - Method in class harpoon.Main.CompStagePipeline
 
GETSTATIC - Static variable in class harpoon.IR.Bytecode.Op
 
GETSTATIC2_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
GETSTATIC_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
getStaticNode(String) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns the static node associated with the class class_name.
getStdLibVerName() - Static method in class harpoon.Main.Settings
Returns a string that describes the standard library implementation that we use.
getStm() - Method in class harpoon.IR.Tree.ESEQ
Returns the statement to evaluate for side-effects.
getSuperclass() - Method in class harpoon.ClassFile.HClass
If this object represents any class other than the class Object, then the object that represents the superclass of that class is returned.
getTail() - Method in class harpoon.IR.Assem.InstrFactory
 
getTargets() - Method in class harpoon.IR.Assem.Instr
List of target labels that this can branch to.
getTemp() - Method in class harpoon.Analysis.Instr.TempInstrPair
 
getTempBuilder() - Method in class harpoon.Backend.Generic.Frame
Returns the Generic.TempBuilder for the backend associated with this.
getTempBuilder() - Method in class harpoon.Backend.MIPS.Frame
 
getTempBuilder() - Method in class harpoon.Backend.PreciseC.Frame
 
getTempBuilder() - Method in class harpoon.Backend.Sparc.Frame
 
getTempBuilder() - Method in class harpoon.Backend.StrongARM.Frame
 
getTempBuilder() - Method in class harpoon.Interpret.Tree.DefaultFrame
Stub added by FSK.
getTempLocator() - Method in interface harpoon.Analysis.Instr.RegAlloc.IntermediateCode
 
getter2field - Variable in class harpoon.Analysis.SizeOpt.Field2Method
This maps 'getter' methods to the field they get.
getTest() - Method in class harpoon.IR.Tree.CJUMP
Returns the test condition for this CJUMP.
getTransCallees(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Returns the set of all the meta methods that might be called, directly or indirectly, by the meta method mm.
getTransCallees(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Returns the set of all the meta methods that might be called, directly or indirectly, by meta method mm.
getTransCallers(MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaAllCallers
Returns the meta-methods that transitively call the meta-method mm_callee.
getTree() - Method in class harpoon.IR.Tree.ToCanonicalTree
Returns the root of the generated tree code
getTreeBuilder() - Method in class harpoon.Backend.Generic.Runtime
Returns a TreeBuilder object for this Generic.Runtime.
getTreeBuilder() - Method in class harpoon.Backend.Runtime1.Runtime
 
getTreeDerivation() - Method in class harpoon.IR.Tree.CanonicalTreeCode
Returns a TreeDerivation object for the generated Tree form.
getTreeDerivation() - Method in class harpoon.IR.Tree.Code
 
getTreeDerivation() - Method in class harpoon.IR.Tree.OptimizedTreeCode
 
getTreeDerivation() - Method in class harpoon.IR.Tree.ToCanonicalTree
Returns a TreeDerivation object for the generated Tree form.
getTreeDerivation() - Method in class harpoon.IR.Tree.TreeCode
 
getTryBlocks() - Method in class harpoon.IR.Bytecode.Code
Get an array with the try-catch blocks/handlers for this bytecode.
getTSParent() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the parent of this node, on the thread specialization branch.
getType(int) - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Returns the type of the i-th parameter.
getType() - Method in class harpoon.Backend.MIPS.Frame
 
getType() - Method in interface harpoon.ClassFile.HField
Returns an HClass object that identifies the declared type for the field represented by this HField object.
getType() - Method in class harpoon.IR.Bytecode.OpConstant
Return the HClass type of this Operand.
getType(ExactTemp) - Method in class harpoon.Util.TypeInference.TypeInference
Returns the possible types for the temp et.t in the quad et.q.
getTypeParameters() - Method in class harpoon.ClassFile.HClass
Returns an array of HClassTypeVariable objects that represents the type variables declared by the class or interface represented by this HClass object, in declaration order.
getTypeParameters() - Method in interface harpoon.ClassFile.HMethod
Returns an array of HMethodTypeVariable objects that represent the type variables declared by the method represented by this HMethod object, in declaration order.
getUnharmfulMethods() - Static method in class harpoon.Analysis.PointerAnalysis.InterProcPA
 
getUniqueID() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
getUniqueID() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
getUniqueID() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
getUniqueID() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
getUniqueID() - Method in class harpoon.IR.Assem.InstrFactory
Returns a unique ID number for each new Instr generated by this factory.
getUniqueID() - Method in class harpoon.IR.Quads.QuadFactory
Returns a unique number for a Quad within this QuadFactory.
getUniqueID(String) - Method in class harpoon.Temp.TempFactory
Returns a unique identifier within this scope.
getUsedDANum() - Method in class harpoon.Backend.MIPS.Frame
 
getUseDefer() - Method in class harpoon.IR.Tree.Code
Returns a means to externally associate use/def information with this tree code.
getUseDefer() - Method in class harpoon.IR.Tree.TreeCode
UseDefer not valid for non-canonical trees.
getUseDeferFor(InstrGroup.Type) - Method in class harpoon.Analysis.Instr.RegAlloc
(Helper method) Returns a UseDefer that treats InstrGroups of Type t as single atomic elements.
getUseDeferFor(InstrGroup.Type) - Method in class harpoon.IR.Assem.InstrFactory
Returns a UseDefer that treats InstrGroups of Type t as single atomic elements.
getVal() - Method in class gnu.getopt.LongOpt
Returns the value of the 'val' field for this long option
getValue(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
 
getValue() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Dereferences this InterfaceListPointer and returns the value it points to.
getValue() - Method in class harpoon.Interpret.Tree.StringPointer
Returns the value obtained by dereferencing this StringPointer.
getValue() - Method in class harpoon.IR.Bytecode.OpConstant
Return the value of this Operand.
getValues(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
getValues(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelationMapBased
 
getValues(Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Returns the image of key through this relation.
getValues(Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
getValues2(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
getValues2(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelationMapBased
 
getWeight(WGNode) - Method in class harpoon.Analysis.Partition.WGNode
 
getWeights() - Method in class harpoon.Analysis.Partition.WGNode
 
getWrapper(Linker) - Method in class harpoon.ClassFile.HClass
If this HClass is a primitive type, return the wrapper class for values of this type.
getWTSpec() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the weak thread specialization of this node.
GLOBAL - Static variable in class harpoon.Analysis.Instr.RegAlloc
 
GLOBAL_STATEMENTS - Static variable in class harpoon.Tools.PatMat.Sym
 
global_stms - Variable in class harpoon.Tools.PatMat.Spec
Java code statements that are going to be placed outside class body (package declaration, import statements).
gnu.getopt - package gnu.getopt
This is a Java port of the GNU getopt functions for command-line parsing.
goesTo(Node) - Method in class harpoon.Backend.CSAHack.Graph.Node
 
GOTO - Static variable in class harpoon.IR.Bytecode.Op
 
GOTO - Static variable in class harpoon.Tools.Annotation.Sym
 
GOTO_W - Static variable in class harpoon.IR.Bytecode.Op
 
Graph - Interface in harpoon.Analysis.GraphColoring
Abstractly, a Graph is a pair (V, E), where V is a set of nodes and E is collection of edges between those nodes.
Graph - Class in harpoon.Backend.CSAHack.Graph
 
Graph() - Constructor for class harpoon.Backend.CSAHack.Graph.Graph
 
Graph - Class in harpoon.Main
Graph is a command-line graph generation tool.
Graph() - Constructor for class harpoon.Main.Graph
 
Graph<N extends Graph.Node<N,E>,E extends Graph.Edge<N,E>> - Interface in harpoon.Util.Collections
This is a generic Graph implementation.
Graph - Class in harpoon.Util
Graph
Graph() - Constructor for class harpoon.Util.Graph
 
Graph.Edge<N extends Graph.Node<N,E>,E extends Graph.Edge<N,E>> - Interface in harpoon.Util.Collections
This class represents edges between Nodes in a Graph.
Graph.Node<N extends Graph.Node<N,E>,E extends Graph.Edge<N,E>> - Interface in harpoon.Util.Collections
This class represents nodes in a Graph.
GraphColorer - Class in harpoon.Analysis.GraphColoring
GraphColorer is a class for describing a graph coloring algorithm.
GraphColorer() - Constructor for class harpoon.Analysis.GraphColoring.GraphColorer
Creates a GraphColorer.
GraphColoringRegAlloc - Class in harpoon.Analysis.Instr
GraphColoringRegAlloc uses graph coloring heuristics to find a register assignment for a Code.
GraphColoringRegAlloc(Code, GraphColorer) - Constructor for class harpoon.Analysis.Instr.GraphColoringRegAlloc
Creates a GraphColoringRegAlloc, assigning `gc' as its graph coloring strategy and using a overly conservative move coalescing strategy.
GraphColoringRegAlloc(Code, GraphColorer, boolean) - Constructor for class harpoon.Analysis.Instr.GraphColoringRegAlloc
Creates a GraphColoringRegAlloc, assigning `gc' as its graph coloring strategy.
Grapher<N> - Interface in harpoon.Util
Grapher is an abstract interface for specifying the graph properties of data structures so that generic graph algorithms may be applied.
GraphOptimizations - Class in harpoon.Analysis.PA2
GraphOptimizations
GraphOptimizations() - Constructor for class harpoon.Analysis.PA2.GraphOptimizations
 
GraphVisualizer - Class in harpoon.Analysis.GraphColoring
 
GraphVisualizer() - Constructor for class harpoon.Analysis.GraphColoring.GraphVisualizer
 
grow(Temp[], int) - Method in class harpoon.IR.Quads.PHI
Grow the arity of a PHI by one by replacing it.
grow(ArrayFactory<T>, T[], T, int) - Static method in class harpoon.Util.Util
Insert element o before src[n].
GT - Static variable in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
> case
GT - Static variable in class harpoon.Tools.Annotation.Sym
 
GTE - Static variable in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
>= case
gtemp(Node) - Method in class harpoon.Backend.CSAHack.RegAlloc.InterferenceGraph
 
gtemp(Node) - Method in class harpoon.Backend.CSAHack.RegAlloc.Liveness
 
GTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 

H

HACKED_GC - Static variable in class harpoon.Analysis.MemOpt.PreallocOpt
Set this to true only if you use the hacked BDW GC version that has "GC_malloc_prealloc".
handler() - Method in class harpoon.IR.Bytecode.Code.ExceptionEntry
 
HANDLER - Class in harpoon.IR.Quads
A HANDLER quad marks an entry to an exception handler.
HANDLER(QuadFactory, HCodeElement, Temp, HClass, HANDLER.ProtectedSet) - Constructor for class harpoon.IR.Quads.HANDLER
Creates a HANDLER.
HANDLER - Static variable in class harpoon.IR.Quads.QuadKind
 
handler - Variable in class harpoon.Tools.PatMat.Spec.StmCall
Exception handler label.
handler - Variable in class harpoon.Tools.PatMat.Spec.StmThrow
The location of the exception-handling code to return to.
HANDLER.ProtectedSet - Interface in harpoon.IR.Quads
An interface to specify which Quads a particular HANDLER protects.
handler_bb - Variable in class harpoon.Analysis.FCFGBasicBlock
Successor BBs in the exceptional control flow.
handler_pc - Variable in class harpoon.IR.RawClass.ExceptionTable
The value of the handler_pc item indicates the start of the exception handler.
handlerList() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns the list of successor BBs in the exceptional control flow.
handlers() - Method in class harpoon.IR.Quads.Quad
Return a set of all the handlers guarding this Quad.
HandlerSet - Class in harpoon.IR.Quads
A HandlerSet is a linked list of handlers, for purposes of comparison.
handleSIGMAEdge(SIGMA, Set, int) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
harpoon.Analysis - package harpoon.Analysis
This package contains analysis routines applicable to a variety of intermediate representations.
harpoon.Analysis.Companions - package harpoon.Analysis.Companions
This package contains code to implement the "Points-To Analysis with Companion Objects" described in my whitepaper.
harpoon.Analysis.ContBuilder - package harpoon.Analysis.ContBuilder
 
harpoon.Analysis.Counters - package harpoon.Analysis.Counters
This package defines a facility for simple counters which can easily be spliced into a quad-form code for instrumentation purposes and enabled/disabled individually or in groups by properties on the command-line.
harpoon.Analysis.DataFlow - package harpoon.Analysis.DataFlow
Provides the classes for performing Data-Flow Analysis on a number of Intermediate Representations.
harpoon.Analysis.DynamicSyncRemoval - package harpoon.Analysis.DynamicSyncRemoval
This package defines a transformation that inserts a dynamic check before every synchronization operation, skipping the synchronization if the check returns true.
harpoon.Analysis.EnvBuilder - package harpoon.Analysis.EnvBuilder
 
harpoon.Analysis.EventDriven - package harpoon.Analysis.EventDriven
 
harpoon.Analysis.GraphColoring - package harpoon.Analysis.GraphColoring
Provides the classes for coloring generic Graphs.
harpoon.Analysis.Instr - package harpoon.Analysis.Instr
Provides the classes for performing general analyses on code in the Instr intermediate representation.
harpoon.Analysis.Loops - package harpoon.Analysis.Loops
This package contains the Loops interface for representing nested loops trees.
harpoon.Analysis.LowQuad - package harpoon.Analysis.LowQuad
This package contains analysis routines applicable only to the IR.LowQuad intermediate representation.
harpoon.Analysis.LowQuad.Loop - package harpoon.Analysis.LowQuad.Loop
This package contains code to do loop invariant hoisting, strength reduction, and induction variable elimination.
harpoon.Analysis.Maps - package harpoon.Analysis.Maps
 
harpoon.Analysis.MemOpt - package harpoon.Analysis.MemOpt
This package contains an (in)compatibility analysis and a related memory preallocation optimization.
harpoon.Analysis.MetaMethods - package harpoon.Analysis.MetaMethods
 
harpoon.Analysis.PA2 - package harpoon.Analysis.PA2
 
harpoon.Analysis.PA2.AllocSync - package harpoon.Analysis.PA2.AllocSync
 
harpoon.Analysis.PA2.Mutation - package harpoon.Analysis.PA2.Mutation
 
harpoon.Analysis.Partition - package harpoon.Analysis.Partition
 
harpoon.Analysis.PointerAnalysis - package harpoon.Analysis.PointerAnalysis
 
harpoon.Analysis.PreciseGC - package harpoon.Analysis.PreciseGC
 
harpoon.Analysis.Quads - package harpoon.Analysis.Quads
This package contains analysis routines applicable only to the IR.Quads intermediate representation.
harpoon.Analysis.Quads.DeepInliner - package harpoon.Analysis.Quads.DeepInliner
This package contains code that perform inlining.
harpoon.Analysis.Quads.SCC - package harpoon.Analysis.Quads.SCC
An implementation of Sparse Conditional Constant propagation for SSI form, extended to do predicated optimizations.
harpoon.Analysis.Realtime - package harpoon.Analysis.Realtime
Classes to implement and optimize the MemoryArea pointer access restrictions described in Sun's Realtime Java Specification.
harpoon.Analysis.RoleInference - package harpoon.Analysis.RoleInference
 
harpoon.Analysis.SizeOpt - package harpoon.Analysis.SizeOpt
This package contains various size optimizations, most of which operate on quad form.
harpoon.Analysis.Transactions - package harpoon.Analysis.Transactions
This package defines a transformation that converts synchronization into fully-atomic operations.
harpoon.Analysis.Transformation - package harpoon.Analysis.Transformation
General-purpose code transformation helpers not specific to an IR.
harpoon.Analysis.Tree - package harpoon.Analysis.Tree
This package contains analysis routines applicable only to the IR.Tree intermediate representation.
harpoon.Analysis.TypeInference - package harpoon.Analysis.TypeInference
 
harpoon.Backend - package harpoon.Backend
 
harpoon.Backend.Analysis - package harpoon.Backend.Analysis
This package contains the various analyses needed for the backend.
harpoon.Backend.CSAHack.FlowGraph - package harpoon.Backend.CSAHack.FlowGraph
 
harpoon.Backend.CSAHack.Graph - package harpoon.Backend.CSAHack.Graph
 
harpoon.Backend.CSAHack.RegAlloc - package harpoon.Backend.CSAHack.RegAlloc
 
harpoon.Backend.Generic - package harpoon.Backend.Generic
Abstract superclasses for machine- or runtime-dependent classes.
harpoon.Backend.Maps - package harpoon.Backend.Maps
Various maps used by the backend, including interface, field, and method numbering maps, symbol mangling maps, and backend-specific type maps.
harpoon.Backend.MIPS - package harpoon.Backend.MIPS
Provides the classes for generating assembly code targetting the MIPS architecture.
harpoon.Backend.PreciseC - package harpoon.Backend.PreciseC
Provides the classes for generating extremely-ugly C code supporting precise garbage collection from Tree codeviews.
harpoon.Backend.Runtime1 - package harpoon.Backend.Runtime1
Runtime1 is the first implementation of a FLEX backend runtime system.
harpoon.Backend.Runtime2 - package harpoon.Backend.Runtime2
 
harpoon.Backend.RuntimeTiny - package harpoon.Backend.RuntimeTiny
RuntimeTiny is a size-optimized version of the FLEX backend.
harpoon.Backend.Sparc - package harpoon.Backend.Sparc
Provides the classes for generating assembly code targetting the SPARC architecture.
harpoon.Backend.StrongARM - package harpoon.Backend.StrongARM
Provides the classes for generating assembly code targetting the StrongARM platform.
harpoon.ClassFile - package harpoon.ClassFile
Representations of class hierarchy, object structure, and method code.
harpoon.Instrumentation.AllocationStatistics - package harpoon.Instrumentation.AllocationStatistics
This package contains code for instrumenting the allocation sites from a program in order to measure how many times each allocation site is executed (ie, how many objects are allocated at each allocation site).
harpoon.Interpret.Quads - package harpoon.Interpret.Quads
An interpreter for quad form.
harpoon.Interpret.Tree - package harpoon.Interpret.Tree
An interpreter for tree form.
harpoon.IR - package harpoon.IR
Parent package for implementations of intermediate representations.
harpoon.IR.Assem - package harpoon.IR.Assem
An opaque representation of machine-specific assembly instructions for use in register-allocation.
harpoon.IR.Bytecode - package harpoon.IR.Bytecode
An analysis-oriented representation of Java bytecode.
harpoon.IR.Jasmin - package harpoon.IR.Jasmin
This package contains code to output Quad form with explicit tries to Jasmin assembly code.
harpoon.IR.LowQuad - package harpoon.IR.LowQuad
A low-level quadruple-based IR with explicit pointers.
harpoon.IR.Properties - package harpoon.IR.Properties
This package contains interfaces defining various properties of an intermediate representation.
harpoon.IR.Quads - package harpoon.IR.Quads
A flat, typed, high-level quadruple-based IR.
harpoon.IR.RawClass - package harpoon.IR.RawClass
A representation of the on-disk format of a bytecode file.
harpoon.IR.Tree - package harpoon.IR.Tree
An expression-tree oriented low-level IR, intended to facilitate machine-specific pattern-matching code-generation.
harpoon.Main - package harpoon.Main
 
harpoon.RunTime - package harpoon.RunTime
 
harpoon.Runtime - package harpoon.Runtime
This package contains runtime-support classes for any FLEX optimizations/transformations which need them.
harpoon.Runtime.PreciseGC - package harpoon.Runtime.PreciseGC
 
harpoon.Runtime.Transactions - package harpoon.Runtime.Transactions
Runtime support for the atomic-transactions transformation implemented in the harpoon.Analysis.LowQuad.Transactions package.
harpoon.Temp - package harpoon.Temp
Provides the classes for uniquely generating and manipulating Temporaries that represent variables or symbolic addresses.
harpoon.Tools.Annotation - package harpoon.Tools.Annotation
Source-code annotation tool.
harpoon.Tools.Annotation.Lex - package harpoon.Tools.Annotation.Lex
Java lexer for the source-code annotation tool.
harpoon.Tools.PatMat - package harpoon.Tools.PatMat
Pattern-matching instruction-selector-generator tool.
harpoon.Util - package harpoon.Util
Useful utility classes, including general-purpose algorithms and data-types as well as FLEX-specific utility functions.
harpoon.Util.BasicBlocks - package harpoon.Util.BasicBlocks
 
harpoon.Util.Collections - package harpoon.Util.Collections
Provides the classes for working with and generating Collections and Graphs of Objects (mostly migrated to the stand-alone JUtil package).
harpoon.Util.LightBasicBlocks - package harpoon.Util.LightBasicBlocks
 
harpoon.Util.Options - package harpoon.Util.Options
 
harpoon.Util.TypeInference - package harpoon.Util.TypeInference
 
has_arg - Variable in class gnu.getopt.LongOpt
Indicates whether the option has no argument, a required argument, or an optional argument.
hasAnalyzedCALL(CALL, HMethod) - Method in class harpoon.Analysis.PA2.PointerAnalysis
Checks whether the call cs to callee has been analyzed or not.
hasAnalyzedCALL(CALL, HMethod) - Method in class harpoon.Analysis.PA2.WPPointerAnalysis
 
hasBeenModified() - Method in class harpoon.ClassFile.HClass
Determines whether any part of this HClass has been modified from its originally loaded state.
hasConflicts() - Method in class harpoon.IR.Quads.PHI
Returns true if any of the sources of any of the phi functions match a destination of a phi function.
hasContainer() - Method in class harpoon.IR.Assem.InstrGroup
Returns true if this is contained in a super group, else false.
hasDefault - Variable in class harpoon.IR.Quads.TYPESWITCH
True if this TYPESWITCH has a default case.
hasDefault() - Method in class harpoon.IR.Quads.TYPESWITCH
Returns true if this TYPESWITCH has a default case.
hasEscaped(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Checks if node has escaped in some hole, ie if node could be accessed by unanalyzed code.
hasEscapedIntoAMethod(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Checks whether node escapes into a method hole or not.
hasEscapedIntoANode(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Checks whether node escapes through a node or not.
hashCode() - Method in class harpoon.Analysis.Context
 
hashCode() - Method in class harpoon.Analysis.GraphColoring.DefaultSparseNode
 
hashCode() - Method in class harpoon.Analysis.GraphColoring.Node
 
hashCode() - Method in class harpoon.Analysis.Instr.TempInstrPair
 
hashCode() - Method in class harpoon.Analysis.MetaMethods.GenType
Computes the hash code of this object.
hashCode() - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Computes the hash code of this object.
hashCode() - Method in class harpoon.Analysis.PA2.AnalysisPolicy
 
hashCode() - Method in class harpoon.Analysis.PA2.Mutation.ParamInfo
 
hashCode - Variable in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
hashCode() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
hashCode() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
hashCode() - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
hashCode() - Method in class harpoon.Analysis.PointerAnalysis.PAEdge
Computes the hash code of this object.
hashCode() - Method in class harpoon.Analysis.PointerAnalysis.PASync
 
hashCode() - Method in class harpoon.Analysis.SESE.Region
 
hashCode() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
hashCode() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
hashCode() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.KGroup
 
hashCode() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.NameDefPoint
 
hashCode() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.TempDefPoint
 
hashCode() - Method in class harpoon.Backend.Generic.GCInfo.WrappedMachineRegLoc
Returns the hash code value for the object.
hashCode() - Method in class harpoon.Backend.Generic.GCInfo.WrappedStackOffsetLoc
Returns the hash code value for the object.
hashCode() - Method in class harpoon.Backend.Runtime1.Data
 
hashCode() - Method in class harpoon.ClassFile.HClass
 
hashCode() - Method in interface harpoon.ClassFile.HConstructor
Returns a hashcode for this Constructor.
hashCode() - Method in interface harpoon.ClassFile.HInitializer
Returns a hashcode for this class initializer.
hashCode() - Method in interface harpoon.ClassFile.HMember
Returns a hashcode for this HMember.
hashCode() - Method in class harpoon.IR.Assem.Instr
Returns the hashcode for this.
hashCode() - Method in class harpoon.IR.Assem.InstrEdge
 
hashCode() - Method in class harpoon.IR.Assem.InstrFactory
 
hashCode() - Method in class harpoon.IR.Bytecode.Instr
 
hashCode() - Method in class harpoon.IR.Quads.Edge
Returns a hash code value for this object.
hashCode() - Method in class harpoon.IR.Quads.HandlerSet
Computes a hashcode for this HandlerSet.
hashCode() - Method in class harpoon.IR.Quads.Quad
 
hashCode() - Method in class harpoon.IR.Tree.Code.TreeFactory
 
hashCode() - Method in class harpoon.IR.Tree.Data.TreeFactory
 
hashCode() - Method in class harpoon.IR.Tree.Tree
 
hashCode() - Method in class harpoon.IR.Tree.TreeFactory
Generates a repeatable hashcode for this factory.
hashCode() - Method in class harpoon.Temp.Label
 
hashCode() - Method in class harpoon.Temp.Temp
Returns a hashcode for this temporary.
hashCode() - Method in class harpoon.Temp.TempFactory
Return a hashcode for this TempFactory.
hashCode() - Method in class harpoon.Util.Tuple
Synthesizes a hashcode from the hashcodes of the elements.
hashCode() - Method in class harpoon.Util.TypeInference.ExactTemp
 
hashCodeOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset of the hashcode of the specified object
hashlockShrink - Static variable in class harpoon.Backend.RuntimeTiny.Runtime
 
hasInteriorPointers() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
hasInteriorPointers() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
hasInteriorPointers(HClass) - Static method in class harpoon.Analysis.DefaultAllocationInformation
Return true iff the specified object type has no interior pointers; that is, iff all its fields are primitive.
hasInteriorPointers() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
hasInteriorPointers() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
hasModifiableTargets() - Method in class harpoon.IR.Assem.Instr
Checks whether this.targets is modifiable.
hasMoreElements() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
hasMultiplePredecessors() - Method in class harpoon.IR.Assem.Instr
Checks if this has multiple predecessors.
hasMultiplePredecessors() - Method in class harpoon.IR.Assem.InstrLABEL
Returns true.
hasNext() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
hasNext() - Method in class harpoon.Analysis.EdgesIterator
Checks if the set is empty.
hasNext() - Method in class harpoon.Util.ArrayIterator
 
hasNext() - Method in class harpoon.Util.CloneableIterator
 
hasNext() - Method in class harpoon.Util.EnumerationIterator
 
hasPrevious() - Method in class harpoon.Util.ArrayIterator
 
hasPrevious() - Method in class harpoon.Util.CloneableIterator
 
hasRegister(Collection) - Method in class harpoon.Analysis.Instr.RegAlloc
Checks if any element of c is a register (Helper method).
hc - Variable in class harpoon.Analysis.ContBuilder.ContBuilder
 
hc - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
hc - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
hc - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
hc - Variable in class harpoon.Analysis.Liveness
The HCode for which this object contains analysis results.
hc - Variable in class harpoon.Analysis.ReachingDefs
The HCode for which this object contains analysis results.
hce - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
hce - Variable in class harpoon.Analysis.PointerAnalysis.PASync
The instruction which performs the sync.
HCE_RULES(Code, Frame, HMethod, HMethod) - Static method in class harpoon.Analysis.PreciseGC.WriteBarrierConstElim
 
HCE_RULES(Code) - Static method in class harpoon.Analysis.Tree.DeadCodeElimination
 
HCE_RULES(Code) - Static method in class harpoon.Analysis.Tree.JumpOptimization
 
HCE_RULES(Code) - Static method in class harpoon.Analysis.Tree.MemHoisting
 
HCE_RULES(DerivationGenerator) - Static method in class harpoon.Backend.Analysis.InsertWriteBarrier
 
HCE_RULES(Code, Frame) - Static method in class harpoon.Backend.Analysis.MakeGCThreadSafe
 
hcf - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
hcf - Variable in class harpoon.Main.CompilerStageEZ
 
hcf - Variable in class harpoon.Util.BasicBlocks.BBConverter
 
HCioE - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HClass - Class in harpoon.ClassFile
Instances of the class HClass represent classes and interfaces of a java program.
hclass - Variable in class harpoon.IR.Quads.ANEW
Description of array class to create.
hclass() - Method in class harpoon.IR.Quads.ANEW
Returns the array class this ANEW will create.
hclass - Variable in class harpoon.IR.Quads.INSTANCEOF
The class in which src is tested for membership.
hclass() - Method in class harpoon.IR.Quads.INSTANCEOF
Returns the class in which src is tested for membership.
hclass - Variable in class harpoon.IR.Quads.NEW
Description of the class to create.
hclass() - Method in class harpoon.IR.Quads.NEW
Returns the class this NEW will create.
hclass - Variable in class harpoon.IR.Quads.TYPECAST
The class to cast to.
hclass() - Method in class harpoon.IR.Quads.TYPECAST
Return the class of this TYPECAST.
HClassMutator - Interface in harpoon.ClassFile
An HClassMutator allows you to change members and properties of an HClass.
HClassTypeVariable - Interface in harpoon.ClassFile
The HClassTypeVariable interface represents a type variable declared as a formal parameter to a generic class or interface.
HClassUtil - Class in harpoon.Util
HClassUtil contains various useful methods for dealing with HClasses that do not seem to belong with the standard HClass methods.
HClassUtil() - Constructor for class harpoon.Util.HClassUtil
 
HCobject - Variable in class harpoon.Backend.Runtime1.ObjectBuilder
 
hcode - Variable in class harpoon.Analysis.FCFGBasicBlock.Factory
 
HCode<HCE extends HCodeElement> - Class in harpoon.ClassFile
HCode is an abstract class that all views of a particular method's executable code should extend.
HCode() - Constructor for class harpoon.ClassFile.HCode
 
hcode() - Method in class harpoon.ClassFile.HCodeAndMaps
Returns the newly-cloned HCode.
HCode.PrintCallback<HCE extends HCodeElement> - Class in harpoon.ClassFile
Callback interface for annotating pretty-prints of HCodes.
HCode.PrintCallback() - Constructor for class harpoon.ClassFile.HCode.PrintCallback
 
HCodeAndMaps<HCE extends HCodeElement> - Class in harpoon.ClassFile
HCodeAndMaps is a strongly-typed tuple representing all the derivation information for a cloned HCode.
HCodeAndMaps(HCode<HCE>, Map<HCE, HCE>, TempMap, HCode<HCE>, Map<HCE, HCE>, TempMap) - Constructor for class harpoon.ClassFile.HCodeAndMaps
constructor.
HCodeEdge<HCE extends HCodeElement> - Interface in harpoon.ClassFile
An HCodeEdge connects two HCodeElements in a graph structure.
HCodeElement - Interface in harpoon.ClassFile
HCodeElement is an interface that all views of a particular method's executable instructions should implement.
HCodeFactory - Interface in harpoon.ClassFile
An HCodeFactory makes an HCode from an HMethod.
HConstructor - Interface in harpoon.ClassFile
An HConstructor provides information about a single constructor for a class.
HCstring - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HCsystem - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HCthread - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HData - Class in harpoon.ClassFile
HData is an interface that all views of a particular class's static data should extend.
HData() - Constructor for class harpoon.ClassFile.HData
 
HDataElement - Interface in harpoon.ClassFile
HDataElement is an interface that all views of the data items in an HData must implement.
head - Variable in class harpoon.Backend.CSAHack.Graph.NodeList
 
head - Variable in class harpoon.IR.Tree.ExpList
The expression at this list entry.
head - Variable in class harpoon.IR.Tree.StmList
The statement at this list entry.
head - Variable in class harpoon.Temp.LabelList
Deprecated.  
head - Variable in class harpoon.Temp.TempList
 
head - Variable in class harpoon.Tools.PatMat.Spec.DetailList
 
head - Variable in class harpoon.Tools.PatMat.Spec.ExpList
 
head - Variable in class harpoon.Tools.PatMat.Spec.IdList
 
head - Variable in class harpoon.Tools.PatMat.Spec.RuleList
 
HEADER - Class in harpoon.IR.Quads
HEADER nodes are used to anchor the top end of the quad graph.
HEADER(QuadFactory, HCodeElement) - Constructor for class harpoon.IR.Quads.HEADER
Creates a HEADER quad.
HEADER - Static variable in class harpoon.IR.Quads.QuadKind
 
headerFinalOffset(Runtime.ObjectBuilder.Info) - Method in class harpoon.Backend.Runtime1.ObjectBuilder
 
headerFinalOffset(Runtime.ObjectBuilder.Info) - Method in class harpoon.Backend.RuntimeTiny.ObjectBuilder
 
headerSize(HClass) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Utility method for external analyses that want to know the size of an object header.
headerSize(HClass) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
HeapCheckAdder - Class in harpoon.Analysis.Realtime
HeapCheckAdder adds checks to see if a NoHeapRealtimeThread is touching the heap.
HeapCheckAdder() - Constructor for class harpoon.Analysis.Realtime.HeapCheckAdder
A heap check looks like this: *foo = bar; => heapRef1 = *foo; [env = FNI_GetJNIEnv();] [FNI_MonitorEnter(env, javax.realtime.Stats.class);] [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectChecks0; else goto NoCollectChecks0;] [CollectChecks0:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapChecks + 1;] [*javax.realtime.Stats.WRITE_CHECKS = *javax.realtime.Stats.WRITE_CHECKS + 1;] [NoCollectChecks0:] if (heapRef1&1) goto NoHeap0; else goto TouchedHeap0; TouchedHeap0: [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectRefs0; else goto NoCollectRefs0;] [CollectRefs0:] [*javax.realtime.Stats.heapRefs = *javax.realtime.Stats.heapRefs + 1;] [*javax.realtime.Stats.WRITE_REFS = *javax.realtime.Stats.WRITE_REFS + 1;] [NoCollectRefs0:] heapCheck(heapRef1); NoHeap0: [env = FNI_GetJNIEnv();] [FNI_MonitorExit(env, javax.realtime.Stats.class);] *foo = bar; bar = *foo; => heapRef1 = *foo; [env = FNI_GetJNIEnv();] [FNI_MonitorEnter(env, javax.realtime.Stats.class);] [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectChecks0; else goto NoCollectChecks0;] [CollectChecks0:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapChecks + 1;] [*javax.realtime.Stats.READ_CHECKS = *javax.realtime.Stats.READ_CHECKS + 1;] [NoCollectChecks0:] if (heapRef1&1) goto NoHeap1; else goto TouchedHeap1; TouchedHeap1: [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectRefs0; else goto NoCollectRefs0;] [CollectRefs0:] [*javax.realtime.Stats.heapRefs = *javax.realtime.Stats.heapRefs + 1;] [*javax.realtime.Stats.READ_REFS = *javax.realtime.Stats.READ_REFS + 1;] [NoCollectRefs0:] heapCheck(heapRef1); NoHeap1: [env = FNI_GetJNIEnv();] [FNI_MonitorExit(env, javax.realtime.Stats.class);] bar = heapRef1; foo = NATIVECALL(....); => heapRef1 = NATIVECALL(....); [env = FNI_GetJNIEnv();] [FNI_MonitorEnter(env, javax.realtime.Stats.class);] [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectChecks0; else goto NoCollectChecks0;] [CollectChecks0:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapChecks + 1;] [*javax.realtime.Stats.NATIVECALL_CHECKS = *javax.realtime.Stats.NATIVECALL_CHECKS + 1;] [NoCollectChecks0:] if (heapRef1&1) goto NoHeap0; else goto TouchedHeap0; TouchedHeap0: [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectRefs0; else goto NoCollectRefs0;] [CollectRefs0:] [*javax.realtime.Stats.heapRefs = *javax.realtime.Stats.heapRefs + 1;] [*javax.realtime.Stats.NATIVECALL_REFS = *javax.realtime.Stats.NATIVECALL_REFS + 1;] [NoCollectRefs0:] heapCheck(heapRef1); NoHeap0: [env = FNI_GetJNIEnv();] [FNI_MonitorExit(env, javax.realtime.Stats.class);] foo = heapRef1; foo = CALL(....); heapRef1 = CALL(....); [env = FNI_GetJNIEnv();] [FNI_MonitorEnter(env, javax.realtime.Stats.class);] [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectChecks0; else goto NoCollectChecks0;] [CollectChecks0:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapChecks + 1;] [*javax.realtime.Stats.CALL_CHECKS = *javax.realtime.Stats.CALL_CHECKS + 1;] [NoCollectChecks0:] if (heapRef1&1) goto NoHeap0; else goto TouchedHeap0; TouchedHeap0: [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectRefs0; else goto NoCollectRefs0;] [CollectRefs0:] [*javax.realtime.Stats.heapRefs = *javax.realtime.Stats.heapRefs + 1;] [*javax.realtime.Stats.CALL_REFS = *javax.realtime.Stats.CALL_REFS + 1;] [NoCollectRefs0:] heapCheck(heapRef1); NoHeap0: [env = FNI_GetJNIEnv();] [FNI_MonitorExit(env, javax.realtime.Stats.class);] foo = heapRef1; METHOD(params[]); => foreach params st. params[i] is of type POINTER: [env = FNI_GetJNIEnv();] [FNI_MonitorEnter(env, javax.realtime.Stats.class);] [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectChecksi; else goto NoCollectChecksi;] [CollectChecksi:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapChecks + 1;] [*javax.realtime.Stats.METHOD_CHECKS = *javax.realtime.Stats.METHOD_CHECKS + 1;] [NoCollectChecksi:] if (params[i]&1) goto NoHeapi; else goto TouchedHeapi; TouchedHeapi: [if (javax.realtime.Stats.COLLECT_HEAP_STATS) goto CollectRefsi; else goto NoCollectRefsi;] [CollectRefsi:] [*javax.realtime.Stats.heapChecks = *javax.realtime.Stats.heapRefs + 1;] [*javax.realtime.Stats.METHOD_REFS = *javax.realtime.Stats.METHOD_REFS + 1;] [NoCollectRefsi:] heapCheck(params[i]); NoHeapi: [env = FNI_GetJNIEnv();] [FNI_MonitorExit(env, javax.realtime.Stats.class);] Isn't that awful?
HeapStatsAllocationStrategy - Class in harpoon.Backend.Runtime1
HeapStatsAllocationStrategy calls the appropriate C functions in the --with-live-heap-statistics runtime code to collect statistics for objects and arrays allocated.
HeapStatsAllocationStrategy(Frame) - Constructor for class harpoon.Backend.Runtime1.HeapStatsAllocationStrategy
Creates a HeapStatsAllocationStrategy.
HELP - Static variable in class harpoon.Main.Javap
Print out help message.
helpMessage - Variable in class harpoon.Util.Options.Option
 
hf - Variable in class harpoon.Analysis.PA2.Mutation.MLabel.Field
 
HField - Interface in harpoon.ClassFile
A HField provides information about a single field of a class or an interface.
HFieldMutator - Interface in harpoon.ClassFile
HFieldMutator allows you to change properties of an HField.
hide(Object) - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Temporarily removes node from graph.
hide(Object) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Temporarily removes node from graph.
highBound - Static variable in class harpoon.Analysis.MemOpt.PreallocOpt
 
HInitializer - Interface in harpoon.ClassFile
An HInitializer provides information about a class initializer method.
hip - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
HMember - Interface in harpoon.ClassFile
HMember is an interface that reflects identifying information about a single member (a field or a method) or a constructor.
HMember.MemberComparator - Class in harpoon.ClassFile
Implementation of java.util.Comparator for objects implementing HMember, for consistency among implementations.
HMember.MemberComparator() - Constructor for class harpoon.ClassFile.HMember.MemberComparator
 
HMethod - Interface in harpoon.ClassFile
An HMethod provides information about, and access to, a single method on a class or interface.
HMethodMutator - Interface in harpoon.ClassFile
HMethodMutator allows you to change properties of an HMethod.
HMethodTypeVariable - Interface in harpoon.ClassFile
The HMethodTypeVariable interface represents a type variable declared as a formal parameter to a generic method.
HMsysArrayCopy - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HMthreadRun - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HMthreadStart - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
HOISTED - Static variable in class harpoon.Analysis.PreciseGC.AllocationHoisting
Token for the hoisted version of an initializer.
HParameterizedType - Interface in harpoon.ClassFile
The HParameterizedType interface describes the behavior of parameterized types such as Collection<Applet> or HashMap<String, Class>.
HType - Interface in harpoon.ClassFile
The HType interface represents all compile time types.
HTypeVariable - Interface in harpoon.ClassFile
The HTypeVariable interface represents a type variable declared as a formal parameter to a generic class, interface, or method.

I

I - Variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
The set of the inside edges.
I2B - Static variable in class harpoon.IR.Bytecode.Op
 
I2B - Static variable in class harpoon.IR.Quads.Qop
Converts an int to a byte.
I2B - Static variable in class harpoon.IR.Tree.Uop
Converts an int to a byte.
I2B - Static variable in class harpoon.Tools.PatMat.Sym
 
I2C - Static variable in class harpoon.IR.Bytecode.Op
 
I2C - Static variable in class harpoon.IR.Quads.Qop
Converts an int to a character.
I2C - Static variable in class harpoon.IR.Tree.Uop
Converts an int to a character.
I2C - Static variable in class harpoon.Tools.PatMat.Sym
 
I2D - Static variable in class harpoon.IR.Bytecode.Op
 
I2D - Static variable in class harpoon.IR.Quads.Qop
Converts an int to a double.
I2F - Static variable in class harpoon.IR.Bytecode.Op
 
I2F - Static variable in class harpoon.IR.Quads.Qop
Converts an int to a float.
I2L - Static variable in class harpoon.IR.Bytecode.Op
 
I2L - Static variable in class harpoon.IR.Quads.Qop
Converts an int to a long.
I2S - Static variable in class harpoon.IR.Bytecode.Op
 
I2S - Static variable in class harpoon.IR.Quads.Qop
Converts an int to a short.
I2S - Static variable in class harpoon.IR.Tree.Uop
Converts an int to a short.
I2S - Static variable in class harpoon.Tools.PatMat.Sym
 
IADD - Static variable in class harpoon.IR.Bytecode.Op
 
IADD - Static variable in class harpoon.IR.Quads.Qop
Computes the sum of two int values.
IALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
IAND - Static variable in class harpoon.IR.Bytecode.Op
 
IAND - Static variable in class harpoon.IR.Quads.Qop
Computes the binary-AND of two int values.
IAStatistics - Class in harpoon.Analysis.MemOpt
IAStatistics
IAStatistics() - Constructor for class harpoon.Analysis.MemOpt.IAStatistics
 
IASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
ICMPEQ - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if the two int values are equal, or false otherwise.
ICMPGT - Static variable in class harpoon.IR.Quads.Qop
Evalutates to true if the first int value is greater than the second int value, or false otherwise.
ICONST_0 - Static variable in class harpoon.IR.Bytecode.Op
 
ICONST_1 - Static variable in class harpoon.IR.Bytecode.Op
 
ICONST_2 - Static variable in class harpoon.IR.Bytecode.Op
 
ICONST_3 - Static variable in class harpoon.IR.Bytecode.Op
 
ICONST_4 - Static variable in class harpoon.IR.Bytecode.Op
 
ICONST_5 - Static variable in class harpoon.IR.Bytecode.Op
 
ICONST_M1 - Static variable in class harpoon.IR.Bytecode.Op
 
id - Variable in class harpoon.Analysis.FCFGBasicBlock
 
id - Variable in class harpoon.Analysis.GraphColoring.DefaultSparseNode
 
id - Variable in class harpoon.Tools.PatMat.Spec.ExpId
Identifier that this represents.
id - Variable in class harpoon.Tools.PatMat.Spec.LeafId
Identifier string.
ID - Static variable in class harpoon.Tools.PatMat.Sym
 
identical(MetaMethod, MetaMethod) - Static method in class harpoon.Analysis.MetaMethods.MetaMethod
Checks whether two MetaMethods are equal or not.
identical(ListCell, ListCell) - Static method in class harpoon.Analysis.PointerAnalysis.ListCell
Checks teh identity of two lists.
identical(ParIntGraph, ParIntGraph) - Static method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Checks whether two ParIntGraphs are equal or not.
Identifier - Class in harpoon.Tools.Annotation.Lex
 
Identifier(String) - Constructor for class harpoon.Tools.Annotation.Lex.Identifier
 
IDENTIFIER - Static variable in class harpoon.Tools.Annotation.Sym
 
IdentifyNoHandler - Class in harpoon.Backend.PreciseC
IdentifyNoHandler
IdentifyNoHandler(Code) - Constructor for class harpoon.Backend.PreciseC.IdentifyNoHandler
Creates a IdentifyNoHandler.
IDIV - Static variable in class harpoon.IR.Bytecode.Op
 
IDIV - Static variable in class harpoon.IR.Quads.Qop
Computes the int quotient of two int values.
idom(HCE) - Method in class harpoon.Analysis.DomTree
Return the immediate (post)dominator of an HCodeElement.
IF - Static variable in class harpoon.Tools.Annotation.Sym
 
IF_ACMPEQ - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ACMPNE - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ICMPEQ - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ICMPGE - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ICMPGT - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ICMPLE - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ICMPLT - Static variable in class harpoon.IR.Bytecode.Op
 
IF_ICMPNE - Static variable in class harpoon.IR.Bytecode.Op
 
IFEQ - Static variable in class harpoon.IR.Bytecode.Op
 
iffalse - Variable in class harpoon.IR.Tree.CJUMP
The label to jump to if test is false.
IFGE - Static variable in class harpoon.IR.Bytecode.Op
 
IFGT - Static variable in class harpoon.IR.Bytecode.Op
 
IFLE - Static variable in class harpoon.IR.Bytecode.Op
 
IFLT - Static variable in class harpoon.IR.Bytecode.Op
 
IFNE - Static variable in class harpoon.IR.Bytecode.Op
 
IFNONNULL - Static variable in class harpoon.IR.Bytecode.Op
 
IFNULL - Static variable in class harpoon.IR.Bytecode.Op
 
iftrue - Variable in class harpoon.IR.Tree.CJUMP
The label to jump to if test is true.
IGNORE_CERTAIN_MUTATIONS - Static variable in class harpoon.Analysis.PA2.Flags
 
IGNORE_CONSTR_MUTATION_ON_THIS - Static variable in class harpoon.Analysis.PA2.Flags
 
IGNORE_EO - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Hack to speed it up: it appears to me that the edge ordering relation is not extremely important: in recursive methods or in methods with loops, it tends to be just a cartesian product between I and O.
IGNORE_INIT_CODE - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
 
IGNORE_LOADS_FROM_NATIVES - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Ignore what is load from a RETURN/EXCEPT node.
ignoredFields - Variable in class harpoon.Analysis.Transactions.BitFieldNumbering
Mutable set of fields you want to ignore.
IgnoreSpillUseDefer - Class in harpoon.Analysis.Instr
IgnoreSpillUseDefer defines a view of the code that will skip over newly inserted spill instructions when deciding what Temps instructions read and write.
IgnoreSpillUseDefer() - Constructor for class harpoon.Analysis.Instr.IgnoreSpillUseDefer
Creates a IgnoreSpillUDr.
IINC - Static variable in class harpoon.IR.Bytecode.Op
 
illegal(Temp) - Method in class harpoon.Backend.Generic.RegFileInfo
Returns the Regs that can never hold t.
illegal(Temp) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
IllegalEdgeException - Exception in harpoon.Analysis.GraphColoring
IllegalEdgeException
IllegalEdgeException() - Constructor for exception harpoon.Analysis.GraphColoring.IllegalEdgeException
Creates a IllegalEdgeException.
IllegalEdgeException(String) - Constructor for exception harpoon.Analysis.GraphColoring.IllegalEdgeException
Creates a IllegalEdgeException.
ILOAD - Static variable in class harpoon.IR.Bytecode.Op
 
ILOAD_0 - Static variable in class harpoon.IR.Bytecode.Op
 
ILOAD_1 - Static variable in class harpoon.IR.Bytecode.Op
 
ILOAD_2 - Static variable in class harpoon.IR.Bytecode.Op
 
ILOAD_3 - Static variable in class harpoon.IR.Bytecode.Op
 
imm - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
IMPDEP1 - Static variable in class harpoon.IR.Bytecode.Op
 
IMPDEP2 - Static variable in class harpoon.IR.Bytecode.Op
 
IMPLEMENTS - Static variable in class harpoon.Tools.Annotation.Sym
 
ImplHelper - Class in harpoon.Runtime.Transactions
ImplHelper just contains stubs which we will later substitute native code for.
ImplHelper() - Constructor for class harpoon.Runtime.Transactions.ImplHelper
 
IMPORT - Static variable in class harpoon.Tools.Annotation.Sym
 
IMUL - Static variable in class harpoon.IR.Bytecode.Op
 
IMUL - Static variable in class harpoon.IR.Quads.Qop
Computes the product of two int values.
in() - Method in class harpoon.Analysis.PA2.WriteConstraint
 
inc(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Increments the value attached to n
incAll(Set) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Convenient function that calls inc for all the nodes from set
INClass - Class in harpoon.Interpret.Quads
INClass provides implementations of the native methods in java.lang.Class.
INClass() - Constructor for class harpoon.Interpret.Quads.INClass
 
INClass - Class in harpoon.Interpret.Tree
INClass provides implementations of the native methods in java.lang.Class.
INClass() - Constructor for class harpoon.Interpret.Tree.INClass
 
INClassLoader - Class in harpoon.Interpret.Quads
INClassLoader provides implementations for (some of) the native methods in java.lang.ClassLoader and java.lang.ClassLoader.NativeLibrary.
INClassLoader() - Constructor for class harpoon.Interpret.Quads.INClassLoader
 
incLongField(TreeFactory, HCodeElement, DerivationGenerator, String, String) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
foo.bar = *foo.bar + 1;
included(GenType, ClassHierarchy) - Method in class harpoon.Analysis.MetaMethods.GenType
Checks whether this general type is included into the set of types abstracted by the general type gt2.
IncompatibilityAnalysis - Class in harpoon.Analysis.MemOpt
Describe class IncompatibilityAnalysis here.
IncompatibilityAnalysis(HMethod, HCodeFactory, CallGraph, Linker) - Constructor for class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Convenience form for the other constructor, calls it with callGraphNeedsSSA set to true.
IncompatibilityAnalysis(HMethod, HCodeFactory, CallGraph, Linker, boolean) - Constructor for class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Creates a new IncompatibilityAnalysis instance.
inCounters(Edge) - Static method in class harpoon.Analysis.Counters.CounterFactory
 
increment() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
increment gives the temp with the loop invariant value to increment the induction variable by.
InCti - Class in harpoon.IR.Bytecode
InCti is used for control-transfer instructions.
InCti(String, int, byte[], int) - Constructor for class harpoon.IR.Bytecode.InCti
Create an InCti from a chunk of bytecode starting at offest pc.
inDegree() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
indent(PrintWriter, int, String) - Static method in class harpoon.IR.RawClass.ClassFile
Output string s to PrintWriter pw at the given indentation level indent.
INDENT - Static variable in class harpoon.Main.Javap
Indent members (fields/methods).
independent(PANode) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Checks if all the sync operation on n are independent (temporarily speaking) or not.
index - Variable in class harpoon.IR.LowQuad.PAOFFSET
The index into the array.
index() - Method in class harpoon.IR.LowQuad.PAOFFSET
Returns the Temp holding the index of the array element to address.
index - Variable in class harpoon.IR.Quads.AGET
The Temp holding the index of the element to get.
index() - Method in class harpoon.IR.Quads.AGET
Returns the Temp holding the index of the element to fetch.
index - Variable in class harpoon.IR.Quads.ASET
The Temp holding the index of the element to get.
index() - Method in class harpoon.IR.Quads.ASET
Returns the Temp with the index of the element to get.
index - Variable in class harpoon.IR.Quads.SWITCH
The discriminant, compared against each value in keys.
index() - Method in class harpoon.IR.Quads.SWITCH
Returns the Temp holding the discriminant.
index - Variable in class harpoon.IR.Quads.TYPESWITCH
The discriminant, of Object type, whose class is compared against each class type in keys[].
index() - Method in class harpoon.IR.Quads.TYPESWITCH
Returns the Temp holding the discriminant.
index - Variable in class harpoon.IR.RawClass.LocalVariableTable
The given local variable must be at index in its method's local variables.
INDEXER - Static variable in class harpoon.Temp.Temp
A net.cscott.jutil.Indexer specifically for working only with Temps generated by this.tempFactory().
indFinal() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
indFinal gives the final value of the induction variable.
indInitial() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
indInitial gives the initial value of the induction variable.
Induction - Class in harpoon.Analysis.LowQuad.Loop
Induction
induction() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
induction gives the temp with the induction variable of the for loop.
Induction.IntMultAdd - Class in harpoon.Analysis.LowQuad.Loop
 
inductionvar() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
INEG - Static variable in class harpoon.IR.Bytecode.Op
 
INEG - Static variable in class harpoon.IR.Quads.Qop
Computes the negation of an int value.
inf - Variable in class harpoon.IR.Assem.Code
Instruction factory.
INFile - Class in harpoon.Interpret.Quads
INFile provides implementations for (some of) the native methods in java.io.File.
INFile() - Constructor for class harpoon.Interpret.Quads.INFile
 
INFile - Class in harpoon.Interpret.Tree
INFile provides implementations for (some of) the native methods in java.io.File.
INFile() - Constructor for class harpoon.Interpret.Tree.INFile
 
INFileSystem - Class in harpoon.Interpret.Quads
INFileSystem provides implementations for (some of) the native methods in java.io.FileSystem.
INFileSystem() - Constructor for class harpoon.Interpret.Quads.INFileSystem
 
INFloatDouble - Class in harpoon.Interpret.Quads
INFloatDouble provides implementations of the native methods in java.lang.Float and java.lang.Double.
INFloatDouble() - Constructor for class harpoon.Interpret.Quads.INFloatDouble
 
INFloatDouble - Class in harpoon.Interpret.Tree
INFloatDouble provides implementations of the native methods in java.lang.Float and java.lang.Double.
INFloatDouble() - Constructor for class harpoon.Interpret.Tree.INFloatDouble
 
INFO - Static variable in class harpoon.Analysis.Instr.RegAllocOpts
 
info - Variable in class harpoon.Analysis.PointerAnalysis.ListCell
 
info - Variable in class harpoon.IR.RawClass.AttributeUnknown
Generic attribute information of unknown type.
info(String) - Static method in class harpoon.Main.CodeGenerator
 
InGen - Class in harpoon.IR.Bytecode
InGen is used for non-branching instructions.
InGen(String, int, byte[], int, Code) - Constructor for class harpoon.IR.Bytecode.InGen
Create an InGen from a chunk of bytecode starting at offset pc.
init(N) - Method in class harpoon.Analysis.Companions.DataFlowSolver
Return the initial value of the dataflow FACT for the given Node (often, an HCodeElement).
init(int, int) - Static method in class harpoon.Analysis.Quads.CollectSyncStats
MUST call this function before enabling stats collection.
init_actions() - Method in class harpoon.Tools.Annotation.Java12
action encapsulation object initializer
init_actions() - Method in class harpoon.Tools.PatMat.Parser
action encapsulation object initializer
INIT_DATA - Static variable in class harpoon.IR.Tree.SEGMENT
R/W memory that must be initialized before use
initClassFieldMap() - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
initClassFieldMap() - Method in class harpoon.Backend.RuntimeTiny.TreeBuilder
 
initClassHierarchy(ClassHierarchy) - Static method in class harpoon.Analysis.PA2.TypeFilter
 
initializeBBtoLVI(Set, SetFactory) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
 
initialized - Variable in class harpoon.IR.Tree.DATUM
If false, the memory is not initialized; instead it is reserved with an unspecified value.
initializeGenPrsv(Iterator, SetFactory) - Method in class harpoon.Analysis.DataFlow.ReachingHCodeElements
Initializes a mapping of temps to the Set of HCodeElements which do not define them.
InitializerOrdering - Class in harpoon.Backend.Analysis
InitializerOrdering computes a topological sort of the static initializer call graph designed to ensure that classes are initialized in the correct order.
InitializerOrdering(ClassHierarchy, CallGraph) - Constructor for class harpoon.Backend.Analysis.InitializerOrdering
Creates a InitializerOrdering.
InitializerTransform - Class in harpoon.Analysis.Quads
InitializerTransform transforms class initializers so that they are idempotent and so that they perform all needed initializer ordering checks before accessing non-local data.
InitializerTransform(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.InitializerTransform
Creates a InitializerTransform with no information about which native methods are 'safe'.
InitializerTransform(HCodeFactory, ClassHierarchy, Linker, String) - Constructor for class harpoon.Analysis.Quads.InitializerTransform
Creates a InitializerTransform using the specified named resource to specify the safe and dependent native methods of this runtime.
InitializerTransform(HCodeFactory, ClassHierarchy, Map) - Constructor for class harpoon.Analysis.Quads.InitializerTransform
Creates a InitializerTransform using the given information about safe and dependent methods.
initializeSets() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
initializeSets() - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
initializeSets() - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
initiallyCallableMethods() - Method in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
initiallyCallableMethods() - Method in class harpoon.Backend.Generic.RuntimeInformation
Returns the set of methods called during the initialization of the runtime system.
initiallyCallableMethods() - Method in class harpoon.Backend.Runtime1.RuntimeInformation
 
initialPartition(WeightedGraph, int, WeightedGraph[]) - Static method in class harpoon.Analysis.Partition.Partition
 
initObjectBuilder(ObjectBuilder.RootOracle) - Method in class harpoon.Backend.Runtime1.Runtime
 
initObjectBuilder(ObjectBuilder.RootOracle) - Method in class harpoon.Backend.RuntimeTiny.Runtime
 
initTreeBuilder() - Method in class harpoon.Analysis.Realtime.RealtimeRuntime
Initialize the tree builder with masking turned on if needed.
initTreeBuilder() - Method in class harpoon.Backend.Runtime1.Runtime
 
initTreeBuilder() - Method in class harpoon.Backend.Runtime2.Runtime
 
initTreeBuilder() - Method in class harpoon.Backend.RuntimeTiny.Runtime
 
inline(CachingCodeFactory, Collection<InlineChain>, CallGraph) - Static method in class harpoon.Analysis.Quads.DeepInliner.DeepInliner
Inline a set of InlineChains.
inline(CALL, HMethod, CachingCodeFactory) - Static method in class harpoon.Analysis.Quads.DeepInliner.OneLevelInliner
 
inline(CALL) - Method in class harpoon.Analysis.Quads.MethodInliningCodeFactory
Marks a call site to be inlined when code is generated.
InlineChain - Class in harpoon.Analysis.Quads.DeepInliner
InlineChain models an arbitrary-length call path that needs to be inlined.
InlineChain(List<CALL>) - Constructor for class harpoon.Analysis.Quads.DeepInliner.InlineChain
 
InlineMap - Class in harpoon.Backend.Maps
An InlineMap maps an HField to a boolean value indicated whether the HField can be inlined.
InlineMap() - Constructor for class harpoon.Backend.Maps.InlineMap
 
inLoop(Quad) - Method in class harpoon.Analysis.PA2.AllocSync.LoopDetector
 
INMath - Class in harpoon.Interpret.Quads
INMath provides implementations for (some of) the native methods in java.lang.Math.
INMath() - Constructor for class harpoon.Interpret.Quads.INMath
 
InMerge - Class in harpoon.IR.Bytecode
InMerge is used to represent a node where multiple control flows merge.
InMerge(String, int, int) - Constructor for class harpoon.IR.Bytecode.InMerge
Creates a new InMerge.
inner_class_access_flags - Variable in class harpoon.IR.RawClass.InnerClass
Originally declared, untransformed access_flags.
inner_class_info() - Method in class harpoon.IR.RawClass.InnerClass
 
inner_class_info_index - Variable in class harpoon.IR.RawClass.InnerClass
CONSTANT_Class_info pointer to class with encoded name.
inner_name() - Method in class harpoon.IR.RawClass.InnerClass
 
inner_name_index - Variable in class harpoon.IR.RawClass.InnerClass
CONSTANT_Utf8_info pointer to the simple name of the encoded inner class.
inner_name_index() - Method in class harpoon.IR.RawClass.InnerClass
 
InnerClass - Class in harpoon.IR.RawClass
Each InnerClass object describes one encoded inner class name, its defining scope, its simple name, and a bitmask of the originally declared, untransformed access flags.
InnerClass(ClassFile, int, int, int, AccessFlags) - Constructor for class harpoon.IR.RawClass.InnerClass
Constructor.
INObject - Class in harpoon.Interpret.Quads
INObject provides implementations of the native methods in java.lang.Object.
INObject() - Constructor for class harpoon.Interpret.Quads.INObject
 
INObject - Class in harpoon.Interpret.Tree
INObject provides implementations of the native methods in java.lang.Object.
INObject() - Constructor for class harpoon.Interpret.Tree.INObject
 
INResourceBundle - Class in harpoon.Interpret.Quads
INResourceBundle provides implementations for (some of) the native methods in java.util.ResourceBundle.
INResourceBundle() - Constructor for class harpoon.Interpret.Quads.INResourceBundle
 
InRet - Class in harpoon.IR.Bytecode
InRet is an InCti with an operand.
InRet(String, int, byte[], int) - Constructor for class harpoon.IR.Bytecode.InRet
Creates a InRet.
INRuntime - Class in harpoon.Interpret.Quads
INRuntime provides implementations of the native methods in java.lang.Runtime.
INRuntime() - Constructor for class harpoon.Interpret.Quads.INRuntime
 
INRuntime - Class in harpoon.Interpret.Tree
INRuntime provides implementations of the native methods in java.lang.Runtime.
INRuntime() - Constructor for class harpoon.Interpret.Tree.INRuntime
 
insert(PAEscapeFunc, Relation, Set, Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Inserts the image of e2 through the mu mapping into this PAEscapeFunc.
insert(PAThreadMap, Relation) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Inserts the image of tau2 through the mu mapping into this object.
insert(PointsToGraph, Relation, boolean, Set) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Inserts the image of G2 points-to graph through the mu node mapping into this object.
insert(Quad) - Method in interface harpoon.IR.Quads.HANDLER.ProtectedSet
Add a quad into the protected set.
insert(Object, int) - Method in class harpoon.Util.BinHeapPriorityQueue
 
insert(Object, int) - Method in interface harpoon.Util.MaxPriorityQueue
Inserts item into this, assigning it priority priority.
insert_edges(PAEdgeSet, PAEdgeSet, Relation) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
 
insertAt(CFGEdge) - Method in class harpoon.IR.Assem.Instr
Inserts this at edge.
insertInstrsAt(CFGEdge, List) - Static method in class harpoon.IR.Assem.Instr
Not implemented yet.
insertProjection(EdgeOrdering, EdgeOrdering, Relation) - Static method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
 
InsertWriteBarrier - Class in harpoon.Backend.Analysis
InsertWriteBarrier instruments any writes to pointer locations with a store check.
INSIDE - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: Inside node
inside() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Checks if this node is an inside one.
INSIDE2 - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: node returned by java.lang.Object.clone
instanceOf(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, HClass) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which tests the given expression for membership in the given class or interface.
instanceOf(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, HClass) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
INSTANCEOF - Static variable in class harpoon.IR.Bytecode.Op
 
INSTANCEOF - Class in harpoon.IR.Quads
INSTANCEOF objects represent an 'instanceof' evaluation.
INSTANCEOF(QuadFactory, HCodeElement, Temp, Temp, HClass) - Constructor for class harpoon.IR.Quads.INSTANCEOF
Creates a INSTANCEOF representing a type check.
INSTANCEOF - Static variable in class harpoon.IR.Quads.QuadKind
 
INSTANCEOF - Static variable in class harpoon.Tools.Annotation.Sym
 
INSTANCEOF_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
instantiatedClasses() - Method in class harpoon.Analysis.ClassHierarchy
Returns the set of all instantiated classes.
instantiatedClasses() - Method in class harpoon.Analysis.Quads.QuadClassHierarchy
Returns the set of all classes instantiated.
instr(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
 
Instr - Class in harpoon.IR.Assem
Instr is the primary class for representing assembly-level instructions used in the Backend.* packages.
Instr(InstrFactory, HCodeElement, String, Temp[], Temp[], boolean, List<Label>) - Constructor for class harpoon.IR.Assem.Instr
Creates an Instr consisting of the String assem and the list of destinations and sources in dst and src.
Instr(InstrFactory, HCodeElement, String, Temp[], Temp[]) - Constructor for class harpoon.IR.Assem.Instr
Creates an Instr consisting of the String assem and the lists of destinations and sources in dst and src.
Instr(InstrFactory, HCodeElement, String, Temp[]) - Constructor for class harpoon.IR.Assem.Instr
Creates an Instr consisting of the String assem and the list of sources in src.
Instr(InstrFactory, HCodeElement, String) - Constructor for class harpoon.IR.Assem.Instr
Creates an Instr consisting of the String assem.
Instr - Class in harpoon.IR.Bytecode
Bytecode.Instr is the base type for the specific bytecode instruction classes.
Instr(String, int) - Constructor for class harpoon.IR.Bytecode.Instr
Constructor.
InstrBuilder - Class in harpoon.Backend.Generic
InstrBuilder defines an interface that general program transformations can call to generate needed assembly code blocks for arbitrary target architectures.
InstrBuilder() - Constructor for class harpoon.Backend.Generic.InstrBuilder
Creates a InstrBuilder.
InstrBuilder - Class in harpoon.Backend.MIPS
MIPS.InstrBuilder is an Generic.InstrBuilder for the MIPS architecture.
InstrBuilder - Class in harpoon.Backend.Sparc
Sparc.InstrBuilder is another implementation of Generic.InstrBuilder - for the Sparc architecture.
InstrBuilder - Class in harpoon.Backend.StrongARM
StrongARM.InstrBuilder is an Generic.InstrBuilder for the StrongARM architecture.
InstrCALL - Class in harpoon.IR.Assem
InstrCALL
InstrCALL(InstrFactory, HCodeElement, String, Temp[], Temp[], boolean, List<Label>) - Constructor for class harpoon.IR.Assem.InstrCALL
Creates a InstrCALL.
InstrDIRECTIVE - Class in harpoon.IR.Assem
InstrDIRECTIVE is used to represents assembler directives.
InstrDIRECTIVE(InstrFactory, HCodeElement, String) - Constructor for class harpoon.IR.Assem.InstrDIRECTIVE
 
InstrEdge - Class in harpoon.IR.Assem
InstrEdge is an object representing an edge between two Instrs.
InstrEdge(Instr, Instr) - Constructor for class harpoon.IR.Assem.InstrEdge
Creates a InstrEdge representing < from, to > .
instrFactory - Variable in class harpoon.Backend.Generic.CodeGen
InstrFactory for Instrs currently generated by CodeGen#emit.
InstrFactory - Class in harpoon.IR.Assem
A InstrFactory is responsible for generating generic Assem.Instrs used in code generation.
InstrFactory() - Constructor for class harpoon.IR.Assem.InstrFactory
 
InstrGroup - Class in harpoon.IR.Assem
InstrGroup collects a group of assembly instructions together so that they can be viewed as a single atomic element of the code.
InstrGroup(InstrGroup.Type) - Constructor for class harpoon.IR.Assem.InstrGroup
Creates a InstrGroup.
InstrGroup(InstrGroup.Type, InstrGroup) - Constructor for class harpoon.IR.Assem.InstrGroup
Creates a InstrGroup contained in contained.
InstrGroup.Type - Class in harpoon.IR.Assem
InstrGroup.Type is associated with a collection of InstrGroups for a given Assem.Code.
INString - Class in harpoon.Interpret.Quads
INString provides implementations of the native methods in java.lang.String.
INString() - Constructor for class harpoon.Interpret.Quads.INString
 
INString - Class in harpoon.Interpret.Tree
INString provides implementations of the native methods in java.lang.String.
INString() - Constructor for class harpoon.Interpret.Tree.INString
 
InstrJUMP - Class in harpoon.IR.Assem
InstrJUMP represents a shift in control flow to one target Label with no side-effects.
InstrJUMP(InstrFactory, HCodeElement, String, Label) - Constructor for class harpoon.IR.Assem.InstrJUMP
Creates a InstrJUMP.
InstrLABEL - Class in harpoon.IR.Assem
InstrLABEL is used to represents code labels in assembly-level instruction representations.
InstrLABEL(InstrFactory, HCodeElement, String, Label) - Constructor for class harpoon.IR.Assem.InstrLABEL
Create a code label Instr.
InstrMEM - Class in harpoon.IR.Assem
InstrMEM is used to represent memory operations in assembly-level instruction representations.
InstrMEM(InstrFactory, HCodeElement, String, Temp[], Temp[], boolean, List<Label>) - Constructor for class harpoon.IR.Assem.InstrMEM
Creates a InstrMEM.
InstrMEM(InstrFactory, HCodeElement, String, Temp[], Temp[]) - Constructor for class harpoon.IR.Assem.InstrMEM
Creates a InstrMEM with default values for canFallThrough and targets.
InstrMOVE - Class in harpoon.IR.Assem
InstrMOVE represents a copying of a set of source Temps to a set of destination Temps.
InstrMOVE(InstrFactory, HCodeElement, String, Temp[], Temp[]) - Constructor for class harpoon.IR.Assem.InstrMOVE
Creates a InstrMOVE.
InstrMOVEproxy - Class in harpoon.Analysis.Instr
InstrMOVEproxy
InstrMOVEproxy(Instr) - Constructor for class harpoon.Analysis.Instr.InstrMOVEproxy
Creates a InstrMOVEproxy.
instrs - Variable in class harpoon.IR.Assem.Code
The root Instr of the Instrs composing this code view.
instrSize(byte[], int) - Static method in class harpoon.IR.Bytecode.Op
Gives the length of the instruction at the specified offset in a bytecode array.
InstrSolver - Class in harpoon.Analysis.DataFlow
InstrSolver
instrument(HCode) - Method in class harpoon.Analysis.PointerAnalysis.InstrumentSyncOps
 
INSTRUMENT_ALLOCS - Static variable in class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
 
INSTRUMENT_ALLOCS_TYPE - Static variable in class harpoon.Instrumentation.AllocationStatistics.AllocationInstrCompStage
 
InstrumentAllocs - Class in harpoon.Instrumentation.AllocationStatistics
InstrumentAllocs adds calls to instrumenting code to each allocation site and, if explicitly requested, to each synchronization instruction.
InstrumentAllocs(HCodeFactory, HMethod, Linker, AllocationNumbering, boolean, boolean) - Constructor for class harpoon.Instrumentation.AllocationStatistics.InstrumentAllocs
Creates a InstrumentAllocs.
InstrumentAllocs2 - Class in harpoon.Instrumentation.AllocationStatistics
InstrumentAllocs2 can be used together with InstrumentedAllocationStrategy to instrument the allocation sites from a program to record how many times each of them is executed, and the total amount of memory allocated at each site.
InstrumentAllocs2(HCodeFactory, HMethod, Linker, AllocationNumbering) - Constructor for class harpoon.Instrumentation.AllocationStatistics.InstrumentAllocs2
Creates a InstrumentAllocs2 object.
InstrumentedAllocationStrategy - Class in harpoon.Instrumentation.AllocationStatistics
InstrumentedAllocationStrategy
InstrumentedAllocationStrategy(Frame) - Constructor for class harpoon.Instrumentation.AllocationStatistics.InstrumentedAllocationStrategy
Creates a InstrumentedAllocationStrategy.
InstrumentSyncOps - Class in harpoon.Analysis.PointerAnalysis
InstrumentSyncOps instruments synchronization operations for statistics-gathering purposes.
InstrumentSyncOps(PointerAnalysis) - Constructor for class harpoon.Analysis.PointerAnalysis.InstrumentSyncOps
 
InstrVisitor - Class in harpoon.IR.Assem
InstrVisitor is an implementation of the Visitor pattern coupled to the Instr intermediate representation.
InstrVisitor() - Constructor for class harpoon.IR.Assem.InstrVisitor
Creates a InstrVisitor.
InSwitch - Class in harpoon.IR.Bytecode
InSwitch is used for the tableswitch and lookupswitch java bytecode instructions.
InSwitch(String, int, byte[], int) - Constructor for class harpoon.IR.Bytecode.InSwitch
Constructor.
Int - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type int.
INT - Static variable in class harpoon.IR.Tree.Type
32-bit integer type.
INT - Static variable in interface harpoon.IR.Tree.Typed
 
INT - Static variable in class harpoon.Tools.Annotation.Sym
 
INTEGER - Static variable in class harpoon.Tools.PatMat.Sym
 
INTEGER_LITERAL - Static variable in class harpoon.Tools.Annotation.Sym
 
interestingMethods(Collection<HMethod>, CallGraph, Predicate<HMethod>) - Static method in class harpoon.Analysis.PA2.PAUtil
Returns all methods that are transitively reachable from roots, along call paths that do not include any "undesirable" methods.
INTERFACE - Static variable in class harpoon.Tools.Annotation.Sym
 
Interface - Class in silicon.JavaChip
Defines the external interfaces of the java chip.
Interface() - Constructor for class silicon.JavaChip.Interface
 
InterfaceList - Class in harpoon.Interpret.Tree
The InterfaceList class is a linked list used to represent a list of interfaces.
InterfaceList(int) - Constructor for class harpoon.Interpret.Tree.InterfaceList
Class constructor.
interfaceListOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
If hc is a class type, or an interface, returns the offset from the class pointer of the pointer to implemented interfaces
InterfaceListPointer - Class in harpoon.Interpret.Tree
The InterfaceListPointer is used to representing a pointer to a list of interfaces.
InterfaceMethodMap - Class in harpoon.Backend.Analysis
InterfaceMethodMap provides a mapping from interface methods to the offset that the method-pointers should have on the object layout.
InterfaceMethodMap(Enumeration) - Constructor for class harpoon.Backend.Analysis.InterfaceMethodMap
Creates a InterfaceMethodMap for interfaces in hclasses.
InterfaceMethodMap(ClassHierarchy) - Constructor for class harpoon.Backend.Analysis.InterfaceMethodMap
Creates a InterfaceMethodMap for interfaces in the given ClassHierarchy ch.
interfaces - Variable in class harpoon.IR.RawClass.ClassFile
Each value in the interfaces array must be a valid index into the constant_pool table.
interfaces(int) - Method in class harpoon.IR.RawClass.ClassFile
Return the CONSTANT_Class_info entry in the constant_pool corresponding to the value in interfaces[i].
interfaces_count() - Method in class harpoon.IR.RawClass.ClassFile
 
InterferenceGraph - Interface in harpoon.Analysis
InterferenceGraph is an abstract interface for interference graphs.
InterferenceGraph - Class in harpoon.Backend.CSAHack.RegAlloc
 
InterferenceGraph() - Constructor for class harpoon.Backend.CSAHack.RegAlloc.InterferenceGraph
 
InterpreterOffsetMap - Class in harpoon.Interpret.Tree
A simple OffsetMap, used by the Tree Interpreter
InterpreterOffsetMap(ClassHierarchy) - Constructor for class harpoon.Interpret.Tree.InterpreterOffsetMap
 
InterpreterOffsetMap(ClassHierarchy, NameMap) - Constructor for class harpoon.Interpret.Tree.InterpreterOffsetMap
Class constructor
InterProc - Class in harpoon.Analysis.TypeInference
InterProc
InterProc(HCode, HCodeFactory) - Constructor for class harpoon.Analysis.TypeInference.InterProc
Creates an InterProc analyzer.
InterProc(HCode, ClassHierarchy, HCodeFactory) - Constructor for class harpoon.Analysis.TypeInference.InterProc
 
InterProcAnalysisResult - Class in harpoon.Analysis.PA2
InterProcAnalysisResult models the analysis result that (1) is computed for the end of a method m; and (2) that is required in the inter-procedural analysis in order to treat calls to m.
InterProcAnalysisResult() - Constructor for class harpoon.Analysis.PA2.InterProcAnalysisResult
 
InterProcAnalysisResult.Chained - Class in harpoon.Analysis.PA2
 
InterProcAnalysisResult.Chained(InterProcAnalysisResult) - Constructor for class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
InterProcPA - Class in harpoon.Analysis.PointerAnalysis
InterProcPA is a "functional" class (i.e. it contains just some methods, no persistent data) that wraps the inter-procedural part of the pointer analysis.
InterProcPA() - Constructor for class harpoon.Analysis.PointerAnalysis.InterProcPA
 
InterThreadPA - Class in harpoon.Analysis.PointerAnalysis
InterThreadPA groups together the functions related to the inter-thread analysis.
InterThreadPA() - Constructor for class harpoon.Analysis.PointerAnalysis.InterThreadPA
 
intGET(Object, Object, int) - Static method in class harpoon.Runtime.MZFExternalMap
 
intmultiplier() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
intmultiplier() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
IntraProc - Class in harpoon.Analysis.PA2
IntraProc
IntraProc(HMethod, boolean, PointerAnalysis) - Constructor for class harpoon.Analysis.PA2.IntraProc
 
IntraProc - Class in harpoon.Analysis.TypeInference
TypeInfo is a simple type analysis tool for quad-ssi form.
IntraProc(InterProc, HMethod, HCodeFactory) - Constructor for class harpoon.Analysis.TypeInference.IntraProc
 
inTry(Instr) - Method in class harpoon.IR.Bytecode.Code.ExceptionEntry
 
intSET(Object, Object, int, int) - Static method in class harpoon.Runtime.MZFExternalMap
 
intValue() - Method in class harpoon.IR.RawClass.ConstantInteger
Returns the integer value of this constant.
invalidateCaches() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
invalidateCaches() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Certain methods of this object may use caching for internal performances.
invariants(WorkSet) - Method in class harpoon.Analysis.LowQuad.Loop.LoopInvariance
Creates a WorkSet containing Quads that are loop invariant.
invariantsign() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
invariantsMap(HCode, Loops) - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis
 
InvariantsMap - Interface in harpoon.Analysis.Maps
InvariantsMap is a mapping from Loops to a Set of invariants.
invariantsMap(HCode, Loops) - Method in interface harpoon.Analysis.Maps.InvariantsMap
Returns a Set of invariant loop elements.
invert(int) - Static method in class harpoon.IR.Tree.Bop
Returns the inverted opposite for a compare Bop.
INVOCATION - Class in harpoon.IR.Tree
INVOCATION objects are statements which stand for procedure calls.
INVOCATION(TreeFactory, HCodeElement, TEMP, Exp, ExpList, int) - Constructor for class harpoon.IR.Tree.INVOCATION
Constructor.
INVOKEINTERFACE - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKEINTERFACE_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKENONVIRTUAL_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKESPECIAL - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKESTATIC - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKESTATIC_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKESUPER_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKEVIRTUAL - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKEVIRTUAL_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKEVIRTUAL_QUICK_W - Static variable in class harpoon.IR.Bytecode.Op
 
INVOKEVIRTUALOBJECT_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
IOEffectAnalysis - Class in harpoon.Analysis
IOEffectAnalysis is a simple analysis that detects whether a method may (transitively) execute an input/output operation.
IOEffectAnalysis(CallGraph) - Constructor for class harpoon.Analysis.IOEffectAnalysis
Creates a IOEffectAnalysis object.
IOR - Static variable in class harpoon.IR.Bytecode.Op
 
IOR - Static variable in class harpoon.IR.Quads.Qop
Computes the binary-OR of two int values.
IREM - Static variable in class harpoon.IR.Bytecode.Op
 
IREM - Static variable in class harpoon.IR.Quads.Qop
Computes the remainder of two int values.
IRETURN - Static variable in class harpoon.IR.Bytecode.Op
 
isAbstract(HMethod) - Static method in class harpoon.Analysis.PA2.PAUtil
 
isAbstract() - Method in class harpoon.IR.RawClass.AccessFlags
 
isAnalyzable(HMethod) - Method in class harpoon.Analysis.PA2.PointerAnalysis
Checks whether hm can be analyzed.
isArray() - Method in class harpoon.ClassFile.HClass
If this HClass object represents an array type, returns true, otherwise returns false.
isArrayOfNonPrimitives(ExactTemp) - Method in class harpoon.Util.TypeInference.TypeInference
Checks whether the temp et.t in instruction et.q points to an array of non-primitive type components (ie non an int[].
isAssignableFrom(HClass) - Method in class harpoon.ClassFile.HClass
Determines if the class or interface represented by this HClass object is either the same as, or is a superclass or superinterface of, the class or interface represented by the specified HClass parameter.
isAssociative(int) - Static method in class harpoon.IR.Tree.Bop
Determines if the given Bop operation is associative.
isBaseKnown() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
isBaseKnown() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Value
 
isBottom() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Tests whether this is the bottom of some specialization chain, i.e.
isBranch(byte) - Static method in class harpoon.IR.Bytecode.Op
Tells whether a given opcode is a branch instruction.
isCanonical() - Method in class harpoon.IR.Tree.CanonicalTreeCode
 
isCanonical() - Method in class harpoon.IR.Tree.Code
Returns true if this codeview is a canonical representation
isCanonical() - Method in class harpoon.IR.Tree.OptimizedTreeCode
 
isCanonical() - Method in class harpoon.IR.Tree.TreeCode
 
isCaught(HClass) - Method in class harpoon.IR.Quads.HANDLER
Returns true if the given exception HClass is caught by this HANDLER.
isCommutative(int) - Static method in class harpoon.IR.Tree.Bop
Determines if the given Bop operation is commutative.
isConnected() - Method in class harpoon.Analysis.Partition.WGNode
 
isConst(HCE, Temp) - Method in interface harpoon.Analysis.Maps.ConstMap
Determine whether a given temporary has a constant value at the specified definition point.
isConst(HCE, Temp) - Method in class harpoon.Analysis.Maps.ConstMapProxy
 
isConst(HCE, Temp) - Method in class harpoon.Analysis.Maps.DefaultMap
 
isConst(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine whether Temp t has a constant value.
isConst(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SimpleConstMap
 
isConst(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether Temp t has a constant value.
isConst(HField) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether HField hf has a constant value.
isConst() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Always returns false.
isConst() - Method in class harpoon.Interpret.Tree.StringPointer
Always returns true.
isConst() - Method in class harpoon.Interpret.Tree.UndefinedPointer
Always returns false.
isConstant(HMethod, HField) - Method in class harpoon.Analysis.SizeOpt.ConstructorClassifier
Returns true iff the given field hf is always set to a constant value when the given constructor is executed.
isConstant() - Method in interface harpoon.ClassFile.HField
Determines whether this HField represents a constant field.
isCSSpec() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Checks whether this node is a call site specialization of another node.
isCSSpec() - Method in class harpoon.Analysis.PointerAnalysis.PASync
Checks whether this action is a calling context specialization of some other one.
isDef() - Method in class harpoon.Analysis.Tree.DominatingMemoryAccess.daNum
 
isDef(Object) - Static method in class harpoon.Analysis.Tree.DominatingMemoryAccess
Returns true if the MEM operation that returned this specifier (from harpoon.Backend.MIPS.Frame.daNum) is the defining access.
isDefinitelyInitialized(HField) - Method in class harpoon.Analysis.Quads.DefiniteInitOracle
Queries the DefiniteInitOracle; returns true iff every constructor for the declaring class of hf *must* define the field before any reference to the field is made.
isDerived() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Always returns false.
isDerived() - Method in class harpoon.Interpret.Tree.StringPointer
Always returns false.
isDerived() - Method in class harpoon.Interpret.Tree.UndefinedPointer
Always returns false.
isDirective() - Method in class harpoon.IR.Assem.Instr
Returns true if this is a directive instruction that is meant to represent data stored in the code segment, not actual executable code.
isDirective() - Method in class harpoon.IR.Assem.InstrDIRECTIVE
 
isDoubleWord() - Method in class harpoon.IR.Tree.Exp
Returns true if the expression corresponds to a 64-bit value.
isDoubleWord() - Method in class harpoon.IR.Tree.MOVE
 
isDoubleWord() - Method in class harpoon.IR.Tree.RETURN
 
isDoubleWord() - Method in class harpoon.IR.Tree.THROW
 
isDoubleWord(TreeFactory, int) - Static method in class harpoon.IR.Tree.Type
 
isDoubleWord() - Method in interface harpoon.IR.Tree.Typed
Returns true if the expression corresponds to a 64-bit value.
isDummy() - Method in class harpoon.IR.Assem.Instr
Returns true if this is a dummy instruction to express register allocation constraints.
isEdge(Temp, Temp) - Method in class harpoon.Analysis.Quads.QuadInterferenceGraph
 
isEdge(N, N) - Method in interface harpoon.Util.Grapher
 
isEmpty() - Method in class harpoon.Analysis.PA2.PAEdgeSet
Checks whether this set of edges is empty.
isEmpty() - Method in class harpoon.Analysis.Partition.WeightedGraph
 
isEmpty() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
isEmpty() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
isEmpty() - Method in class harpoon.Analysis.PointerAnalysis.PAWorkList
 
isEmpty() - Method in class harpoon.Analysis.PointerAnalysis.PAWorkSet
 
isEmpty() - Method in class harpoon.Analysis.PointerAnalysis.PAWorkStack
 
isEmpty() - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Tests if this relation is empty or not.
isEmpty() - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
isEmpty() - Method in interface harpoon.Util.Worklist
Determines if there are any more items left in the Worklist.
isEnabled(String) - Static method in class harpoon.Analysis.Counters.CounterFactory
Returns the enabled/disabled status of the given counter_name.
isExact - Variable in class harpoon.Analysis.Maps.ExactTypeMap.ExactType
 
isExactType(HCE, Temp) - Method in interface harpoon.Analysis.Maps.ExactTypeMap
Returns true if temporary t defined at definition point hce contains an object of the type returned by typeMap(hce, t) and not a subtype of that type.
isExactType(HCE, Temp) - Method in class harpoon.Analysis.Maps.ExactTypeMapProxy
 
isExactType(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine whether the static type of Temp t defined at hce is exact (or whether the runtime type could be a subclass of the static type).
isExactType(Quad, Temp) - Method in class harpoon.Analysis.Quads.TypeInfo
 
isExactType(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether the static type of Temp t defined at hce is exact (or whether the runtime type could be a subclass of the static type).
isException(HClass) - Static method in class harpoon.Analysis.PA2.PAUtil
 
isFinal(HClass) - Method in class harpoon.Backend.Maps.CHFinalMap
 
isFinal(HMethod) - Method in class harpoon.Backend.Maps.CHFinalMap
 
isFinal(HClass) - Method in class harpoon.Backend.Maps.DefaultFinalMap
 
isFinal(HMethod) - Method in class harpoon.Backend.Maps.DefaultFinalMap
 
isFinal(HField) - Method in class harpoon.Backend.Maps.DefaultFinalMap
 
isFinal(HClass) - Method in class harpoon.Backend.Maps.FinalMap
Returns true if the class is never subclassed.
isFinal(HMethod) - Method in class harpoon.Backend.Maps.FinalMap
Returns true if the method is never overridden.
isFinal(HField) - Method in class harpoon.Backend.Maps.FinalMap
Returns true if the field is never modified after declaration.
isFinal() - Method in class harpoon.IR.RawClass.AccessFlags
 
isFloatingPoint() - Method in class harpoon.IR.Tree.Exp
Returns true if the expression corresponds to a floating-point value.
isFloatingPoint() - Method in class harpoon.IR.Tree.MOVE
 
isFloatingPoint() - Method in class harpoon.IR.Tree.RETURN
 
isFloatingPoint() - Method in class harpoon.IR.Tree.THROW
 
isFloatingPoint(int) - Static method in class harpoon.IR.Tree.Type
 
isFloatingPoint() - Method in interface harpoon.IR.Tree.Typed
Returns true if the expression corresponds to a floating-point value.
isFresh() - Method in class harpoon.Analysis.PA2.PANode
 
isGenuine() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Checks whether this node is a genuine one.
isGood(HField) - Method in class harpoon.Analysis.SizeOpt.ConstructorClassifier
Returns true iff the given field is 'subclass-final' and there is at least one callable constructor where the field's content can be predicted.
isGood(HMethod) - Method in class harpoon.Analysis.SizeOpt.ConstructorClassifier
Returns true iff there is at least one field whose value can be predicted when this constructor is called.
ISHL - Static variable in class harpoon.IR.Bytecode.Op
 
ISHL - Static variable in class harpoon.IR.Quads.Qop
Computes the value of the first int value shifted left by the number of bits specified in the low five bits of the second int value.
ISHR - Static variable in class harpoon.IR.Bytecode.Op
 
ISHR - Static variable in class harpoon.IR.Quads.Qop
Computes the value of the first int value shifted right with sign extension by the number of bits specified in the low five bits of the second int value.
isIncompatible(HCodeElement, HCodeElement) - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Returns true if the given allocation sites cannot use the same memory to the best of our knowledge, i.e. we have not encountered one or both of them, or we have unable to prove thay can safely use the same memory.
isInstanceOf(HClass) - Method in class harpoon.ClassFile.HClass
Determines if this HClass is an instance of the given HClass hc.
isInterface() - Method in class harpoon.ClassFile.HClass
Determines if the specified HClass object represents an interface type.
isInterface() - Method in class harpoon.IR.Bytecode.OpMethod
Indicates whether this operand references an interface method.
isInterface() - Method in class harpoon.IR.RawClass.AccessFlags
 
isInterfaceMethod() - Method in interface harpoon.ClassFile.HInitializer
Determines whether this HInitializer is an interface method.
isInterfaceMethod() - Method in interface harpoon.ClassFile.HMethod
Determines whether this HMethod is an interface method.
isInterfaceMethod() - Method in class harpoon.IR.Quads.CALL
Determines whether this CALL is to an interface method.
isJSR(byte) - Static method in class harpoon.IR.Bytecode.Op
Tells whether a given opcode is a jump to subrouting (JSR) instruction.
isJump() - Method in class harpoon.IR.Assem.Instr
Returns true if this is an unconditional Jump.
isJump() - Method in class harpoon.IR.Assem.InstrJUMP
 
isLabel() - Method in class harpoon.IR.Assem.Instr
Returns true if this is a label instruction that is meant to mark a location in the code segment, not actual executable code.
isLabel() - Method in class harpoon.IR.Assem.InstrLABEL
 
isLive(Instr, int) - Method in class harpoon.IR.Bytecode.Liveness
Return the liveness of local variable #lv_index at instruction where.
isModifiable() - Method in class harpoon.Analysis.GraphColoring.ColorableNode
Modifiability check.
isModifiable() - Method in class harpoon.Analysis.GraphColoring.Node
Modifiability check.
isModifiable() - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Modifiability check.
isMove(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
 
isMove(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.FlowGraph
True if this node represents a move instruction, i.e. one that can be deleted if def=use.
isMove() - Method in class harpoon.IR.Assem.Instr
Returns true if this is a Move.
isMove() - Method in class harpoon.IR.Assem.InstrMOVE
 
isMustParam(Temp) - Method in class harpoon.Analysis.Quads.MustParamOracle
Returns true iff the given Temp *must* contain the value of some parameter.
isNative(HMethod) - Static method in class harpoon.Analysis.PA2.PAUtil
 
isNative() - Method in class harpoon.IR.RawClass.AccessFlags
 
isNative() - Method in class harpoon.IR.Tree.CALL
 
isNative() - Method in class harpoon.IR.Tree.INVOCATION
 
isNative() - Method in class harpoon.IR.Tree.NATIVECALL
 
isNop(Stm) - Static method in class harpoon.IR.Tree.Stm
Returns true if stm has no effect.
isNoSync(Object) - Static method in class harpoon.Runtime.DynamicSyncImpl
Returns true iff synchronization on the given object must be performed, or false if it can be skipped.
isOffsetKnown() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
isOffsetKnown() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
isOffsetKnown() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Value
 
isOption(String) - Static method in class harpoon.Util.Options.Option
 
isParam(HMethod, HField) - Method in class harpoon.Analysis.SizeOpt.ConstructorClassifier
Returns true iff the given field hf is always set to the same value as one of the constructor's parameters whenever it is executed.
isPointer(int) - Static method in class harpoon.IR.Tree.Type
 
isPOLY() - Method in class harpoon.Analysis.MetaMethods.GenType
Checks whether this is a polymorphic type.
isPossiblyNull(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine whether the given Temp can possibly be null.
isPossiblyNull(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether the given Temp can possibly be null.
isPred(Instr) - Method in class harpoon.IR.Assem.Instr
 
isPred(Instr) - Method in class harpoon.IR.Bytecode.Instr
 
isPred(Quad) - Method in class harpoon.IR.Quads.Quad
 
isPred(N) - Method in class harpoon.Util.Collections.AbstractGraph.Node
 
isPred(N) - Method in interface harpoon.Util.Collections.Graph.Node
Return true iff the given node is a predecessor of this node.
isPrimitive() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Checks whether this node is an unspecialized one (a root node in the chain of specialization).
isPrimitive() - Method in class harpoon.ClassFile.HClass
Determines if the specified HClass object represents a primitive Java type.
isPrivate() - Method in class harpoon.IR.RawClass.AccessFlags
 
isProtected(Quad) - Method in class harpoon.IR.Quads.HANDLER
Returns true if the given Quad is protected by this HANDLER; false otherwise.
isProtected(Quad) - Method in interface harpoon.IR.Quads.HANDLER.ProtectedSet
Determines whether the specified Quad is a member of the protected set.
isProtected() - Method in class harpoon.IR.RawClass.AccessFlags
 
isPublic() - Method in class harpoon.IR.RawClass.AccessFlags
 
isPure(HMethod) - Method in class harpoon.Analysis.PA2.Mutation.MutationAnalysis
Checks whether hm is a pure methods, according to the JML definition.
isReachable(HCE) - Method in class harpoon.Analysis.Reachable
 
isRead(HMethod, HField) - Method in class harpoon.Analysis.Quads.FieldSyncOracle
Returns true if HMethod hm will ever read HField hf, either directly or via a method call.
isRead(HField) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine whether the given HField is ever read.
isRegister(Temp) - Method in class harpoon.Analysis.Instr.RegAlloc
Checks if t is a register (Helper method).
isRegister(Temp) - Method in class harpoon.Backend.Generic.RegFileInfo
Checks if t is a element of the register file for this architecture.
isRegister(Temp) - Method in class harpoon.Backend.MIPS.RegFileInfo
 
isRegister(Temp) - Method in class harpoon.Backend.Sparc.RegFileInfo
 
isRegister(Temp) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
isSafeMethod(HMethod) - Method in class harpoon.Analysis.PreciseGC.MRAFactory
Checks whether a method is "safe" (i.e. whether all calls to a method occurs when the receiver object is the most recently allocated object.)
isSafeToRemove(Instr) - Method in class harpoon.Backend.Generic.Code
Returns false if instr cannot be safely deleted.
isSelfIncompatible(HCodeElement) - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
Returns true if the given site shound be dynamic to the best of our knowledge, i.e. if we haven't seen this site for some reason (e.g. it's not reachable from the entry method), or if we have been unable to prove it can be allocated statically.
isSmall - Variable in class harpoon.IR.Tree.CONST
 
isSmall() - Method in class harpoon.IR.Tree.CONST
Returns true if this is a sub-integer expression.
isSmall() - Method in class harpoon.IR.Tree.ESEQ
 
isSmall - Variable in class harpoon.IR.Tree.MEM
 
isSmall() - Method in class harpoon.IR.Tree.MEM
Returns true if this is a sub-integer expression.
isSmall() - Method in interface harpoon.IR.Tree.PreciselyTyped
Returns true if this expression is a small type, false otherwise.
isSpecialized() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Checks whether this node is a specialization of some other node.
isStarted(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Checks whether the thread "nt" is started or not.
isStatic() - Method in interface harpoon.ClassFile.HField
Determines whether this is a static field.
isStatic() - Method in interface harpoon.ClassFile.HMethod
Determines whether this is a static method.
isStatic() - Method in class harpoon.IR.Quads.CALL
Determines whether this CALL is to a static method.
isStatic() - Method in class harpoon.IR.Quads.GET
Determines whether the GET is of a static field.
isStatic() - Method in class harpoon.IR.Quads.METHOD
Determines whether the parameters defined in this Quads.METHOD belong to a static method.
isStatic() - Method in class harpoon.IR.Quads.SET
Determines whether the SET is of a static field.
isStatic() - Method in class harpoon.IR.RawClass.AccessFlags
 
isStrict() - Method in class harpoon.IR.RawClass.AccessFlags
 
isSucc(Instr) - Method in class harpoon.IR.Assem.Instr
 
isSucc(Instr) - Method in class harpoon.IR.Bytecode.Instr
 
isSucc(Quad) - Method in class harpoon.IR.Quads.Quad
 
isSucc(N) - Method in class harpoon.Util.Collections.AbstractGraph.Node
 
isSucc(N) - Method in interface harpoon.Util.Collections.Graph.Node
Return true iff the given node is a successor of this node.
isSuper() - Method in class harpoon.IR.RawClass.AccessFlags
 
isSuperclassOf(HClass) - Method in class harpoon.ClassFile.HClass
Determines if this HClass is a superclass of a given HClass hc.
isSuperinterfaceOf(HClass) - Method in class harpoon.ClassFile.HClass
Determines if this HClass is a superinterface of a given HClass hc.
isSync(HMethod) - Method in class harpoon.Analysis.Quads.FieldSyncOracle
Returns true if HMethod hm will ever acquire/release a lock (either directly, or via a method call).
isSynchronized() - Method in class harpoon.IR.RawClass.AccessFlags
 
isSyncOn(PANode) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Checks whether any sync action is done on the node node.
isSynthetic() - Method in interface harpoon.ClassFile.HField
Determines whether this HField is synthetic.
isSynthetic() - Method in interface harpoon.ClassFile.HMember
Indicates whether this field or method is 'real' or if it has been synthesized by the compiler in order to implement scoping of inner classes.
isSynthetic() - Method in interface harpoon.ClassFile.HMethod
Determines whether this HMethod is synthetic, in the sense of "associated with an inner-class; not programmer declared".
isTailCall - Variable in class harpoon.IR.LowQuad.PCALL
Whether this should be treated as a tail call.
isTailCall() - Method in class harpoon.IR.LowQuad.PCALL
Return true if this method should return the same value the callee returns or throw whatever exception the callee throws (in which case we can get rid of our stack and let the callee return directly to our caller).
isTailCall - Variable in class harpoon.IR.Quads.CALL
Special flag for tail calls.
isTailCall() - Method in class harpoon.IR.Quads.CALL
Returns true if this method should return the same value the callee returns or throw whatever exception the callee throws (in which case we can get rid of our stack and let the callee return directly to our caller.
isTailCall - Variable in class harpoon.IR.Tree.CALL
Whether this invocation should be performed as a tail call.
isThatOne(HMethod, String, String) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
Checks whether the method hm is the method named mthd from the class named cls.
ISTORE - Static variable in class harpoon.IR.Bytecode.Op
 
ISTORE_0 - Static variable in class harpoon.IR.Bytecode.Op
 
ISTORE_1 - Static variable in class harpoon.IR.Bytecode.Op
 
ISTORE_2 - Static variable in class harpoon.IR.Bytecode.Op
 
ISTORE_3 - Static variable in class harpoon.IR.Bytecode.Op
 
isTransient() - Method in class harpoon.IR.RawClass.AccessFlags
 
isTSpec() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Checks whether this node is a thread specialization of some other node.
isTSpec() - Method in class harpoon.Analysis.PointerAnalysis.PASync
Checks whether this action is a thread specialization of some other one.
ISUB - Static variable in class harpoon.IR.Bytecode.Op
 
isUnconditionalBranch(byte) - Static method in class harpoon.IR.Bytecode.Op
Tells whether a given opcode is an unconditional branch instruction.
isUse() - Method in class harpoon.Analysis.Tree.DominatingMemoryAccess.daNum
 
isUse(Object) - Static method in class harpoon.Analysis.Tree.DominatingMemoryAccess
Returns true if the MEM operation that returned this specifier (from harpoon.Backend.MIPS.Frame.daNum) is a use.
isValid(int) - Static method in class harpoon.IR.LowQuad.LowQuadKind
 
isValid(int) - Static method in class harpoon.IR.LowQuad.LQop
 
isValid(int) - Static method in class harpoon.IR.Quads.Qop
Determines if a given Qop value is valid.
isValid(int) - Static method in class harpoon.IR.Quads.QuadKind
 
isValid(int) - Static method in class harpoon.IR.Tree.Bop
Determines if the given Bop value is valid.
isValid(int) - Static method in class harpoon.IR.Tree.TreeKind
 
isValid(int) - Static method in class harpoon.IR.Tree.Type
 
isValid(int) - Static method in class harpoon.IR.Tree.Uop
Determines if the given Uop value is valid.
isValidToken(MethodSplitter.Token) - Method in class harpoon.Analysis.PreciseGC.AllocationHoisting
Check the validity of a given MethodSplitter.Token.
isValidToken(MethodSplitter.Token) - Method in class harpoon.Analysis.PreciseGC.RCTransformer
Check the validity of a given MethodSplitter.Token.
isValidToken(MethodSplitter.Token) - Method in class harpoon.Analysis.Quads.InitializerTransform
Checks the token types handled by this MethodSplitter subclass.
isValidToken(MethodSplitter.Token) - Method in class harpoon.Analysis.Transactions.SyncTransformer
 
isValidToken(MethodSplitter.Token) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Check the validity of a given MethodSplitter.Token.
isVirtual(HMethod) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Utility method to determine whether a method is inheritable (and thus it's children should be split whenever it is).
isVirtual - Variable in class harpoon.IR.LowQuad.PCALL
Whether this is a virtual or non-virtual method invocation.
isVirtual() - Method in class harpoon.IR.LowQuad.PCALL
Returns true if ptr points to the address of the method to invoke; or false if ptr contains the direct address of the method to invoke.
isVirtual - Variable in class harpoon.IR.Quads.CALL
Special flag for non-virtual methods.
isVirtual() - Method in class harpoon.IR.Quads.CALL
Returns true if the method is dispatched virtually, or false otherwise.
isVolatile() - Method in class harpoon.IR.RawClass.AccessFlags
 
isWellTyped() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.DefPoint
 
isWritten(HMethod, HField) - Method in class harpoon.Analysis.Quads.FieldSyncOracle
Returns true if HMethod hm will ever write HField hf, either directly or via a method call.
iterator() - Method in interface harpoon.IR.Quads.HANDLER.ProtectedSet
Iterate through all the elements of the protected set.
iterator(HandlerSet) - Static method in class harpoon.IR.Quads.HandlerSet
Returns an iterator over the HANDLERs in the given HandlerSet.
iterator(ExpList) - Static method in class harpoon.IR.Tree.ExpList
FSK: didn't use standard JDK instance-local iterators because ExpLists are allowed to be null, and so such a definition would encourage attempted method-calls on null.
iterator() - Method in class harpoon.Util.ArraySet
 
iterator() - Method in class harpoon.Util.BinHeapPriorityQueue
 
IUSHR - Static variable in class harpoon.IR.Bytecode.Op
 
IUSHR - Static variable in class harpoon.IR.Quads.Qop
Computes the value of the first int value shifted right without sign extension by the number of bits specified in the low five bits of the second int value.
IVar - Class in harpoon.Analysis.PA2
IVar
IVar() - Constructor for class harpoon.Analysis.PA2.IVar
 
IXOR - Static variable in class harpoon.IR.Bytecode.Op
 
IXOR - Static variable in class harpoon.IR.Quads.Qop
Computes the binary-XOR of two int values.

J

Jasmin - Class in harpoon.IR.Jasmin
Jasmin converts from QuadWithTry to bytecode formatted for the Jasmin assembler.
Jasmin(HCode[], HMethod[], HClass) - Constructor for class harpoon.IR.Jasmin.Jasmin
Creates a Jasmin object.
Jasmin(HCode[], HMethod[], HClass, int, int) - Constructor for class harpoon.IR.Jasmin.Jasmin
Creates a Jasmin object.
jasminEscape(String) - Static method in class harpoon.Util.Util
Escape the contents of a String so they are safe to print.
Java12 - Class in harpoon.Tools.Annotation
 
Java12() - Constructor for class harpoon.Tools.Annotation.Java12
constructor
Java12(Lexer) - Constructor for class harpoon.Tools.Annotation.Java12
 
Javap - Class in harpoon.Main
Javap is a low-level clone of javap that supports GJ signatures.
Javap() - Constructor for class harpoon.Main.Javap
 
Javap2 - Class in harpoon.Main
Javap2 is a clone of the Sun javap tool, using our higher-level bytecode file infrastructure.
Javap2() - Constructor for class harpoon.Main.Javap2
 
jlClass(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
 
JLSRuntimeInformation - Class in harpoon.Backend.Analysis
JLSRuntimeInformation contains the basic runtime information required by the Java Language Specification.
JLSRuntimeInformation(Linker) - Constructor for class harpoon.Backend.Analysis.JLSRuntimeInformation
Creates a JDKRuntimeInformation.
JMain - Class in harpoon.Main
JMain is the command-line interface to the compiler.
JMain() - Constructor for class harpoon.Main.JMain
 
join(FACT, FACT) - Method in class harpoon.Analysis.Companions.DataFlowSolver
Compute the join operation on two dataflow FACTs.
join(Object, Object) - Method in class harpoon.Analysis.PA2.EdgeSetVar
Joins two values from the domain this variable takes values from.
join(PAEdgeSet) - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
join(Object, Object) - Method in class harpoon.Analysis.PA2.NodeSetVar
Joins two values from the domain this variable takes values from.
join(PAEdgeSet) - Method in class harpoon.Analysis.PA2.PAEdgeSet
Adds all the edges from es2 to this set pf edges.
join(Object, Object) - Method in class harpoon.Analysis.PA2.WVar
 
join(ActionRepository) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Adds the information about actions and action-thread ordering from ar2 to this action repository.
join(EdgeOrdering) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
join is called in the control-flow join points.
join(ParIntGraph) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
join combines two ParIntGraphs in \ a control-flow join point.
join(PAThreadMap) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
join combines two PAThreadMaps in a control-flow join poin
join(PointsToGraph) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
join is called in the control-flow join points.
join(MRA.MRAToken) - Method in class harpoon.Analysis.PreciseGC.MRA.MRAToken
Returns an MRAToken representing the join of this with the argument.
JSR - Static variable in class harpoon.IR.Bytecode.Op
 
JSR_W - Static variable in class harpoon.IR.Bytecode.Op
 
JUMP - Class in harpoon.IR.Tree
JUMP objects are statements which stand for unconditional computed branches.
JUMP(TreeFactory, HCodeElement, Exp, LabelList) - Constructor for class harpoon.IR.Tree.JUMP
Full constructor.
JUMP(TreeFactory, HCodeElement, Label) - Constructor for class harpoon.IR.Tree.JUMP
Abbreviated constructor for a non-computed branch.
JUMP - Static variable in class harpoon.IR.Tree.TreeKind
 
JUMP - Static variable in class harpoon.Tools.PatMat.Sym
 
JumpOptimization - Class in harpoon.Analysis.Tree
JumpOptimization removes branches-to-branches and redundant labels.

K

KEEP_QUAD_MAP_HACK - Static variable in class harpoon.IR.Quads.QuadSSI
 
keepTheEssential(Set) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Returns a new relation containing information only about the ordering of edges between nodes from remaining_nodes.
keepTheEssential(PANode[], boolean) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Produces a ParIntGraph containing only the nodes that could be reached from the outside.
keepTheEssential(PANode[], boolean, Set) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
 
keepTheEssential(Set) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Produces a new PAThreadMap containing only the thread nodes that appear in essential_nodes.
keepTheEssential(PANode[], Set, boolean) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Produces a PointsToGraph containing just the nodes that are reachable from root nodes: the nodes that could be reached from outside code (e.g. the caller): the parameter nodes (received in the params) and the returned nodes (found in this.r).
key(int) - Method in class harpoon.IR.Bytecode.InSwitch
Returns the case key corresponding to the given branch target index.
KEY_EXTRA - Static variable in class harpoon.Tools.PatMat.Sym
 
KEY_PRED - Static variable in class harpoon.Tools.PatMat.Sym
 
KEY_WEIGHT - Static variable in class harpoon.Tools.PatMat.Sym
 
keys() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
keys() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelationMapBased
 
keys() - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Returns all the keys appearing in this relation.
keys() - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
keys - Variable in class harpoon.IR.Quads.SWITCH
Integer keys for switch cases.
keys() - Method in class harpoon.IR.Quads.SWITCH
Returns the array of integer keys for the switch cases.
keys(int) - Method in class harpoon.IR.Quads.SWITCH
Returns a given element in the keys array.
keys - Variable in class harpoon.IR.Quads.TYPESWITCH
Class type keys for typeswitch cases.
keys() - Method in class harpoon.IR.Quads.TYPESWITCH
Returns the array of class type keys for the typeswitch cases.
keys(int) - Method in class harpoon.IR.Quads.TYPESWITCH
Returns a given element in the keys array.
keySet() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Returns an unmodifiable set view of the keys contained in this map.
keysLength() - Method in class harpoon.IR.Quads.SWITCH
Returns the length of the keys array.
keysLength() - Method in class harpoon.IR.Quads.TYPESWITCH
Returns the length of the keys array.
kgroup - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
kids() - Method in class harpoon.IR.Tree.ESEQ
 
kids() - Method in class harpoon.IR.Tree.INVOCATION
 
kids() - Method in class harpoon.IR.Tree.METHOD
 
kids() - Method in class harpoon.IR.Tree.MOVE
 
kids() - Method in class harpoon.IR.Tree.SEQ
 
kids() - Method in class harpoon.IR.Tree.Tree
Return a list of subexpressions of this Tree.
kids() - Method in class harpoon.Tools.PatMat.Spec.Exp
Creates an Spec.ExpList of children of this Spec.Exp.
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpBinop
 
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpConst
 
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpId
 
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpMem
 
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpName
 
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpTemp
 
kids() - Method in class harpoon.Tools.PatMat.Spec.ExpUnop
 
kids() - Method in class harpoon.Tools.PatMat.Spec.Stm
Creates an Spec.ExpList of children of this Spec.Stm.
kids() - Method in class harpoon.Tools.PatMat.Spec.StmAlign
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmCall
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmCjump
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmData
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmExp
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmJump
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmLabel
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmMethod
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmMove
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmNativeCall
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmReturn
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmSegment
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmSeq
 
kids() - Method in class harpoon.Tools.PatMat.Spec.StmThrow
 
kind - Variable in class harpoon.Analysis.PA2.PANode
Kind of this node.
kind() - Method in interface harpoon.Backend.Generic.RegFileInfo.CommonLoc
Returns the KIND of Loc this is.
KIND - Static variable in interface harpoon.Backend.Generic.RegFileInfo.MachineRegLoc
 
KIND - Static variable in interface harpoon.Backend.Generic.RegFileInfo.StackOffsetLoc
 
kind() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Returns an integer enumeration of the kind of this Pointer.
kind() - Method in class harpoon.Interpret.Tree.StringPointer
Returns an integer enumeration of the kind of this Pointer.
kind() - Method in class harpoon.Interpret.Tree.UndefinedPointer
Returns an integer enumeration of the kind of this Pointer.
kind() - Method in class harpoon.IR.LowQuad.PAOFFSET
 
kind() - Method in class harpoon.IR.LowQuad.PARRAY
 
kind() - Method in class harpoon.IR.LowQuad.PCALL
 
kind() - Method in class harpoon.IR.LowQuad.PFCONST
 
kind() - Method in class harpoon.IR.LowQuad.PFIELD
 
kind() - Method in class harpoon.IR.LowQuad.PFOFFSET
 
kind() - Method in class harpoon.IR.LowQuad.PGET
 
kind() - Method in class harpoon.IR.LowQuad.PMCONST
 
kind() - Method in class harpoon.IR.LowQuad.PMETHOD
 
kind() - Method in class harpoon.IR.LowQuad.PMOFFSET
 
kind() - Method in class harpoon.IR.LowQuad.POPER
 
kind() - Method in class harpoon.IR.LowQuad.PSET
 
kind() - Method in class harpoon.IR.Quads.AGET
 
kind() - Method in class harpoon.IR.Quads.ALENGTH
 
kind() - Method in class harpoon.IR.Quads.ANEW
 
kind() - Method in class harpoon.IR.Quads.ARRAYINIT
 
kind() - Method in class harpoon.IR.Quads.ASET
 
kind() - Method in class harpoon.IR.Quads.CALL
 
kind() - Method in class harpoon.IR.Quads.CJMP
 
kind() - Method in class harpoon.IR.Quads.COMPONENTOF
 
kind() - Method in class harpoon.IR.Quads.CONST
 
kind() - Method in class harpoon.IR.Quads.DEBUG
 
kind() - Method in class harpoon.IR.Quads.FOOTER
 
kind() - Method in class harpoon.IR.Quads.GET
 
kind() - Method in class harpoon.IR.Quads.HANDLER
 
kind() - Method in class harpoon.IR.Quads.HEADER
 
kind() - Method in class harpoon.IR.Quads.INSTANCEOF
 
kind() - Method in class harpoon.IR.Quads.LABEL
 
kind() - Method in class harpoon.IR.Quads.METHOD
 
kind() - Method in class harpoon.IR.Quads.MONITORENTER
 
kind() - Method in class harpoon.IR.Quads.MONITOREXIT
 
kind() - Method in class harpoon.IR.Quads.MOVE
 
kind() - Method in class harpoon.IR.Quads.NEW
 
kind() - Method in class harpoon.IR.Quads.NOP
 
kind() - Method in class harpoon.IR.Quads.OPER
 
kind() - Method in class harpoon.IR.Quads.PHI
 
kind() - Method in class harpoon.IR.Quads.Quad
Return an integer enumeration of the kind of this Quad.
kind() - Method in class harpoon.IR.Quads.RETURN
 
kind() - Method in class harpoon.IR.Quads.SET
 
kind() - Method in class harpoon.IR.Quads.SWITCH
 
kind() - Method in class harpoon.IR.Quads.THROW
 
kind() - Method in class harpoon.IR.Quads.TYPECAST
 
kind() - Method in class harpoon.IR.Quads.TYPESWITCH
 
kind() - Method in class harpoon.IR.Tree.ALIGN
 
kind() - Method in class harpoon.IR.Tree.BINOP
 
kind() - Method in class harpoon.IR.Tree.CALL
 
kind() - Method in class harpoon.IR.Tree.CJUMP
 
kind() - Method in class harpoon.IR.Tree.CONST
 
kind() - Method in class harpoon.IR.Tree.DATUM
 
kind() - Method in class harpoon.IR.Tree.ESEQ
 
kind() - Method in class harpoon.IR.Tree.EXPR
 
kind() - Method in class harpoon.IR.Tree.JUMP
 
kind() - Method in class harpoon.IR.Tree.LABEL
 
kind() - Method in class harpoon.IR.Tree.MEM
 
kind() - Method in class harpoon.IR.Tree.METHOD
 
kind() - Method in class harpoon.IR.Tree.MOVE
 
kind() - Method in class harpoon.IR.Tree.NAME
 
kind() - Method in class harpoon.IR.Tree.NATIVECALL
 
kind() - Method in class harpoon.IR.Tree.RETURN
 
kind() - Method in class harpoon.IR.Tree.SEGMENT
 
kind() - Method in class harpoon.IR.Tree.SEQ
 
kind() - Method in class harpoon.IR.Tree.TEMP
 
kind() - Method in class harpoon.IR.Tree.THROW
 
kind() - Method in class harpoon.IR.Tree.Tree
Return an integer enumeration of the kind of this Tree.
kind() - Method in class harpoon.IR.Tree.UNOP
 

L

L2D - Static variable in class harpoon.IR.Bytecode.Op
 
L2D - Static variable in class harpoon.IR.Quads.Qop
Converts a long to a double.
L2F - Static variable in class harpoon.IR.Bytecode.Op
 
L2F - Static variable in class harpoon.IR.Quads.Qop
Converts a long to a float.
L2I - Static variable in class harpoon.IR.Bytecode.Op
 
L2I - Static variable in class harpoon.IR.Quads.Qop
Converts a long to an int.
label - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
label() - Method in class harpoon.Backend.Generic.GCInfo.GCPoint
Returns the Label identifying the GC point
label() - Method in interface harpoon.Backend.Generic.Runtime.ObjectBuilder.Info
 
label(HClass) - Method in class harpoon.Backend.Maps.NameMap
Maps an HClass to a Label representing the location of its class pointer
label(HClass, String) - Method in class harpoon.Backend.Maps.NameMap
Maps an HClass to a Label representing the class data structure associated with the given suffix.
label(HField) - Method in class harpoon.Backend.Maps.NameMap
Maps a static HField to a Label.
label(HField, String) - Method in class harpoon.Backend.Maps.NameMap
Maps an HField to a Label representing the field information structure associated with the given suffix.
label(HMethod) - Method in class harpoon.Backend.Maps.NameMap
Maps an HMethod to a Label.
label(HMethod, String) - Method in class harpoon.Backend.Maps.NameMap
Maps an HMethod to a Label representing the method information structure associated with the given suffix.
label(String) - Method in class harpoon.Backend.Maps.NameMap
Maps a String constant to a Label.
label(String, String) - Method in class harpoon.Backend.Maps.NameMap
Maps a String constant to a Label representing the string data structure associated with the given suffix.
label(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the label corresponding to the specified HClass
label(HField) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the label corresponding to the specified static field
label(HMethod) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the label corrensponding to the specified method.
label(String) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the label corresponding to the specified String constant
LABEL - Class in harpoon.IR.Quads
LABEL marks a basic-block entrance.
LABEL(QuadFactory, HCodeElement, String, Temp[], Temp[][], int) - Constructor for class harpoon.IR.Quads.LABEL
Creates a LABEL representing the entrance to a basic block.
LABEL(QuadFactory, HCodeElement, String, Temp[], int) - Constructor for class harpoon.IR.Quads.LABEL
 
LABEL(QuadFactory, PHI, String) - Constructor for class harpoon.IR.Quads.LABEL
Creates a LABEL to replace a PHI.
label - Variable in class harpoon.IR.Quads.LABEL
the (optional) name of this label.
label() - Method in class harpoon.IR.Quads.LABEL
Returns the optional name of this label, or null if this label has no name.
LABEL - Static variable in class harpoon.IR.Quads.QuadKind
 
LABEL - Class in harpoon.IR.Tree
LABEL objects define the constant value of the given label to be the current machine code address.
LABEL(TreeFactory, HCodeElement, Label, boolean) - Constructor for class harpoon.IR.Tree.LABEL
Constructor.
label - Variable in class harpoon.IR.Tree.LABEL
The symbolic name to define.
label - Variable in class harpoon.IR.Tree.NAME
The label which this NAME refers to.
LABEL - Static variable in class harpoon.IR.Tree.TreeKind
 
Label - Class in harpoon.Temp
A Label represents a (symbolic) address in assembly language.
Label(String) - Constructor for class harpoon.Temp.Label
Makes a new label that prints as "name".
Label() - Constructor for class harpoon.Temp.Label
Makes a new label with an arbitrary name.
LABEL - Static variable in class harpoon.Tools.PatMat.Sym
 
LabelList - Class in harpoon.Temp
Deprecated. Scott says so. Use a real java.util.List instead.
LabelList(Label, LabelList) - Constructor for class harpoon.Temp.LabelList
Deprecated.  
LADD - Static variable in class harpoon.IR.Bytecode.Op
 
LADD - Static variable in class harpoon.IR.Quads.Qop
Computes the sum of two long values.
LALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
LAND - Static variable in class harpoon.IR.Bytecode.Op
 
LAND - Static variable in class harpoon.IR.Quads.Qop
Computes the binary-AND of two long values.
LANGLE - Static variable in class harpoon.Tools.PatMat.Sym
 
last - Variable in class harpoon.Analysis.FCFGBasicBlock
 
last - Variable in class harpoon.Backend.Generic.MaxMunchCG
 
last_nonopt - Variable in class gnu.getopt.Getopt
The index of the last non-option in argv[]
lastComment() - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
LASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
lastStm(BasicBlock) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
lastUse(Temp, UseDefable, Iterator) - Static method in class harpoon.Analysis.Instr.RegAlloc
Checks if i is last use of reg in the block of instructions listed in iter.
layout(Instr, Instr) - Method in class harpoon.IR.Assem.Instr
Places this in the instruction layout between from and to.
LBBConverter - Class in harpoon.Util.LightBasicBlocks
LBBConverter converts the body of a method into LightBasicBlocks.
LBBConverter(BBConverter) - Constructor for class harpoon.Util.LightBasicBlocks.LBBConverter
Creates a LBBConverter.
LBRACE - Static variable in class harpoon.Tools.Annotation.Sym
 
LBRACE - Static variable in class harpoon.Tools.PatMat.Sym
 
LBRACK - Static variable in class harpoon.Tools.Annotation.Sym
 
LBRACK - Static variable in class harpoon.Tools.PatMat.Sym
 
LCMP - Static variable in class harpoon.IR.Bytecode.Op
 
LCMPEQ - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if the two long values are equal, or false otherwise.
LCMPGT - Static variable in class harpoon.IR.Quads.Qop
Evaluates to true if the first long value is greater than the second, or false otherwise.
LCONST_0 - Static variable in class harpoon.IR.Bytecode.Op
 
LCONST_1 - Static variable in class harpoon.IR.Bytecode.Op
 
LDC - Static variable in class harpoon.IR.Bytecode.Op
 
LDC2_W - Static variable in class harpoon.IR.Bytecode.Op
 
LDC2_W_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
LDC_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
LDC_W - Static variable in class harpoon.IR.Bytecode.Op
 
LDC_W_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
LDIV - Static variable in class harpoon.IR.Bytecode.Op
 
LDIV - Static variable in class harpoon.IR.Quads.Qop
Computes the quotient of two long values.
leaves - Variable in class harpoon.Analysis.FCFGBasicBlock.Factory
 
left - Variable in class harpoon.Tools.PatMat.Spec.ExpBinop
Expression on the left side of this.
length - Variable in class harpoon.Analysis.Quads.SSIStats
How many statements are in this code.
length() - Method in interface harpoon.Backend.Generic.Runtime.ObjectBuilder.ArrayInfo
 
length - Variable in class harpoon.IR.RawClass.LocalVariableTable
The given local variable must have a value at indices into the code array in the closed interval [start_pc, start_pc + length].
lengthOffset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
If hc is an array type, returns the offset of its length field
Lexer - Class in harpoon.Tools.Annotation.Lex
 
Lexer(Reader) - Constructor for class harpoon.Tools.Annotation.Lex.Lexer
 
Lexer(Reader, int) - Constructor for class harpoon.Tools.Annotation.Lex.Lexer
 
Lexer - Interface in harpoon.Tools.Annotation
 
LightBasicBlock - Class in harpoon.Util.LightBasicBlocks
LightBasicBlock is designed as a compact version of a BasicBlock.
LightBasicBlock.Factory - Class in harpoon.Util.LightBasicBlocks
Converts the large, set based, basic blocks produced by a BasicBlock.Factory into smaller, array based, light basic blocks.
LightBasicBlock.Factory(BasicBlockFactoryInterf) - Constructor for class harpoon.Util.LightBasicBlocks.LightBasicBlock.Factory
Creates a LighBasicBlock.Factory object.
LightMap<K,V> - Class in harpoon.Analysis.PointerAnalysis
LightMap is a very lightweight implementation of the java.util.Map interface.
LightMap() - Constructor for class harpoon.Analysis.PointerAnalysis.LightMap
Creates a LightMap.
LightMap(Map<? extends K, ? extends V>) - Constructor for class harpoon.Analysis.PointerAnalysis.LightMap
Creates a LightMap with the same mappings as the given map.
LightPAEdgeSet - Class in harpoon.Analysis.PointerAnalysis
LightPAEdgeSet
LightPAEdgeSet() - Constructor for class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
Creates a LightPAEdgeSet.
LightRelation - Class in harpoon.Analysis.PointerAnalysis
LightRelation
LightRelation() - Constructor for class harpoon.Analysis.PointerAnalysis.LightRelation
Creates a RelationLight.
line - Variable in class harpoon.Tools.Annotation.Lex.LinePos
Line number in the source file.
line_number - Variable in class harpoon.IR.RawClass.LineNumberTable
The value of the line_number item must give the corresponding line number in the original Java source file.
line_number_table - Variable in class harpoon.IR.RawClass.AttributeLineNumberTable
Each entry in the line_number_table array indicates that the line number in the original Java source file changes at a given point in the code array.
LINE_NUMBER_TABLE - Static variable in class harpoon.Main.Javap
Print out line number tables.
line_number_table_length() - Method in class harpoon.IR.RawClass.AttributeLineNumberTable
 
linearize(Stm) - Static method in class harpoon.Analysis.Transactions.TreeDataFilter
 
linearize(Stm) - Static method in class harpoon.IR.Tree.Stm
Returns a Stm such that all SEQ objects contained within the Stm object are on the top level.
LineNumberTable - Class in harpoon.IR.RawClass
Each object indicates that the line number in the original Java source file changes at a given point in the code array.
LineNumberTable(int, int) - Constructor for class harpoon.IR.RawClass.LineNumberTable
Constructor.
linepos(int) - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
LinePos - Class in harpoon.Tools.Annotation.Lex
LocPair is a line number, character position pair to denote a location in the input file.
LinePos(int, int) - Constructor for class harpoon.Tools.Annotation.Lex.LinePos
Creates a LocPair.
linepos(int) - Method in interface harpoon.Tools.Annotation.Lexer
 
link(PANode) - Method in class harpoon.Analysis.PA2.PANode
 
linker - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
linker - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
linker - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
linker - Variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
linker - Variable in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
linker - Variable in class harpoon.Backend.Generic.RuntimeInformation
The Linker to use for all non-primitive elements of the returned Sets.
linker - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
Linker - Class in harpoon.ClassFile
A Linker object manages the association of symbolic names to code/data/object descriptions.
Linker() - Constructor for class harpoon.ClassFile.Linker
 
linker - Variable in class harpoon.ClassFile.Relinker
 
linker - Variable in class harpoon.Main.CompilerStageEZ
 
linker - Static variable in class harpoon.Main.EventDriven
 
linker - Static variable in class harpoon.Main.Lint
 
Lint - Class in harpoon.Main
Lint is a quick Java code-checker.
Lint() - Constructor for class harpoon.Main.Lint
 
list(Temp) - Method in class harpoon.Analysis.Instr.LocalCffRegAlloc
 
list(Temp, Temp) - Method in class harpoon.Analysis.Instr.LocalCffRegAlloc
 
ListCell - Class in harpoon.Analysis.PointerAnalysis
ListCell
ListCell(Object, ListCell) - Constructor for class harpoon.Analysis.PointerAnalysis.ListCell
Creates a ListCell.
listClasses(String) - Static method in class harpoon.ClassFile.Loader
Returns an iterator of Strings naming the available classes in the given package which are on the classpath.
ListComparator<T> - Class in harpoon.Util
A ListComparator compares two lists element-by-element.
ListComparator() - Constructor for class harpoon.Util.ListComparator
Creates a ListComparator which compares elements first-to-last.
ListComparator(boolean, Comparator<? super T>) - Constructor for class harpoon.Util.ListComparator
Creates a ListComparator.
live - Variable in class harpoon.Analysis.ContBuilder.ContBuilder
 
liveMachineRegLocs - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
liveMachineRegLocs() - Method in class harpoon.Backend.Generic.GCInfo.GCPoint
Returns an unmodifiable Set of live, non-derived pointers at this GC point as WrappedMachineRegLocs
Liveness<HCE extends HCodeElement> - Class in harpoon.Analysis
Liveness defines an abstract class for live variable analysis.
Liveness(HCode<HCE>) - Constructor for class harpoon.Analysis.Liveness
Creates a Liveness object from provided HCode.
Liveness - Class in harpoon.Backend.CSAHack.RegAlloc
An interference graph by examination of liveness of nodes in a flow graph.
Liveness(FlowGraph) - Constructor for class harpoon.Backend.CSAHack.RegAlloc.Liveness
Construct interference graph from flow graph.
Liveness - Class in harpoon.IR.Bytecode
Liveness is a local-variable liveness analysis on Bytecode form.
Liveness(Code) - Constructor for class harpoon.IR.Bytecode.Liveness
Creates a Liveness.
liveOnExit() - Method in class harpoon.Backend.Generic.RegFileInfo
Returns the Set of registers live at a method's exit.
liveOnExit() - Method in class harpoon.Backend.MIPS.RegFileInfo
 
liveOnExit() - Method in class harpoon.Backend.Sparc.RegFileInfo
 
liveOnExit() - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
liveout - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
liveOut(BasicBlock) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
liveSet(Instr) - Method in class harpoon.IR.Bytecode.Liveness
Return a Collection of live local variables at the given instruction where.
liveSetsAreConsistent(Code, BasicBlock.Factory, CFGrapher, UseDefer, LiveTemps, Set) - Static method in class harpoon.Analysis.Instr.Check
 
liveStackOffsetLocs - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
liveStackOffsetLocs() - Method in class harpoon.Backend.Generic.GCInfo.GCPoint
Returns an unmodifiable Set of live, non-derived pointers at this GC point as WrappedStackOffsetLocs
LiveTemps - Class in harpoon.Analysis.DataFlow
LiveTemps is an extension of LiveVars for performing liveness analysis on Temps.
LiveTemps(BasicBlock.Factory, Set, UseDefer) - Constructor for class harpoon.Analysis.DataFlow.LiveTemps
Constructs a new LiveTemps for basicblocks.
LiveTemps(BasicBlock.Factory, Set) - Constructor for class harpoon.Analysis.DataFlow.LiveTemps
 
LiveTemps(BasicBlock.Factory, Set, SetFactory, UseDefer) - Constructor for class harpoon.Analysis.DataFlow.LiveTemps
Constructor for LiveVars that allows the user to pass in their own SetFactory for constructing sets of the Temps in the analysis.
LiveVars - Class in harpoon.Analysis.DataFlow
LiveVars performs Liveness Analysis for the variables in the HCodes passed to it.
LiveVars(HCode, CFGrapher, Set) - Constructor for class harpoon.Analysis.DataFlow.LiveVars
Constructs a new LiveVars.
LiveVars(HCode, CFGrapher, UseDefer, Set) - Constructor for class harpoon.Analysis.DataFlow.LiveVars
Constructs a new LiveVars.
LiveVars.BBVisitor - Class in harpoon.Analysis.DataFlow
 
LiveVars.BBVisitor(BasicBlock.Factory, boolean) - Constructor for class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Special ctor for use by subclasses so that the system won't break when calling abstract methods that require data that subclasses haven't initialized yet.
LiveVars.BBVisitor(BasicBlock.Factory) - Constructor for class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Constructs a new LiveVars for basicblocks.
LiveVars.BBVisitor(BasicBlock.Factory, SetFactory) - Constructor for class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Constructor for LiveVars that allows the user to pass in their own SetFactory for constructing sets of whatever variable types that are used in the analysis.
LiveVars.BBVisitor.LiveVarInfo - Class in harpoon.Analysis.DataFlow
 
LiveVars.BBVisitor.LiveVarInfo(SetFactory) - Constructor for class harpoon.Analysis.DataFlow.LiveVars.BBVisitor.LiveVarInfo
 
LLOAD - Static variable in class harpoon.IR.Bytecode.Op
 
LLOAD_0 - Static variable in class harpoon.IR.Bytecode.Op
 
LLOAD_1 - Static variable in class harpoon.IR.Bytecode.Op
 
LLOAD_2 - Static variable in class harpoon.IR.Bytecode.Op
 
LLOAD_3 - Static variable in class harpoon.IR.Bytecode.Op
 
LMUL - Static variable in class harpoon.IR.Bytecode.Op
 
LMUL - Static variable in class harpoon.IR.Quads.Qop
Computes the product of two long values.
LNEG - Static variable in class harpoon.IR.Bytecode.Op
 
LNEG - Static variable in class harpoon.IR.Quads.Qop
Computes the negation of a long value.
LOAD - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: Load node
load_caches() - Method in class harpoon.Analysis.Quads.CachingCallGraph
 
Loader - Class in harpoon.ClassFile
Class file loader.
Loader() - Constructor for class harpoon.ClassFile.Loader
 
LOCAL - Static variable in class harpoon.Analysis.Instr.RegAlloc
 
local_variable_table - Variable in class harpoon.IR.RawClass.AttributeLocalVariableTable
Each entry in the local_variable_table array indicates a range of code offsets within which a local variable has a value.
LOCAL_VARIABLE_TABLE - Static variable in class harpoon.Main.Javap
Print out local variable tables.
local_variable_table_length() - Method in class harpoon.IR.RawClass.AttributeLocalVariableTable
 
LocalCffRegAlloc - Class in harpoon.Analysis.Instr
LocalCffRegAlloc performs Local Register Allocation for a given set of Instrs using a conservative-furthest-first algorithm.
LocalCffRegAlloc(Code) - Constructor for class harpoon.Analysis.Instr.LocalCffRegAlloc
Creates a LocalCffRegAlloc.
LocalCffRegAlloc.PreassignTemp - Class in harpoon.Analysis.Instr
PreassignTemp represents Temps which have been pre-assigned to machine registers.
LocalCffRegAlloc.PreassignTemp(Temp) - Constructor for class harpoon.Analysis.Instr.LocalCffRegAlloc.PreassignTemp
 
localName(int, int) - Method in class harpoon.IR.RawClass.AttributeCode
Return the symbolic name of a local variable, or null if one cannot be found.
localName(int, int) - Method in class harpoon.IR.RawClass.AttributeLocalVariableTable
Get the (debugging) name of a local variable.
localSaveOffset(int) - Method in class harpoon.Backend.MIPS.StackInfo
Return the offset for a given local index
LocalVariableNamer - Class in harpoon.Analysis.RoleInference
LocalVariableNamer
LocalVariableNamer(HMethod) - Constructor for class harpoon.Analysis.RoleInference.LocalVariableNamer
Creates a LocalVariableNamer.
LocalVariableTable - Class in harpoon.IR.RawClass
Each object indicates a range of code array offsets within which a local variable has a value.
LocalVariableTable(ClassFile, int, int, int, int, int) - Constructor for class harpoon.IR.RawClass.LocalVariableTable
Constructor.
locate(Temp, Instr) - Method in interface harpoon.Backend.Generic.RegFileInfo.TempLocator
 
LocationFactory - Interface in harpoon.Backend.Generic
The LocationFactory interface provides a means for the runtime system to get access to some global storage for its use.
LocationFactory.Location - Interface in harpoon.Backend.Generic
The Locations returned by the LocationFactory allocation function are opaque data structures that permit only the creation of an accessor fragment in Tree form.
lock - Variable in class harpoon.IR.Quads.MONITORENTER
The object containing the monitor to be locked.
lock() - Method in class harpoon.IR.Quads.MONITORENTER
Returns the Temp specifying the object to be locked.
lock - Variable in class harpoon.IR.Quads.MONITOREXIT
The object containing the monitor to be released.
lock() - Method in class harpoon.IR.Quads.MONITOREXIT
Returns the Temp specifying the object to be released.
lockcount - Static variable in class harpoon.Analysis.Quads.CollectSyncStats
 
LockRemove - Class in harpoon.Analysis.EventDriven
LockRemove
LockRemove(Set, Map, HCodeFactory) - Constructor for class harpoon.Analysis.EventDriven.LockRemove
 
logCALL(Object, String, Object, String) - Static method in class harpoon.RunTime.Monitor
 
logNEW(Object, String, String, Object, int) - Static method in class harpoon.RunTime.Monitor
 
Long - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type long.
LONG - Static variable in class harpoon.IR.Tree.Type
64-bit integer type.
LONG - Static variable in interface harpoon.IR.Tree.Typed
 
LONG - Static variable in class harpoon.Tools.Annotation.Sym
 
LONG - Static variable in class harpoon.Tools.PatMat.Sym
 
long_only - Variable in class gnu.getopt.Getopt
This flag determines whether or not we are parsing only long args
long_options - Variable in class gnu.getopt.Getopt
This is an array of LongOpt objects which describ the valid long options.
LONG_WORD_SIZE - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
longGET(Object, Object, long) - Static method in class harpoon.Runtime.MZFExternalMap
 
longind - Variable in class gnu.getopt.Getopt
Stores the index into the long_options array of the long option found
LongOpt - Class in gnu.getopt
This object represents the definition of a long option in the Java port of GNU getopt.
LongOpt(String, int, StringBuffer, int) - Constructor for class gnu.getopt.LongOpt
Create a new LongOpt object with the given parameter values.
longopt_handled - Variable in class gnu.getopt.Getopt
A flag which communicates whether or not checkLongOption() did all necessary processing for the current option
longProportion(long, long, int, int, boolean) - Static method in class harpoon.Util.Util
Pretty printer for a proportion: " a out of total = proportion" (where total=a+b).
longProportion(long, long, int, int) - Static method in class harpoon.Util.Util
Convenient version of longProportion that uses null for the memSizeFormat.
longSET(Object, Object, long, long) - Static method in class harpoon.Runtime.MZFExternalMap
 
longValue() - Method in class harpoon.IR.RawClass.ConstantLong
Returns the value of this constant.
LOOKUPSWITCH - Static variable in class harpoon.IR.Bytecode.Op
 
LOOP_SENSITIVE - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Activates the loop sensitivity.
LoopAnalysis - Class in harpoon.Analysis.LowQuad.Loop
LoopAnalysis implements AllInductionsMap, BasicInductionsMap, and InvariantsMap.
LoopAnalysis(TempMap) - Constructor for class harpoon.Analysis.LowQuad.Loop.LoopAnalysis
Creates a LoopAnalysis.
LoopAnalysis.ForLoopInfo - Class in harpoon.Analysis.LowQuad.Loop
ForLoopInfo encapsulated information on a for loop.
loopBackEdges() - Method in class harpoon.Analysis.Loops.LoopFinder
This method finds all of the backedges of the loop.
loopBackEdges() - Method in interface harpoon.Analysis.Loops.Loops
Returns backedges in the Loop.
LoopDetector - Class in harpoon.Analysis.PA2.AllocSync
LoopDetector
LoopDetector(CachingCodeFactory) - Constructor for class harpoon.Analysis.PA2.AllocSync.LoopDetector
 
loopEntranceEdges() - Method in class harpoon.Analysis.Loops.LoopFinder
 
loopEntranceEdges() - Method in interface harpoon.Analysis.Loops.Loops
Returns entrances to the Loop.
loopEntrances() - Method in class harpoon.Analysis.Loops.LoopFinder
This method returns the entry point of the loop.
loopEntrances() - Method in interface harpoon.Analysis.Loops.Loops
Returns entrances to the Loop.
loopExcElements() - Method in class harpoon.Analysis.Loops.LoopFinder
Returns all of the HCodeElements of this loop that aren't in a nested loop.
loopExcElements() - Method in interface harpoon.Analysis.Loops.Loops
Returns elements of this loop not in any nested loop.
loopExit() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
loopExit gives the CJMP that is the first exit of the loop.
loopExitEdges() - Method in class harpoon.Analysis.Loops.LoopFinder
Returns a Set of all HCodeEdges exiting the loop.
loopExitEdges() - Method in interface harpoon.Analysis.Loops.Loops
Returns nodes that have edges exiting the loop.
loopExits() - Method in class harpoon.Analysis.Loops.LoopFinder
Returns a Set of all HCodeElements in the loop which have an edge exiting the loop.
loopExits() - Method in interface harpoon.Analysis.Loops.Loops
Returns nodes that have edges exiting the loop.
LoopFinder - Class in harpoon.Analysis.Loops
LoopFinder implements Dominator Tree Loop detection.
LoopFinder(HCode) - Constructor for class harpoon.Analysis.Loops.LoopFinder
Creates a new LoopFinder object.
LoopFinder(HCode, CFGrapher) - Constructor for class harpoon.Analysis.Loops.LoopFinder
Creates a new LoopFinder object.
loopIncElements() - Method in class harpoon.Analysis.Loops.LoopFinder
Returns a Set with all of the HCodeElements of the loop and loops included entirely within this loop.
loopIncElements() - Method in interface harpoon.Analysis.Loops.Loops
Returns elements of this loops and all nested loop.
LoopInvariance - Class in harpoon.Analysis.LowQuad.Loop
LoopInvariance
LoopInvariance(TempMap, HCode) - Constructor for class harpoon.Analysis.LowQuad.Loop.LoopInvariance
Creates a LoopInvariance.
loopinvariant() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
loopinvariant(Temp) - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
LoopMap - Class in harpoon.Analysis.LowQuad.Loop
LoopMap
LoopMap(HCode, Loops, TempMap) - Constructor for class harpoon.Analysis.LowQuad.Loop.LoopMap
Creates a LoopMap.
LoopOptimize - Class in harpoon.Analysis.LowQuad.Loop
LoopOptimize optimizes the code after LoopAnalysis.
LoopOptimize(AllInductionsMap, BasicInductionsMap, InvariantsMap, LoopAnalysis, TempMap) - Constructor for class harpoon.Analysis.LowQuad.Loop.LoopOptimize
Creates an LoopOptimize.
LoopOptimize(LoopAnalysis, TempMap) - Constructor for class harpoon.Analysis.LowQuad.Loop.LoopOptimize
LoopOptimize constructor.
Loops - Interface in harpoon.Analysis.Loops
Loops contains the interface to be implemented by objects generating nested loops trees.
LOR - Static variable in class harpoon.IR.Bytecode.Op
 
LOR - Static variable in class harpoon.IR.Quads.Qop
Computes the binary-OR of two long values.
LOST - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: lost objects (i.e., objects reachable from unanalyzed parts of the program).
LOST_SUMMARY - Static variable in class harpoon.Analysis.PointerAnalysis.NodeRepository
 
lowBound - Static variable in class harpoon.Analysis.MemOpt.PreallocOpt
 
LowQuad - Class in harpoon.IR.LowQuad
The LowQuad interface identifies subclasses of harpoon.IR.Quads.Quad as being members of the LowQuad representation.
LowQuad(LowQuadFactory, HCodeElement) - Constructor for class harpoon.IR.LowQuad.LowQuad
 
LowQuadFactory - Class in harpoon.IR.LowQuad
LowQuadFactory is a trivial subclass of QuadFactory which assigns unique numbers to the Quads and LowQuads in LowQuad form.
LowQuadFactory() - Constructor for class harpoon.IR.LowQuad.LowQuadFactory
 
LowQuadKind - Class in harpoon.IR.LowQuad
LowQuadKind is an enumerated type for the various kinds of LowQuads.
LowQuadKind() - Constructor for class harpoon.IR.LowQuad.LowQuadKind
 
LowQuadNoSSA - Class in harpoon.IR.LowQuad
The LowQuadNoSSA codeview exposes a lowquad-based representation.
LowQuadNoSSA(HMethod, Quad) - Constructor for class harpoon.IR.LowQuad.LowQuadNoSSA
Create a new code object given a quadruple representation of the method instructions.
LowQuadSSA - Class in harpoon.IR.LowQuad
The LowQuadSSA codeview exposes a lowquad based representation in SSA form.
LowQuadSSA(LowQuadSSI) - Constructor for class harpoon.IR.LowQuad.LowQuadSSA
Creates a LowQuadSSA object from a LowQuadSSI object.
LowQuadSSA(HMethod, Quad) - Constructor for class harpoon.IR.LowQuad.LowQuadSSA
Create a new code object given a quadruple representation of the method instructions.
LowQuadSSI - Class in harpoon.IR.LowQuad
The LowQuadSSI codeview exposes a lowquad based representation in SSI form.
LowQuadSSI(LowQuadNoSSA) - Constructor for class harpoon.IR.LowQuad.LowQuadSSI
Creates a LowQuadSSI object from a LowQuadNoSSA object.
LowQuadSSI(HMethod, Quad) - Constructor for class harpoon.IR.LowQuad.LowQuadSSI
Create a new code object given a quadruple representation of the method instructions.
LowQuadValueVisitor<T> - Class in harpoon.IR.LowQuad
LowQuadValueVisitor is a visitor class for low quads that returns a parameterized value.
LowQuadValueVisitor(boolean) - Constructor for class harpoon.IR.LowQuad.LowQuadValueVisitor
Create a LowQuadValueVisitor.
LowQuadValueVisitor() - Constructor for class harpoon.IR.LowQuad.LowQuadValueVisitor
 
LowQuadVisitor - Class in harpoon.IR.LowQuad
LowQuadVisitor is another design pattern.
LowQuadVisitor(boolean) - Constructor for class harpoon.IR.LowQuad.LowQuadVisitor
Create a LowQuadVisitor.
LowQuadVisitor() - Constructor for class harpoon.IR.LowQuad.LowQuadVisitor
 
LPAREN - Static variable in class harpoon.Tools.Annotation.Sym
 
LPAREN - Static variable in class harpoon.Tools.PatMat.Sym
 
LQop - Class in harpoon.IR.LowQuad
LQop is an enumerated type for the various kinds of OPER opcodes in LowQuad form.
LQop() - Constructor for class harpoon.IR.LowQuad.LQop
 
LREM - Static variable in class harpoon.IR.Bytecode.Op
 
LREM - Static variable in class harpoon.IR.Quads.Qop
Computes the remainder of two long values.
LRETURN - Static variable in class harpoon.IR.Bytecode.Op
 
LSHIFT - Static variable in class harpoon.Tools.Annotation.Sym
 
LSHIFTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
LSHL - Static variable in class harpoon.IR.Bytecode.Op
 
LSHL - Static variable in class harpoon.IR.Quads.Qop
Computes the value of the first long value shifted left by the number of bits specified in the low six bits of the second int value.
LSHR - Static variable in class harpoon.IR.Bytecode.Op
 
LSHR - Static variable in class harpoon.IR.Quads.Qop
Computes the value of the first long value shifted right with sign extension by the number of bits specified in the low six bits of the second int value.
LSTORE - Static variable in class harpoon.IR.Bytecode.Op
 
LSTORE_0 - Static variable in class harpoon.IR.Bytecode.Op
 
LSTORE_1 - Static variable in class harpoon.IR.Bytecode.Op
 
LSTORE_2 - Static variable in class harpoon.IR.Bytecode.Op
 
LSTORE_3 - Static variable in class harpoon.IR.Bytecode.Op
 
LSUB - Static variable in class harpoon.IR.Bytecode.Op
 
LT - Static variable in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
< case
LT - Static variable in class harpoon.Tools.Annotation.Sym
 
LTE - Static variable in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
<= case
LTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
LUSHR - Static variable in class harpoon.IR.Bytecode.Op
 
LUSHR - Static variable in class harpoon.IR.Quads.Qop
Computes the value of the first long value shifted right without sign extension by the number of bits specified in the low six bits of the second int value.
lv(Temp) - Method in class harpoon.Analysis.PA2.FullAnalysisResult
Nodes pointed to by variabke t.
lv_name(int, int) - Method in class harpoon.Analysis.RoleInference.LocalVariableNamer
 
LVar - Class in harpoon.Analysis.PA2
LVar
LVar() - Constructor for class harpoon.Analysis.PA2.LVar
 
lvIN - Variable in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor.LiveVarInfo
 
lvOUT - Variable in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor.LiveVarInfo
 
LXOR - Static variable in class harpoon.IR.Bytecode.Op
 
LXOR - Static variable in class harpoon.IR.Quads.Qop
Computes the binary-XOR of two long values.

M

Main - Class in harpoon.Analysis.Partition
 
Main() - Constructor for class harpoon.Analysis.Partition.Main
 
main(String[]) - Static method in class harpoon.Analysis.Partition.Main
 
main(String[]) - Static method in class harpoon.Analysis.Quads.CollectSyncStats
 
main - Variable in class harpoon.Backend.Runtime1.Runtime
 
main(String[]) - Static method in class harpoon.Interpret.Tree.TestRun
 
main(String[]) - Static method in class harpoon.Main.CallGraph
 
main(String[]) - Static method in class harpoon.Main.CHStats
 
main(String[]) - Static method in class harpoon.Main.EDMain
 
main(String[]) - Static method in class harpoon.Main.EDXMain
 
main(String[]) - Static method in class harpoon.Main.EventDriven
 
main(String[]) - Static method in class harpoon.Main.Graph
 
main(String[]) - Static method in class harpoon.Main.Javap
 
main(String[]) - Static method in class harpoon.Main.Javap2
 
main(String[]) - Static method in class harpoon.Main.JMain
The compiler should be invoked with the names of classes to view.
main(String[]) - Static method in class harpoon.Main.Lint
 
Main - Class in harpoon.Main
Main is the command-line interface to the compiler.
Main() - Constructor for class harpoon.Main.Main
 
main(String[]) - Static method in class harpoon.Main.Main
The compiler should be invoked with the names of classes to view.
main(String[]) - Static method in class harpoon.Main.Purity
Convenient entry point for the purity analysis.
main(String[]) - Static method in class harpoon.Main.Raw
 
main(String[]) - Static method in class harpoon.Main.Run
 
main(String[]) - Static method in class harpoon.Main.SAMain
 
main(String[]) - Static method in class harpoon.Main.Sizer
 
main(String[]) - Static method in class harpoon.Main.TypesMain
 
Main - Class in harpoon.Tools.Annotation
Main routine for the Java source-code annotation tool.
Main() - Constructor for class harpoon.Tools.Annotation.Main
 
main(String[]) - Static method in class harpoon.Tools.Annotation.Main
 
Main - Class in harpoon.Tools.PatMat
 
Main() - Constructor for class harpoon.Tools.PatMat.Main
 
main(String[]) - Static method in class harpoon.Tools.PatMat.Main
 
main(String[]) - Static method in class harpoon.Util.Options.Option
 
MAInfo - Class in harpoon.Analysis.PointerAnalysis
MAInfo
MAInfo(PointerAnalysis, HCodeFactory, Linker, Set, MAInfo.MAInfoOptions) - Constructor for class harpoon.Analysis.PointerAnalysis.MAInfo
Creates a MAInfo.
MAInfo.MAInfoOptions - Class in harpoon.Analysis.PointerAnalysis
Options for the MAInfo processing.
MAInfo.MAInfoOptions() - Constructor for class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
 
mainM - Variable in class harpoon.Main.CompilerStageEZ
 
major_version - Variable in class harpoon.IR.RawClass.ClassFile
The major version number of the compiler that produced this class file.
make(HCode, Set) - Static method in class harpoon.Analysis.DataFlow.CachingLiveTemps
 
make(HCode, UseDefer, Set) - Static method in class harpoon.Analysis.DataFlow.LiveTemps
Produces a default live variable analysis object and solves it.
make(HCode, Set) - Static method in class harpoon.Analysis.DataFlow.LiveTemps
Produces a default live variable analysis object and solves it.
make(HCode, Set) - Static method in class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
 
make(RegAlloc, boolean) - Static method in class harpoon.Analysis.Instr.EqTempSets
Constructs and returns a new EqTempSets.
makeAccessor(TreeFactory, HCodeElement) - Method in interface harpoon.Backend.Generic.LocationFactory.Location
Return a Tree.Exp which can be used to address the contents of this Location for a fetch or set operation.
makeArray(HClass, int) - Method in class harpoon.ClassFile.Linker
Allow Linker subclass to substitute a different (mutable?)
makeArray(HClass, int) - Method in class harpoon.ClassFile.Relinker
 
makeColor() - Method in class harpoon.Analysis.GraphColoring.ColorFactory
Color generator.
makeEdge(Node, Node) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Generates an edge from from to to.
makeEmptyContext() - Method in class harpoon.Analysis.GenericContextFactory
 
makeEnv() - Method in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
makeFields(TreeFactory, Runtime.ObjectBuilder.Info, List<HField>, int, int) - Method in class harpoon.Backend.Runtime1.ObjectBuilder
 
MakeGCThreadSafe - Class in harpoon.Backend.Analysis
MakeGCThreadSafe adds checks to see whether another thread has caused a GC, and if so, halts the current thread by calling out to the runtime.
makeGenPrsv(BasicBlock, SetFactory) - Method in class harpoon.Analysis.DataFlow.ReachingHCodeElements
Initializes the GEN/PRSV information for 'bb' and stores in in the returned ReachingDefInfo.
makeGroup() - Method in class harpoon.IR.Assem.InstrGroup.Type
Creates an InstrGroup of the type for this representing rep.
makeGroup(InstrGroup) - Method in class harpoon.IR.Assem.InstrGroup.Type
Creates an InstrGroup, contained in container of the type for this representing rep.
makeHeader(TreeFactory, Runtime.ObjectBuilder.Info, boolean) - Method in class harpoon.Backend.Runtime1.ObjectBuilder
 
makeHeader(TreeFactory, Runtime.ObjectBuilder.Info, boolean) - Method in class harpoon.Backend.RuntimeTiny.ObjectBuilder
 
makeHeap() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
makeHeap() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
makeHeap() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
makeHeap() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
makeInitial(Temp) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Creates node(s) for t in the interference graph.
makeInitial(Temp) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
makeInitial(Temp) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
makeLabel(Label, Instr) - Method in class harpoon.Backend.Generic.InstrBuilder
Returns a new InstrLABEL for generating new arbitrary code blocks to branch to.
makeLabel(Instr) - Method in class harpoon.Backend.MIPS.InstrBuilder
 
makeLabel(Label, Instr) - Method in class harpoon.Backend.MIPS.InstrBuilder
Returns a new InstrLABEL for generating new arbitrary code blocks to branch to.
makeLabel(Instr) - Method in class harpoon.Backend.Sparc.InstrBuilder
 
makeLabel(Instr) - Method in class harpoon.Backend.StrongARM.InstrBuilder
 
makeLabel(Label, Instr) - Method in class harpoon.Backend.StrongARM.InstrBuilder
Returns a new InstrLABEL for generating new arbitrary code blocks to branch to.
makeLoad(List, int, Instr) - Method in class harpoon.Backend.Generic.InstrBuilder
Generates a new set of Instrs for memory traffic from RAM to multiple registers in the register file.
makeLoad(Temp, int, Instr) - Method in class harpoon.Backend.Generic.InstrBuilder
Generates a new set of Instrs for memory traffic from RAM to one register in the register file.
makeLoad(Temp, int, Instr) - Method in class harpoon.Backend.MIPS.InstrBuilder
 
makeLoad(Temp, int, Instr) - Method in class harpoon.Backend.Sparc.InstrBuilder
 
makeLoad(Temp, int, Instr) - Method in class harpoon.Backend.StrongARM.InstrBuilder
 
makeLocationData(Frame) - Method in interface harpoon.Backend.Generic.LocationFactory
Create an HData object that allocates static space for any allocated locations which need it.
makeLocationData(Frame) - Method in class harpoon.Backend.MIPS.RegFileInfo
Create an HData which allocates static space for any LocationFactory.Locations that have been created.
makeLocationData(Frame) - Method in class harpoon.Backend.Sparc.RegFileInfo
 
makeLocationData(Frame) - Method in class harpoon.Backend.StrongARM.RegFileInfo
Create an HData which allocates static space for any LocationFactory.Locations that have been created.
makeNoFall(InstrFactory, HCodeElement, String) - Static method in class harpoon.IR.Assem.InstrDIRECTIVE
 
makeNoFall(InstrFactory, HCodeElement, String, Label) - Static method in class harpoon.IR.Assem.InstrLABEL
 
makePrecolored(Temp) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
makePrecolored(Temp) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
makePrecolored(Temp) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
makeReachingDefs(HCode) - Method in class harpoon.Analysis.UseDefChecker.ReachingDefsFactory
 
makeRegAlloc(Code) - Method in class harpoon.Analysis.Instr.RegAlloc.Factory
 
makeStartup(Linker, HCodeFactory, OutputStream, boolean) - Static method in class harpoon.Interpret.Quads.Method
Write a start-up static state to disk.
makeStore(List, int, Instr) - Method in class harpoon.Backend.Generic.InstrBuilder
Generates a new set of Instrs for memory traffic from multiple registers in the register file to RAM.
makeStore(Temp, int, Instr) - Method in class harpoon.Backend.Generic.InstrBuilder
Generates a new set of Instrs for memory traffic from the register file to RAM.
makeStore(Temp, int, Instr) - Method in class harpoon.Backend.MIPS.InstrBuilder
 
makeStore(Temp, int, Instr) - Method in class harpoon.Backend.Sparc.InstrBuilder
 
makeStore(Temp, int, Instr) - Method in class harpoon.Backend.StrongARM.InstrBuilder
 
makeswaps(HCode, Set, Set) - Static method in class harpoon.IR.Quads.ThreadInliner
 
makeTemp(TEMP, TempFactory) - Method in class harpoon.Backend.Generic.MaxMunchCG
tempmap from tree temps to instr temps
makeTemp(Typed, TempFactory) - Method in class harpoon.Backend.Generic.TempBuilder
Makes a Temp for storing values with the same type as t.
makeTemp(Typed, TempFactory) - Method in class harpoon.Backend.Sparc.TempBuilder
 
makeTemp(Typed, TempFactory) - Method in class harpoon.Backend.StrongARM.TempBuilder
 
makeUseDef(BasicBlock, SetFactory) - Method in class harpoon.Analysis.DataFlow.LiveTemps
Initializes the USE/DEF information for 'bb' and stores in in the returned LiveVarInfo.
makeUseDef(BasicBlock, SetFactory) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Initializes the USE/DEF information for bb and stores it in the returned LiveVarInfo.
makeWorklist() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Moves Nodes from initial to appropriate set in { spill, freeze, simplify }_worklist.
MallocAllocationStrategy - Class in harpoon.Backend.Runtime1
MallocAllocationStrategy calls a C function with the same prototype as malloc() to do the allocation.
MallocAllocationStrategy(Frame, String) - Constructor for class harpoon.Backend.Runtime1.MallocAllocationStrategy
Creates a MallocAllocationStrategy.
mangle(HMethod, String) - Method in class harpoon.Backend.Maps.DefaultNameMap
Mangle a method name.
mangle(HField, String) - Method in class harpoon.Backend.Maps.DefaultNameMap
Mangle a field name.
mangle(HClass, String) - Method in class harpoon.Backend.Maps.DefaultNameMap
Mangle a class name.
mangle(String, String) - Method in class harpoon.Backend.Maps.DefaultNameMap
Mangle a string constant reference.
mangle(HMethod) - Method in class harpoon.Backend.Maps.NameMap
Mangle a method name.
mangle(HMethod, String) - Method in class harpoon.Backend.Maps.NameMap
Mangle a method name, adding a uniqueness suffix.
mangle(HField) - Method in class harpoon.Backend.Maps.NameMap
Mangle a field name.
mangle(HField, String) - Method in class harpoon.Backend.Maps.NameMap
Mangle a field name, adding a uniqueness suffix.
mangle(HClass) - Method in class harpoon.Backend.Maps.NameMap
Mangle a class name.
mangle(HClass, String) - Method in class harpoon.Backend.Maps.NameMap
Mangle a class name, adding a uniqueness suffix.
mangle(String) - Method in class harpoon.Backend.Maps.NameMap
Mangle a reference to a string constant.
mangle(String, String) - Method in class harpoon.Backend.Maps.NameMap
Mangle a reference to a string constant, adding a uniqueness suffix.
map(TempMap, Temp[]) - Static method in class harpoon.Analysis.EventDriven.CloningVisitor
 
map(TempMap, Temp[][]) - Static method in class harpoon.Analysis.EventDriven.CloningVisitor
 
map - Variable in class harpoon.Analysis.PointerAnalysis.AbstrRelationMapBased
 
map(HMethod, HMethod) - Method in class harpoon.Analysis.Realtime.ClassReplacer
Map a method on the original class to a method on the "to" class.
map(HData) - Method in class harpoon.Analysis.Transactions.TreeDataFilter
 
map(TempMap, Temp) - Static method in class harpoon.IR.Assem.Instr
 
map(TempMap, Temp[]) - Static method in class harpoon.IR.Assem.Instr
 
map(TempMap, Temp[][]) - Static method in class harpoon.IR.Assem.Instr
 
map(TempMap, Temp) - Static method in class harpoon.IR.Quads.Quad
Apply TempMap tm to Temp t.
map(TempMap, Temp[]) - Static method in class harpoon.IR.Quads.Quad
Apply TempMap to array of Temps.
map(TempMap, Temp[][]) - Static method in class harpoon.IR.Quads.Quad
Apply TempMap to 2-d array of Temps.
mapAll(HClass, HClass) - Method in class harpoon.Analysis.Realtime.ClassReplacer
Map all of the methods from HClass from to to that share the same name and method signature.
MapComparator<K,V> - Class in harpoon.Util
A MapComparator compares two unsorted maps by first sorting their keys and then comparing them entry-by-entry (treating the map as a sorted pair list).
MapComparator(Comparator<? super K>, Comparator<? super V>) - Constructor for class harpoon.Util.MapComparator
Creates a MapComparator which compares entries in the order defined by the keyComparator and compares keys (using keyComparator) before values (using valueComparator).
mappingFactory - Static variable in class harpoon.Analysis.PA2.DSFactories
 
MapRelEdgeSetFactory - Class in harpoon.Analysis.PA2
MapRelEdgeSetFactory
MapRelEdgeSetFactory(Factory<Map<PANode, Relation<HField, PANode>>>, Factory<Relation<HField, PANode>>) - Constructor for class harpoon.Analysis.PA2.MapRelEdgeSetFactory
 
MapRelPAEdgeSet - Class in harpoon.Analysis.PA2
MapRelPAEdgeSet
MapRelPAEdgeSet(Factory<Map<PANode, Relation<HField, PANode>>>, Factory<Relation<HField, PANode>>) - Constructor for class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
markSupported() - Method in class harpoon.Tools.Annotation.Lex.EscapedUnicodeReader
 
match(Exp) - Method in class harpoon.Analysis.Tree.Simplification.Rule
Returns true if exp matches this rule.
match(Stm) - Method in class harpoon.Analysis.Tree.Simplification.Rule
Returns true if stm matches this rule.
max() - Static method in class harpoon.IR.LowQuad.LowQuadKind
 
max() - Static method in class harpoon.IR.Quads.QuadKind
 
max() - Static method in class harpoon.IR.Tree.TreeKind
 
MAX_CALLEES - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
Call sites with more than MAX_CALLEES callees are simply considered to be holes.
MAX_INLINABLE_METHOD_SIZE - Static variable in class harpoon.Analysis.PA2.AllocSync.ASFlags
 
MAX_INLINABLE_METHOD_SIZE - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
The maximal size of a method that can be inlined.
MAX_INLINING_LEVEL - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
The current implementation is able to inline call strings of length bigger than one.
MAX_INTRA_SCC_ITER - Static variable in class harpoon.Analysis.PA2.Flags
 
max_locals - Variable in class harpoon.IR.RawClass.AttributeCode
The value of the max_locals item gives the number of local variables used by this method, including the parameters passed to the method on invocation.
MAX_METHOD_SIZE - Static variable in class harpoon.Analysis.PA2.AllocSync.ASFlags
 
MAX_METHOD_SIZE - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
The maximal size to which we can inflate the size of a method through inlining.
MAX_SPEC_DEPTH - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
The specialization limit.
max_stack - Variable in class harpoon.IR.RawClass.AttributeCode
The value of the max_stack item gives the maximum number of words on the operand stack at any point during execution of this method.
maxChildNumber(HClass) - Method in class harpoon.Backend.RuntimeTiny.PreOrderClazNumbering
Returns the maximum number associated with an instantiatable child of the given HClass.
maxDepth() - Method in class harpoon.Backend.Maps.ClassDepthMap
Returns the maximum nesting depth of any class (dependent on a given context).
maxDepth() - Method in class harpoon.Backend.Maps.DefaultClassDepthMap
 
MaximalMunchCGG - Class in harpoon.Tools.PatMat
MaximalMunchCGG finds an optimal tiling of instructions on a Tree-IR.
MaximalMunchCGG(Spec, String) - Constructor for class harpoon.Tools.PatMat.MaximalMunchCGG
Creates a MaximalMunchCGG.
MaxMunchCG - Class in harpoon.Backend.Generic
MaxMunchCG is a MaximalMunchCGG specific extension of CodeGen.
MaxMunchCG(Frame) - Constructor for class harpoon.Backend.Generic.MaxMunchCG
Creates a MaxMunchCG.
maxNumber() - Method in class harpoon.Backend.RuntimeTiny.CompleteClazNumbering
 
maxNumber() - Method in class harpoon.Backend.RuntimeTiny.PreOrderClazNumbering
Returns the largest number which this ClazNumbering will associate with any HClass.
MaxPriorityQueue - Interface in harpoon.Util
MaxPriorityQueue maintains a Collection of Objects, each with an associated priority.
maxRegIndex() - Method in class harpoon.Backend.Generic.RegFileInfo
Defines the upper bound on possible indexes for MachineRegLocs.
maxRegIndex() - Method in class harpoon.Backend.StrongARM.RegFileInfo
maxRegIndex returns an upper bound on the indexes that will be returned by the MachineRegLocs for this backend.
mayHaveField(PANode, HField) - Static method in class harpoon.Analysis.PA2.TypeFilter
 
mayPointTo(HField, PANode) - Static method in class harpoon.Analysis.PA2.TypeFilter
 
mayReadAt(Edge) - Method in class harpoon.Analysis.Quads.MayReadOracle
Returns the set of fields possibly-read before edge e is executed.
MayReadOracle - Class in harpoon.Analysis.Quads
A MayReadOracle tells you which fields of a given class 'may' be read on the given edge.
MayReadOracle(HCode, FieldSyncOracle, CallGraph, HClass, boolean) - Constructor for class harpoon.Analysis.Quads.MayReadOracle
Creates a MayReadOracle using the quad-ssi representation hc of some method and global information about read fields provided by fso.
MEASURE_AS - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Display the gains due to AGGRESSIVE_SHRINKING.
MEGA_DEBUG - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
crazy, isn't it?
MEGA_DEBUG2 - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
MEM - Class in harpoon.IR.Tree
MEM objects are expressions which stand for the contents of a value in memory starting at the address specified by the subexpression.
MEM(TreeFactory, HCodeElement, int, Exp) - Constructor for class harpoon.IR.Tree.MEM
Constructor.
MEM(TreeFactory, HCodeElement, int, boolean, Exp) - Constructor for class harpoon.IR.Tree.MEM
Creates a MEM with a precisely defined type.
MEM - Static variable in class harpoon.IR.Tree.TreeKind
 
MEM - Static variable in class harpoon.Tools.PatMat.Sym
 
memAccessNoTagCheck(HCodeElement) - Method in class harpoon.Backend.MIPS.Frame
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Analysis.MemOpt.PreallocAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Analysis.Realtime.RealtimeAllocationStrategy
Produces the Tree code corresponding to a memory allocation.
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.PreciseC.PGCNiftyAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.PreciseC.PGCNiftyAllocationStrategyWithStats
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.AllocationStrategy
Return a Tree.Exp created with the given TreeFactory that returns a pointer to a piece of memory length bytes long.
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.AppelAllocationStrategy
Returns a Stm object which allocates a block of memory of the specified size.
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.BDWAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.HeapStatsAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.MallocAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.NiftyAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.NullAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Backend.Runtime1.SPAllocationStrategy
 
memAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, Exp) - Method in class harpoon.Instrumentation.AllocationStatistics.InstrumentedAllocationStrategy
 
memAlloc(Exp) - Method in class harpoon.Interpret.Tree.DefaultFrame
Returns a Tree.Exp object which represents a pointer to a newly allocated block of memory, of the specified size.
memberComparator - Static variable in interface harpoon.ClassFile.HMember
 
MemHoisting - Class in harpoon.Analysis.Tree
MemHoisting ensures that the ordering of MEM operations is well-defined in the tree, by creating a temporary for and hoisting all but one MEM in any given subexpression.
MemoryOptimization - Class in harpoon.Analysis.Quads
MemoryOptimization reduces the number of memory operations by combining multiple loads/stores to the same field/array element.
MemoryOptimization(HCodeFactory, ClassHierarchy, CallGraph) - Constructor for class harpoon.Analysis.Quads.MemoryOptimization
 
memRef(TreeFactory, MEM, DerivationGenerator, Temp) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
(t&(~3)), now *t
memSizeFormat(long) - Static method in class harpoon.Util.Util
Nicely formats the memory size size, using normal units for memory size.
merge(BasicBlockInterf, BasicBlockInterf) - Method in class harpoon.Analysis.DataFlow.DataFlowBasicBlockVisitor
Merges operation on the from and to basic block.
merge(Quad, Quad) - Method in class harpoon.Analysis.DataFlow.DataFlowQuadVisitor
Merge operation on the from and to quad.
merge(BasicBlockInterf, BasicBlockInterf) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Merge (Confluence) operator.
merge(BasicBlockInterf, BasicBlockInterf) - Method in class harpoon.Analysis.Tree.TreeFolding
Merges operation on the from and to basic block.
message(String) - Static method in class harpoon.Main.CodeGenerator
 
message(String) - Static method in class harpoon.Main.SAMain
 
messageln(String) - Static method in class harpoon.Main.CodeGenerator
 
messageln(String) - Static method in class harpoon.Main.SAMain
 
MetaAllCallers - Class in harpoon.Analysis.MetaMethods
MetaAllCallers is the dual of MetaCallGraph.
MetaAllCallers(MetaCallGraph) - Constructor for class harpoon.Analysis.MetaMethods.MetaAllCallers
Creates a MetaAllCallers.
MetaCallGraph - Class in harpoon.Analysis.MetaMethods
MetaCallGraph is for meta methods what callGraph is for "normal" methods.
MetaCallGraph() - Constructor for class harpoon.Analysis.MetaMethods.MetaCallGraph
 
MetaCallGraphAbstr - Class in harpoon.Analysis.MetaMethods
MetaCallGraphAbstr Map based abstract MetaCallGraph.
MetaCallGraphAbstr() - Constructor for class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
 
MetaCallGraphImpl - Class in harpoon.Analysis.MetaMethods
MetaCallGraphImpl is a full-power implementation of the MetaCallGraph interface.
MetaCallGraphImpl(CachingCodeFactory, Linker, ClassHierarchy, Set) - Constructor for class harpoon.Analysis.MetaMethods.MetaCallGraphImpl
Creates a MetaCallGraphImpl.
MetaMethod - Class in harpoon.Analysis.MetaMethods
MetaMethod is a specialization of a method, function of the types of its arguments.
MetaMethod(HMethod, GenType[]) - Constructor for class harpoon.Analysis.MetaMethods.MetaMethod
Creates a MetaMethod corresponding to the method hm and the types from the array "types".
MetaMethod(HMethod, boolean) - Constructor for class harpoon.Analysis.MetaMethods.MetaMethod
Creates a MetaMethod corresponding to the method hm and the types declared for it.
MetaMethod(HMethod) - Constructor for class harpoon.Analysis.MetaMethods.MetaMethod
Creates a MetaMethod corresponding to the method hm and the types declared for it.
metaStuff(BMethod) - Method in class harpoon.Analysis.EventDriven.ToAsync
 
Method - Class in harpoon.Interpret.Quads
Method interprets method code in quad form.
Method() - Constructor for class harpoon.Interpret.Quads.Method
 
Method - Class in harpoon.Interpret.Tree
Method converts HMethods into tree code, and interprets them.
Method() - Constructor for class harpoon.Interpret.Tree.Method
 
method - Variable in class harpoon.IR.LowQuad.PMCONST
The HMethod to address.
method() - Method in class harpoon.IR.LowQuad.PMCONST
Returns the method whose offset is computed.
method - Variable in class harpoon.IR.LowQuad.PMOFFSET
The HMethod to address.
method() - Method in class harpoon.IR.LowQuad.PMOFFSET
Returns the method whose offset is computed.
method - Variable in class harpoon.IR.Quads.CALL
The method to invoke.
method() - Method in class harpoon.IR.Quads.CALL
Returns the method invoked by this CALL.
method() - Method in class harpoon.IR.Quads.HEADER
Returns the Quads.METHOD following this HEADER.
METHOD - Class in harpoon.IR.Quads
Quads.METHOD nodes encode method-specific information: the mapping of method formals to temporary variables, and links to the exception handlers for the method.
METHOD(QuadFactory, HCodeElement, Temp[], int) - Constructor for class harpoon.IR.Quads.METHOD
Creates a Quads.METHOD quad.
METHOD - Static variable in class harpoon.IR.Quads.QuadKind
 
METHOD - Class in harpoon.IR.Tree
Tree.METHOD objects encode method-specific information: the mapping of method formals to temporary variables, and links to the exception handlers for the method.
METHOD(TreeFactory, HCodeElement, Label, int, TEMP[]) - Constructor for class harpoon.IR.Tree.METHOD
Creates a Tree.METHOD object.
METHOD - Static variable in class harpoon.IR.Tree.TreeKind
 
METHOD - Static variable in class harpoon.Tools.PatMat.Sym
 
method2SafeParams - Static variable in class harpoon.Analysis.PA2.Mutation.WPMutationAnalysisCompStage
If the --wp-mutation-save option is used, the analysis will save here a map from each analyzed method to the indices of its safe parameters; indices start from 0, and take into account the this argument for the instance methods.
method_epilogue_stms - Variable in class harpoon.Tools.PatMat.Spec
Java code statements to be inserted in the epilogue of the code generator method body.
method_prologue_stms - Variable in class harpoon.Tools.PatMat.Spec
Java code statements to be inserted in the prologue of the code generator method body.
methodBase(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing the method base of the object referenced by the given objectref expression.
methodBase(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
methodConst(TreeFactory, HCodeElement, DerivationGenerator, HMethod) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which represents a reference to a java.lang.reflect.Method constant.
methodConst(TreeFactory, HCodeElement, DerivationGenerator, HMethod) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
methodHolesSet(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Returns the set of methods that node escapes into.
MethodInfo - Class in harpoon.IR.RawClass
Each method, and each instance initialization method <init>, is described by a variable-length method_info structure.
MethodInfo(ClassFile, AccessFlags, int, int, Attribute[]) - Constructor for class harpoon.IR.RawClass.MethodInfo
Constructor.
MethodInliningCodeFactory - Class in harpoon.Analysis.Quads
MethodInliningCodeFactory makes an HCode from an HMethod, and inlines methods at call sites registered with the inline(CALL) function.
MethodInliningCodeFactory(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.MethodInliningCodeFactory
Creates a MethodInliningCodeFactory, using parentFactory.
MethodMap - Class in harpoon.Backend.Maps
A MethodMap assigns an ordering to the methods in a class.
MethodMap() - Constructor for class harpoon.Backend.Maps.MethodMap
 
MethodMutator<HCE extends HCodeElement> - Class in harpoon.Analysis.Transformation
MethodMutator makes it easier to implement simple method code mutations.
MethodMutator(HCodeFactory) - Constructor for class harpoon.Analysis.Transformation.MethodMutator
Creates a MethodMutator.
methodOffset(TreeFactory, HCodeElement, DerivationGenerator, HMethod) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing an offset from the method base required to access the given method.
methodOffset(TreeFactory, HCodeElement, DerivationGenerator, HMethod) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
methodOrder(HMethod) - Method in class harpoon.Backend.Analysis.ClassMethodMap
 
methodOrder(HMethod) - Method in class harpoon.Backend.Analysis.InterfaceMethodMap
Returns an ordering of the given method.
methodOrder(HMethod) - Method in class harpoon.Backend.Maps.MethodMap
Return an ordering of the given method.
methods - Variable in class harpoon.IR.RawClass.ClassFile
Each value in the methods table must be a variable-length method_info structure giving a complete description of and Java Virtual Machine code for a method in the class or interface.
methods_count() - Method in class harpoon.IR.RawClass.ClassFile
 
methodsCallableFrom(HMethod) - Method in class harpoon.Backend.Analysis.JLSRuntimeInformation
 
methodsCallableFrom(HMethod) - Method in class harpoon.Backend.Generic.RuntimeInformation
Returns the set of methods called during the execution of the specified method.
methodsCallableFrom(HMethod) - Method in class harpoon.Backend.Runtime1.RuntimeInformation
 
MethodSplitter - Class in harpoon.Analysis.Transformation
MethodSplitter makes it easier to implement transformations which specialize methods for one purpose or another.
MethodSplitter(HCodeFactory, ClassHierarchy, boolean) - Constructor for class harpoon.Analysis.Transformation.MethodSplitter
Creates a MethodSplitter, based on the method representations in the parent HCodeFactory.
MethodSplitter.Token - Class in harpoon.Analysis.Transformation
Subclasses of MethodSplitter refer to "versions" of the underlying method which may be named by creating static instances of this MethodSplitter.Token class.
MethodSplitter.Token(String) - Constructor for class harpoon.Analysis.Transformation.MethodSplitter.Token
Create a token, specifying the suggested method suffix.
methodTooBig(HMethod) - Static method in class harpoon.Analysis.PA2.PAUtil
Detects certain pathological methods whose analysis takes a long time without producing something really useful.
MethodTraceFactory - Class in harpoon.Analysis.Quads
MethodTraceFactory adds DEBUG quads to the entry and exit points of every method.
MethodTraceFactory(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.MethodTraceFactory
Creates a MethodTraceFactory.
methodWithInitCheck(HMethod) - Method in class harpoon.Analysis.Quads.InitializerTransform
Return the handle for the verion of hm with "init-check" tests.
mh - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
min() - Static method in class harpoon.IR.LowQuad.LowQuadKind
 
min() - Static method in class harpoon.IR.Quads.QuadKind
 
min() - Static method in class harpoon.IR.Tree.TreeKind
 
minimum(SpillHeuristics.SpillHeuristic[]) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Finds the minimum cost heuristic in h.
minNumber() - Method in class harpoon.Backend.RuntimeTiny.CompleteClazNumbering
 
minNumber() - Method in class harpoon.Backend.RuntimeTiny.PreOrderClazNumbering
Returns the smallest number which this ClazNumbering will associate with any HClass.
minor_version - Variable in class harpoon.IR.RawClass.ClassFile
The minor version number of the compiler that produced this class file.
MINUS - Static variable in class harpoon.Tools.Annotation.Sym
 
minusCheck(Quad, Temp, QuadWithTry, UseDef) - Static method in class harpoon.IR.Quads.Pattern
 
MINUSEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
MINUSMINUS - Static variable in class harpoon.Tools.Annotation.Sym
 
minusWidthMap(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine the negative bit width of Temp t.
minusWidthMap(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the negative bit width of Temp t.
minusWidthMap(HField) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the negative bit width of HField hf.
MIPS - Static variable in class harpoon.Backend.Backend
MIPS backend
MIPSDA - Static variable in class harpoon.Backend.Backend
MIPS with support for direct address registers
MIPSOptimizations - Class in harpoon.Main
MIPSOptimizations
MIPSOptimizations() - Constructor for class harpoon.Main.MIPSOptimizations
 
MIPSOptimizations.QuadPass - Class in harpoon.Main
 
MIPSOptimizations.QuadPass() - Constructor for class harpoon.Main.MIPSOptimizations.QuadPass
 
MIPSOptimizations.TreePass - Class in harpoon.Main
 
MIPSOptimizations.TreePass() - Constructor for class harpoon.Main.MIPSOptimizations.TreePass
 
MIPSYP - Static variable in class harpoon.Backend.Backend
MIPS with support for last line accesses is tag unchecked
MLabel - Class in harpoon.Analysis.PA2.Mutation
MLabel - labels for the mutation NFA.
MLabel() - Constructor for class harpoon.Analysis.PA2.Mutation.MLabel
 
MLabel.Field - Class in harpoon.Analysis.PA2.Mutation
 
MLabel.Param - Class in harpoon.Analysis.PA2.Mutation
 
MLabel.Reach - Class in harpoon.Analysis.PA2.Mutation
 
MLabel.Reach() - Constructor for class harpoon.Analysis.PA2.Mutation.MLabel.Reach
 
MLabel.ReachFromStat - Class in harpoon.Analysis.PA2.Mutation
 
MLabel.ReachFromStat() - Constructor for class harpoon.Analysis.PA2.Mutation.MLabel.ReachFromStat
 
MOD - Static variable in class harpoon.Tools.Annotation.Sym
 
modCount - Variable in class harpoon.IR.Tree.Data
Keep track of modifications to this Data so that the getElementsI() Iterator can fail-fast.
MODEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
modulus - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
MONITOR - Static variable in class harpoon.Analysis.GraphColoring.OptimisticGraphColorer
 
Monitor - Class in harpoon.RunTime
 
monitorEnter(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which acquires the monitor lock of the object specified by the given expression.
monitorEnter(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
monitorEnter(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime2.TreeBuilder
 
MONITORENTER - Static variable in class harpoon.IR.Bytecode.Op
 
MONITORENTER - Class in harpoon.IR.Quads
MONITORENTER acquires the monitor lock of a particular object.
MONITORENTER(QuadFactory, HCodeElement, Temp) - Constructor for class harpoon.IR.Quads.MONITORENTER
Creates a MONITORENTER.
MONITORENTER - Static variable in class harpoon.IR.Quads.QuadKind
 
monitorExit(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which releases the monitor lock of the object specified by the given expression.
monitorExit(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
monitorExit(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime2.TreeBuilder
 
MONITOREXIT - Static variable in class harpoon.IR.Bytecode.Op
 
MONITOREXIT - Class in harpoon.IR.Quads
MONITOREXIT releases the monitor lock of a particular object.
MONITOREXIT(QuadFactory, HCodeElement, Temp) - Constructor for class harpoon.IR.Quads.MONITOREXIT
Creates a MONITOREXIT.
MONITOREXIT - Static variable in class harpoon.IR.Quads.QuadKind
 
MONO - Static variable in class harpoon.Analysis.MetaMethods.GenType
Monomorphic type.
MORE_INFO - Static variable in class harpoon.Main.Javap
Print stack size, number of locals, and number of method args.
morePrecise(AnalysisPolicy) - Method in class harpoon.Analysis.PA2.AnalysisPolicy
Checks whether this analysis policy is more precise than ap2, i.e., that each of the three precision parameters are better.
MostlyZeroFinder - Class in harpoon.Analysis.SizeOpt
The MostlyZeroFinder will add counters to find fields which are mostly zero (or mostly 1, 2, etc).
MostlyZeroFinder(HCodeFactory, ClassHierarchy, Frame) - Constructor for class harpoon.Analysis.SizeOpt.MostlyZeroFinder
Creates a MostlyZeroFinder using the given code factory, class hierarchy, and frame.
move(HMember, HClass) - Method in class harpoon.ClassFile.Relinker
Move HMember hm from its declaring class to some other class, newDestination.
MOVE - Class in harpoon.IR.Quads
MOVE objects represent an assignment to a compiler temporary.
MOVE(QuadFactory, HCodeElement, Temp, Temp) - Constructor for class harpoon.IR.Quads.MOVE
Creates a MOVE from a source and destination Temp.
MOVE - Static variable in class harpoon.IR.Quads.QuadKind
 
MOVE - Class in harpoon.IR.Tree
MOVE statements assign a value to a location.
MOVE(TreeFactory, HCodeElement, Exp, Exp) - Constructor for class harpoon.IR.Tree.MOVE
Constructor.
MOVE - Static variable in class harpoon.IR.Tree.TreeKind
 
MOVE - Static variable in class harpoon.Tools.PatMat.Sym
 
MoveList - Class in harpoon.Backend.CSAHack.RegAlloc
 
MoveList(Node, Node, MoveList) - Constructor for class harpoon.Backend.CSAHack.RegAlloc.MoveList
 
moveRelated(AppelRegAllocClasses.Node) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
moves() - Method in interface harpoon.Analysis.InterferenceGraph
 
moves() - Method in class harpoon.Analysis.Quads.QuadInterferenceGraph
unimplemented.
moves() - Method in class harpoon.Backend.CSAHack.RegAlloc.InterferenceGraph
 
moves() - Method in class harpoon.Backend.CSAHack.RegAlloc.Liveness
 
MRA - Class in harpoon.Analysis.PreciseGC
MRA is answers the question "which Temps contain the address of the most recently allocated object at this program point?"
MRA() - Constructor for class harpoon.Analysis.PreciseGC.MRA
 
mra(Code) - Method in class harpoon.Analysis.PreciseGC.MRAFactory
Returns an MRA.
MRA.MRAToken - Class in harpoon.Analysis.PreciseGC
The MRAToken class represents the nodes on the lattice for the MRA analysis.
mra_before(Quad) - Method in class harpoon.Analysis.PreciseGC.MRA
Returns a Tuple.
MRAFactory - Class in harpoon.Analysis.PreciseGC
MRAFactory generates MRAs.
MRAFactory(ClassHierarchy, HCodeFactory, Linker, String, int) - Constructor for class harpoon.Analysis.PreciseGC.MRAFactory
Creates an MRAFactory.
mrl - Variable in class harpoon.Backend.Generic.GCInfo.WrappedMachineRegLoc
 
MUL - Static variable in class harpoon.IR.Tree.Bop
Multiplication.
MUL - Static variable in class harpoon.Tools.PatMat.Sym
 
mul2shift(Exp, CONST) - Static method in class harpoon.Analysis.Tree.AlgebraicSimplification
Converts an arbitrary multiplication by a positive constant into a series of shifts, additions, and multiplies.
MULT - Static variable in class harpoon.Tools.Annotation.Sym
 
MULTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
MULTI_CIRCLE - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
MULTIANEWARRAY - Static variable in class harpoon.IR.Bytecode.Op
 
MULTIANEWARRAY_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
MultiMapUtils - Class in harpoon.Analysis.MemOpt
 
MultiMapUtils() - Constructor for class harpoon.Analysis.MemOpt.MultiMapUtils
 
multiply(int) - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
multiply(boolean) - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
multiply() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
multiply(int) - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
multiply(Temp) - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
MustParamOracle - Class in harpoon.Analysis.Quads
A MustParamOracle tells you what method variables *must* contain the values passed in as parameters to the method.
MustParamOracle(HCode) - Constructor for class harpoon.Analysis.Quads.MustParamOracle
Creates a MustParamOracle which gives you information on variables in HCode hc (which should be in SSI or SSA form, for best results).
MutableGraph<N extends Graph.Node<N,E>,E extends Graph.Edge<N,E>> - Interface in harpoon.Util.Collections
A MutableGraph is a a Graph which can be modified.
mutateCodeName(String) - Method in class harpoon.Analysis.Quads.CoalescingToNoSSA
 
mutateCodeName(String) - Method in class harpoon.Analysis.Quads.DispatchTreeTransformation
 
mutateCodeName(String) - Method in class harpoon.Analysis.Quads.MemoryOptimization
 
mutateCodeName(String) - Method in class harpoon.Analysis.Transactions.SyncTransformer
 
mutateCodeName(String) - Method in class harpoon.Analysis.Transformation.MethodMutator
Override this method to change the codename which this MethodMutator's codefactory reports.
mutateCodeName(String) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Override this method to change the codename which this MethodMutator's codefactory reports.
mutated - Variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Contains mutated fields.
mutateDescriptor(HMethod, MethodSplitter.Token) - Method in class harpoon.Analysis.PreciseGC.AllocationHoisting
Adds parameter to descriptors of mutated methods.
mutateDescriptor(HMethod, MethodSplitter.Token) - Method in class harpoon.Analysis.PreciseGC.RCTransformer
Mutated constructors have signatures differing from the original.
mutateDescriptor(HMethod, MethodSplitter.Token) - Method in class harpoon.Analysis.Transactions.SyncTransformer
 
mutateDescriptor(HMethod, MethodSplitter.Token) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Override this method if you want to create mutated methods with descriptors differing from that of the original method.
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Counters.RuntimeMethodCloner
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.DynamicSyncRemoval.SyncRemover
 
mutateHCode(HCodeAndMaps, MethodSplitter.Token) - Method in class harpoon.Analysis.PreciseGC.AllocationHoisting
Hoists allocation out of the split method.
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.PreciseGC.DynamicWBInserter
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.PreciseGC.DynamicWBQuadPass
 
mutateHCode(HCodeAndMaps, MethodSplitter.Token) - Method in class harpoon.Analysis.PreciseGC.RCTransformer
Modifies two classes of methods: - mutates recursive constructors into "creators", methods that build objects in a bottom-up fashion - modifies callers of these constructors to call the new creator methods
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierInserter
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierPrePass
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierQuadPass
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Quads.ArrayInitRemover
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.ArrayUnroller
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Quads.CoalescingToNoSSA
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.ComponentOfReducer
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Quads.DispatchTreeTransformation
 
mutateHCode(HCodeAndMaps, MethodSplitter.Token) - Method in class harpoon.Analysis.Quads.InitializerTransform
Mutate a given HCode to produce the version specified by which.
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.MemoryOptimization
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.MethodTraceFactory
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Quads.NewMover
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.Nonvirtualize
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.TypeSwitchRemover
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Quads.Virtualize
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Realtime.ClassReplacer
Make the actual changes to the HCode.
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Realtime.QuantaChecker
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.RoleInference.RoleInference
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.SizeOpt.FieldReducer
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.SizeOpt.MostlyZeroFinder
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.SizeOpt.SizeCounters
 
mutateHCode(HCodeAndMaps<Quad>) - Method in class harpoon.Analysis.Transactions.AltArrayTransformer
 
mutateHCode(HCodeAndMaps, MethodSplitter.Token) - Method in class harpoon.Analysis.Transactions.SyncTransformer
 
mutateHCode(HCodeAndMaps<HCE>) - Method in class harpoon.Analysis.Transformation.MethodMutator
Override this method to effect transformations on split methods.
mutateHCode(HCodeAndMaps, MethodSplitter.Token) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Override this method to effect transformations on split methods.
mutateHCode(HCodeAndMaps) - Method in class harpoon.Analysis.Tree.ConstantPropagation
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Instrumentation.AllocationStatistics.InstrumentAllocs
 
mutateHCode(HCodeAndMaps) - Method in class harpoon.Instrumentation.AllocationStatistics.InstrumentAllocs2
 
MutationAnalysis - Class in harpoon.Analysis.PA2.Mutation
MutationAnalysis
MutationAnalysis(PointerAnalysis) - Constructor for class harpoon.Analysis.PA2.Mutation.MutationAnalysis
Creates a MutationAnalysis query object.
MutationNFA - Class in harpoon.Analysis.PA2.Mutation
MutationNFA
MutationNFA(HMethod, InterProcAnalysisResult, PointerAnalysis) - Constructor for class harpoon.Analysis.PA2.Mutation.MutationNFA
 
mutuallySingular(HMethod, Collection<StaticValue<Quad>>) - Method in class harpoon.Analysis.Companions.SingularFinder
 
mutuallySingular(HMethod, Collection<StaticValue<HCE>>) - Method in interface harpoon.Analysis.Companions.SingularOracle
Returns a set of parameters the given static values are conditionally singular dependent on, or null if there is no such set (the values are not mutually singular).
MyAP - Class in harpoon.Analysis.PointerAnalysis
MyAP is my own implementation for the AllocationProperties.
MyAP(HClass) - Constructor for class harpoon.Analysis.PointerAnalysis.MyAP
Creates a MyAP.
MyGraphColorer - Class in harpoon.Analysis.MemOpt
 
MyGraphColorer() - Constructor for class harpoon.Analysis.MemOpt.MyGraphColorer
 
MyLowQuadNoSSA - Class in harpoon.Analysis.LowQuad.Loop
MyLowQuadNoSSA
MyLowQuadSSI - Class in harpoon.Analysis.LowQuad.Loop
MyLowQuadSSI
myPrint(PrintWriter, boolean) - Method in class harpoon.IR.Assem.Code
Simple wrapper around myPrint passing a nop PrintCallback.
myPrint(PrintWriter, boolean, boolean, HCode.PrintCallback<Instr>) - Method in class harpoon.IR.Assem.Code
Deprecated. Use Code#myPrint(PrintWriter,boolean,PrintCallback)
myPrint(PrintWriter, boolean, HCode.PrintCallback<Instr>) - Method in class harpoon.IR.Assem.Code
Displays the assembly instructions of this codeview.
mySetFactory - Variable in class harpoon.Analysis.DataFlow.LiveTemps
 
MZFCompilerStage - Class in harpoon.Main
MZFCompilerStage
MZFCompilerStage() - Constructor for class harpoon.Main.MZFCompilerStage
Creates a MZFCompilerStage.
MZFCompressor - Class in harpoon.Analysis.SizeOpt
The MZFCompressor class implements a class transformation aimed at eliminating "mostly-zero" (or "mostly (any constant)") fields from classes (thus reducing memory consumption).
MZFCompressor(Frame, HCodeFactory, ClassHierarchy, String) - Constructor for class harpoon.Analysis.SizeOpt.MZFCompressor
Creates a MZFCompressor, using the field profiling information found in the resource at resourcePath.
MZFExternalMap - Class in harpoon.Runtime
The MZFExternalMap defines the interface which the MZFExternalize code factory (part of MZFCompressor) uses to interface to an external hashmap.
MZFExternalMap() - Constructor for class harpoon.Runtime.MZFExternalMap
 

N

n - Variable in class harpoon.Analysis.PointerAnalysis.PASync
The node on which the sync is performed on.
name - Variable in class gnu.getopt.LongOpt
The name of the long option
name - Variable in class harpoon.Analysis.PA2.Mutation.MLabel.Param
 
name - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.NameDefPoint
 
name() - Method in class harpoon.IR.RawClass.ConstantClass
 
name() - Method in class harpoon.IR.RawClass.ConstantNameAndType
 
name() - Method in class harpoon.IR.RawClass.FieldInfo
 
name() - Method in class harpoon.IR.RawClass.LocalVariableTable
 
name() - Method in class harpoon.IR.RawClass.MethodInfo
 
NAME - Class in harpoon.IR.Tree
NAME objects are expressions which stand for symbolic constants.
NAME(TreeFactory, HCodeElement, Label) - Constructor for class harpoon.IR.Tree.NAME
Constructor.
NAME - Static variable in class harpoon.IR.Tree.TreeKind
 
name() - Method in class harpoon.Main.CompilerStage
 
name - Variable in class harpoon.Temp.Label
 
name() - Method in class harpoon.Temp.Temp
Returns the common name of this Temp; scope information not included.
name - Variable in class harpoon.Tools.PatMat.Spec.DetailWeight
Describes what metric value is measuring.
name - Variable in class harpoon.Tools.PatMat.Spec.ExpName
Name for this.
name - Variable in class harpoon.Tools.PatMat.Spec.ExpTemp
Identifier for this.
name - Variable in class harpoon.Tools.PatMat.Spec.StmLabel
Label.
NAME - Static variable in class harpoon.Tools.PatMat.Sym
 
name_and_type_index - Variable in class harpoon.IR.RawClass.ConstantFieldref
The value of the name_and_type_index item must be a valid index into the constant_pool table of the parent.
name_and_type_index() - Method in class harpoon.IR.RawClass.ConstantFieldref
 
name_and_type_index - Variable in class harpoon.IR.RawClass.ConstantInterfaceMethodref
The value of the name_and_type_index item must be a valid index into the constant_pool table of the parent.
name_and_type_index() - Method in class harpoon.IR.RawClass.ConstantInterfaceMethodref
 
name_and_type_index - Variable in class harpoon.IR.RawClass.ConstantMethodref
The value of the name_and_type_index item must be a valid index into the constant_pool table of the parent.
name_and_type_index() - Method in class harpoon.IR.RawClass.ConstantMethodref
 
name_index - Variable in class harpoon.IR.RawClass.ConstantClass
The value of the name_index item must be a valid index into the constant_pool table of parent.
name_index() - Method in class harpoon.IR.RawClass.ConstantClass
 
name_index - Variable in class harpoon.IR.RawClass.ConstantNameAndType
The value of the name_index must be a valid index into the constant_pool table.
name_index() - Method in class harpoon.IR.RawClass.ConstantNameAndType
 
name_index - Variable in class harpoon.IR.RawClass.FieldInfo
The value of the name_index item must be a valid index into the constant_pool table.
name_index() - Method in class harpoon.IR.RawClass.FieldInfo
 
name_index - Variable in class harpoon.IR.RawClass.LocalVariableTable
The value of the name_index item must be a valid index into the constant_pool table.
name_index() - Method in class harpoon.IR.RawClass.LocalVariableTable
 
name_index - Variable in class harpoon.IR.RawClass.MethodInfo
The value of the name_index item must be a valid index into the constant_pool table.
name_index() - Method in class harpoon.IR.RawClass.MethodInfo
 
NameMap - Class in harpoon.Backend.Maps
NameMap gives a translation from methods, classes, and fields to unique string labels legal in assembly code.
NameMap() - Constructor for class harpoon.Backend.Maps.NameMap
 
NATIVE - Static variable in class harpoon.Tools.Annotation.Sym
 
nativeCall(TreeFactory, Exp, DerivationGenerator, Temp, String, String) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
func_name(t)
NATIVECALL - Class in harpoon.IR.Tree
NATIVECALL objects are statements which stand for function calls using standard C calling convention.
NATIVECALL(TreeFactory, HCodeElement, TEMP, Exp, ExpList) - Constructor for class harpoon.IR.Tree.NATIVECALL
Constructor.
NATIVECALL - Static variable in class harpoon.IR.Tree.TreeKind
 
NATIVECALL - Static variable in class harpoon.Tools.PatMat.Sym
 
nativeTreeCodeFactory(HCodeFactory) - Method in class harpoon.Backend.Generic.Runtime
This code factory hook allows the runtime to return runtime-specific stubs for native methods --- or any other method which the runtime wishes to reimplement.
nativeTreeCodeFactory(HCodeFactory) - Method in class harpoon.Backend.Runtime1.Runtime
 
nativeTreeCodeFactory(HCodeFactory) - Method in class harpoon.Backend.RuntimeTiny.Runtime
 
navigator - Variable in class harpoon.Analysis.CallGraph
cached bi-directional navigator
navigator - Variable in class harpoon.Analysis.MetaMethods.MetaCallGraph
 
nbParams() - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Returns the number of parameters of this metamethod.
needs_tag_check(MEM) - Method in class harpoon.Analysis.Tree.CacheEquivalence
Returns 'true' if this operation requires a tag check.
needsRepair() - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
NEG - Static variable in class harpoon.IR.Tree.Uop
Negation (-).
NEG - Static variable in class harpoon.Tools.PatMat.Sym
 
negate() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
negate() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
neighborsOf(Object) - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
neighborsOf(Object) - Method in interface harpoon.Analysis.GraphColoring.Graph
Returns a collection view for the neighbors of a specific node.
neighborsOf(Object) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Returns a collection view for the neighbors of a specific node.
NEQ - Static variable in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
!
nestedLoops() - Method in class harpoon.Analysis.Loops.LoopFinder
Returns a Set of loops that are nested inside of this loop.
nestedLoops() - Method in interface harpoon.Analysis.Loops.Loops
Returns a Set containing Loops that are nested.
NEW - Static variable in class harpoon.IR.Bytecode.Op
 
NEW - Class in harpoon.IR.Quads
NEW represents an object creation operation.
NEW(QuadFactory, HCodeElement, Temp, HClass) - Constructor for class harpoon.IR.Quads.NEW
Creates a NEW object.
NEW - Static variable in class harpoon.IR.Quads.QuadKind
 
NEW - Static variable in class harpoon.Tools.Annotation.Sym
 
NEW_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
NEWARRAY - Static variable in class harpoon.IR.Bytecode.Op
 
newArray(int) - Method in interface harpoon.Util.ArrayFactory
Create and return a new array of the specified length.
newColor() - Method in class harpoon.Analysis.GraphColoring.ColorFactory
Color generator that subclasses must implement.
newcount - Static variable in class harpoon.Analysis.Quads.CollectSyncStats
 
newEdge(Instr, Instr) - Method in class harpoon.IR.Bytecode.Instr
 
NewMover - Class in harpoon.Analysis.Quads
The NewMover class moves NEW operations as close as possible to the CALL to their initializers.
NewMover(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.NewMover
Creates a NewMover that uses the given HCodeFactory hcf.
newNode() - Method in class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
Create a new node in the flow graph that does not correspond to an instruction.
newNode(Instr) - Method in class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
Create a new node in the flow graph corresponding to the instruction passed as parameter.
newNode() - Method in class harpoon.Backend.CSAHack.Graph.Graph
 
newNode(Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.Liveness
 
newQF(HMethod) - Method in class harpoon.IR.LowQuad.Code
Make the quad factory.
newQF(HMethod) - Method in class harpoon.IR.Quads.Code
Create a proper QuadFactory.
newTempMap() - Method in class harpoon.IR.Quads.RSSxToNoSSA
 
newTransaction(CommitRecord) - Static method in class harpoon.Runtime.Transactions.CommitRecord
Constructor method.
next() - Method in class harpoon.Analysis.BasicBlock
Deprecated. Use nextSet() instead
next() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
next() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
next() - Method in class harpoon.Analysis.EdgesIterator
Returns an CFGraphable if one remains.
next - Variable in class harpoon.Analysis.Maps.Derivation.DList
Pointer to a continuation of the derivation, or null if there are no more base pointers associated with this derived pointer.
next - Variable in class harpoon.Analysis.PointerAnalysis.ListCell
 
next - Variable in class harpoon.IR.Assem.Instr
The next Instr to output after this.
next() - Method in class harpoon.IR.Bytecode.Instr
Return a list of all the possible Instrs that may succeed this one.
next(int) - Method in class harpoon.IR.Bytecode.Instr
Return the specified successor of this Instr.
next(int) - Method in class harpoon.IR.Quads.Quad
Returns the ith successor of this quad.
next() - Method in class harpoon.IR.Quads.Quad
Returns an array containing all the successors of this quad, in order.
next() - Method in class harpoon.Util.ArrayIterator
 
next() - Method in class harpoon.Util.CloneableIterator
 
next() - Method in class harpoon.Util.EnumerationIterator
 
next_bb - Variable in class harpoon.Analysis.FCFGBasicBlock
Next BBs (according to the normal control flow).
nextchar - Variable in class gnu.getopt.Getopt
The next char to be scanned in the option-element in which the last option character we returned was found.
nextEdge() - Method in class harpoon.IR.Quads.Quad
Returns an array containing all the outgoing edges from this quad.
nextEdge(int) - Method in class harpoon.IR.Quads.Quad
Returns the ith outgoing edge for this quad.
nextElement() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
nextIndex() - Method in class harpoon.Util.ArrayIterator
 
nextIndex() - Method in class harpoon.Util.CloneableIterator
 
nextLength() - Method in class harpoon.Analysis.BasicBlock
Deprecated. Use nextSet() instead
nextLength() - Method in class harpoon.IR.Quads.Quad
Return the number of successors of this quad.
nextSet() - Method in class harpoon.Analysis.BasicBlock
Returns all the successors of this.
nextSet() - Method in interface harpoon.Analysis.BasicBlockInterf
Returns all the successors of the basic block, according to the normal and the exceptional control flow.
nextSet() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns all the successors of the basic block, according to the normal and the exceptional control flow.
nextToken() - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
nextToken() - Method in interface harpoon.Tools.Annotation.Lexer
 
nextUse - Variable in class harpoon.IR.Quads.TempChain
 
NiftyAllocationStrategy - Class in harpoon.Backend.Runtime1
NiftyAllocationStrategy implements stack- and thread-clustered-allocation strategies.
NiftyAllocationStrategy(Frame) - Constructor for class harpoon.Backend.Runtime1.NiftyAllocationStrategy
Creates a NiftyAllocationStrategy.
NO_ARGUMENT - Static variable in class gnu.getopt.LongOpt
Constant value used for the "has_arg" constructor argument.
NO_REORDER - Static variable in class harpoon.IR.Assem.InstrGroup
groups code such as local labels (1f/1:).
NO_SPILL - Static variable in class harpoon.IR.Assem.InstrGroup
groups code where we cannot insert spill code (such as aggregates where spill code would destroy effect of virtual DUMMY instructions added in).
NO_TG - Static variable in class harpoon.Analysis.PointerAnalysis.MAInfo
Forces the allocation of ALL the threads on the stack.
NoAnalysisResultException - Exception in harpoon.Analysis.PA2.Mutation
NoAnalysisResultException
NoAnalysisResultException() - Constructor for exception harpoon.Analysis.PA2.Mutation.NoAnalysisResultException
 
node - Variable in exception harpoon.Analysis.GraphColoring.ColorableGraph.AlreadyColoredException
The node that was targetted for coloring.
node - Variable in class harpoon.Analysis.GraphColoring.ColorableGraph.IllegalColor
Node intended to be assigned to color.
Node - Class in harpoon.Analysis.GraphColoring
Node is an abstract representation of a node for use with the Graph object.
Node() - Constructor for class harpoon.Analysis.GraphColoring.Node
Creates a Node.
node() - Method in class harpoon.Analysis.PA2.Mutation.ParamInfo
 
Node - Class in harpoon.Backend.CSAHack.Graph
 
Node(Graph) - Constructor for class harpoon.Backend.CSAHack.Graph.Node
 
node2Code(PANode) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Returns the instruction that created node.
NodeAlreadyColoredException - Exception in harpoon.Analysis.GraphColoring
NodeAlreadyColoredException
NodeAlreadyColoredException() - Constructor for exception harpoon.Analysis.GraphColoring.NodeAlreadyColoredException
Creates a NodeAlreadyColoredException.
NodeAlreadyColoredException(String) - Constructor for exception harpoon.Analysis.GraphColoring.NodeAlreadyColoredException
Creates a NodeAlreadyColoredException.
nodeHolesSet(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Returns the set of all the node "holes" node escapes through.
NodeList - Class in harpoon.Backend.CSAHack.Graph
 
NodeList(Node, NodeList) - Constructor for class harpoon.Backend.CSAHack.Graph.NodeList
 
NodeNotColoredException - Exception in harpoon.Analysis.GraphColoring
NodeNotColoredException
NodeNotColoredException() - Constructor for exception harpoon.Analysis.GraphColoring.NodeNotColoredException
Creates a NodeNotColoredException.
NodeNotColoredException(String) - Constructor for exception harpoon.Analysis.GraphColoring.NodeNotColoredException
Creates a NodeNotColoredException.
NodeNotPresentInGraphException - Exception in harpoon.Analysis.GraphColoring
NodeNotPresentInGraphException
NodeNotPresentInGraphException() - Constructor for exception harpoon.Analysis.GraphColoring.NodeNotPresentInGraphException
Creates a NodeNotPresentInGraphException.
NodeNotPresentInGraphException(String) - Constructor for exception harpoon.Analysis.GraphColoring.NodeNotPresentInGraphException
Creates a NodeNotPresentInGraphException.
NodeNotRemovedException - Exception in harpoon.Analysis.GraphColoring
NodeNotRemovedException
NodeNotRemovedException() - Constructor for exception harpoon.Analysis.GraphColoring.NodeNotRemovedException
Creates a NodeNotRemovedException.
NodeNotRemovedException(String) - Constructor for exception harpoon.Analysis.GraphColoring.NodeNotRemovedException
Creates a NodeNotRemovedException.
NodeRepository - Class in harpoon.Analysis.PA2
NodeRepository
NodeRepository(Linker) - Constructor for class harpoon.Analysis.PA2.NodeRepository
 
NodeRepository - Class in harpoon.Analysis.PointerAnalysis
NodeRepository
NodeRepository(Linker) - Constructor for class harpoon.Analysis.PointerAnalysis.NodeRepository
Creates a NodeRepository.
NodeRepository.INode - Class in harpoon.Analysis.PA2
 
NodeRepository.INode(Quad, HClass) - Constructor for class harpoon.Analysis.PA2.NodeRepository.INode
 
NodeRepository.INode(Quad, GenType) - Constructor for class harpoon.Analysis.PA2.NodeRepository.INode
 
nodes() - Method in class harpoon.Analysis.SESE.Region
Nodes in this region (and not contained in any child regions)
nodes() - Method in class harpoon.Backend.CSAHack.Graph.Graph
 
nodes() - Method in class harpoon.IR.Assem.Code
 
nodes() - Method in class harpoon.IR.Bytecode.Code
 
nodes() - Method in class harpoon.IR.Quads.Code
 
nodes() - Method in class harpoon.Util.Collections.AbstractGraph
 
nodes() - Method in interface harpoon.Util.Collections.Graph
Return the set of nodes comprising this Graph.
nodeSet() - Method in class harpoon.Analysis.GraphColoring.AbstractGraph
 
nodeSet() - Method in interface harpoon.Analysis.GraphColoring.Graph
Returns a set view of the nodes in this.
nodeSet() - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Returns a set view of the nodes in this.
nodeSetFactory - Static variable in class harpoon.Analysis.PA2.DSFactories
Factory used to generate all set of nodes (returned/thrown nodes, escaped nodes etc.)
NodeSetVar - Class in harpoon.Analysis.PA2
NodeSetVar
NodeSetVar() - Constructor for class harpoon.Analysis.PA2.NodeSetVar
 
nodesFor(AppelRegAllocClasses.Web) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Returns a List of Node mapped to by w.
nodesFor(AppelRegAllocClasses.Web) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
nodesFor(AppelRegAllocClasses.Web) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
nodesIter(Iterator) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
NoFactorySetException - Exception in harpoon.Analysis.GraphColoring
NoFactorySetException
NoFactorySetException() - Constructor for exception harpoon.Analysis.GraphColoring.NoFactorySetException
Creates a NoFactorySetException.
NoFactorySetException(String) - Constructor for exception harpoon.Analysis.GraphColoring.NoFactorySetException
Creates a NoFactorySetException.
NOHEAP_CHECKS - Static variable in class harpoon.Analysis.Realtime.Realtime
Add checks to determine if a NoHeapRealtimeThread is touching the heap.
NOHEAP_MASK - Static variable in class harpoon.Analysis.Realtime.Realtime
Add masking support, but no checks
NoHeapCheckRemoval - Interface in harpoon.Analysis.Realtime
NoHeapCheckRemoval is an interface that all classes that analyze harpoon.IR.Quads.SET, harpoon.IR.Quads.ASET harpoon.IR.Quads.GET, harpoon.IR.Quads.AGET for possible removal of checks for heap access in a NoHeapRealtimeThread should implement.
Nonvirtualize - Class in harpoon.Analysis.Quads
Nonvirtualize uses a FinalMap to change virtual method invocations to non-virtual invocations, where this is safe.
Nonvirtualize(HCodeFactory, FinalMap) - Constructor for class harpoon.Analysis.Quads.Nonvirtualize
Creates a Nonvirtualize using the given FinalMap.
Nonvirtualize(HCodeFactory, FinalMap, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.Nonvirtualize
Creates a Nonvirtualize using the given FinalMap; the given ClassHierarchy is used to avoid devirtualizing calls to uncallable methods (which artificially inflates the class hierarchy size).
NOP - Static variable in class harpoon.IR.Bytecode.Op
 
NOP - Class in harpoon.IR.Quads
NOP nodes do nothing.
NOP(QuadFactory, HCodeElement) - Constructor for class harpoon.IR.Quads.NOP
Creates a NOP.
NOP - Static variable in class harpoon.IR.Quads.QuadKind
 
norepeats() - Static method in class harpoon.IR.Tree.TreeVerifyingVisitor
 
normalNextSet() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns the set of predecessor BBs in the normal control flow.
normalPrevSet() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns the set of successor BBs in the normal control flow.
NoSuchClassException - Exception in harpoon.ClassFile
NoSuchClassException is thrown to indicate an attempt to remove a class from a list which does not contain it, or a failed attempt to look up a class by name or descriptor.
NoSuchClassException(String) - Constructor for exception harpoon.ClassFile.NoSuchClassException
Creates a NoSuchClassException with the supplied detail message.
NoSuchMemberException - Exception in harpoon.ClassFile
NoSuchMemberException is thrown to indicate an attempt to remove a member from a class which does not contain it.
NoSuchMemberException(String) - Constructor for exception harpoon.ClassFile.NoSuchMemberException
Creates a NoSuchMemberException with the supplied detail message.
noSync() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
noSync() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
noSync() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
noSync() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
NOT - Static variable in class harpoon.IR.Tree.Uop
Bit-wise NOT (~).
NOT - Static variable in class harpoon.Tools.Annotation.Sym
 
NOT - Static variable in class harpoon.Tools.PatMat.Sym
 
NOT_A_VALUE - Static variable in class harpoon.Backend.Runtime1.ObjectBuilder.RootOracle
This is the constant value returned which this oracle doesn't wish to override the given field.
NOTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
notifyAnalyzedCALL(CALL, HMethod) - Method in class harpoon.Analysis.PA2.PointerAnalysis
 
notifyReplace(Quad, Quad, TempMap) - Method in class harpoon.IR.Quads.Code
Subclasses of Code that want to be notified when some optimization replace one of their quads with some other quad can override this method.
notifyReplace(Quad, Quad, TempMap) - Method in class harpoon.IR.Quads.QuadSSI
Update the QuadNoSSA to QuadSSI mappings when the SSI quad oldquad is replaced of this is replaced with the new SSI quad newquad.
ns - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
nt - Variable in class harpoon.Analysis.PointerAnalysis.PASync
The thread which performs the sync.
NULL - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: null pointers.
NULL - Static variable in class harpoon.Tools.PatMat.Sym
 
NULL_LITERAL - Static variable in class harpoon.Tools.Annotation.Sym
 
NULL_NODE - Static variable in class harpoon.Analysis.PointerAnalysis.NodeRepository
 
NullAllocationStrategy - Class in harpoon.Backend.Runtime1
NullAllocationStrategy just returns a null pointer when asked for memory.
NullAllocationStrategy() - Constructor for class harpoon.Backend.Runtime1.NullAllocationStrategy
Creates a NullAllocationStrategy.
nullCheck(Quad, Temp, QuadWithTry, UseDef) - Static method in class harpoon.IR.Quads.Pattern
 
num() - Method in class harpoon.Analysis.Tree.DominatingMemoryAccess.daNum
 
num(Object) - Static method in class harpoon.Analysis.Tree.DominatingMemoryAccess
Returns the direct address register used by the MEM operation that returned this specifier (from harpoon.Backend.MIPS.Frame.daNum).
num_using_this_tag(MEM) - Method in class harpoon.Analysis.Tree.CacheEquivalence
Returns the number of memory operations which share the same tag as this memory operation. 1 indicates no sharing possible.
number - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
number - Variable in class harpoon.Tools.PatMat.Spec.LeafNumber
Number.
number_of_classes() - Method in class harpoon.IR.RawClass.AttributeInnerClasses
 
number_of_exceptions() - Method in class harpoon.IR.RawClass.AttributeExceptions
 
numberArgs() - Method in class harpoon.Util.Options.Option
 
numberOfLocals() - Method in interface harpoon.Analysis.Instr.RegAlloc.IntermediateCode
 
numberOptionalArgs() - Method in class harpoon.Util.Options.Option
 
numErrors() - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
numErrors() - Method in interface harpoon.Tools.Annotation.Lexer
return the number of errors reported
numPhis() - Method in class harpoon.IR.Quads.PHI
Returns the number of phi functions in the block.
numSigmas() - Method in class harpoon.IR.Quads.SIGMA
Returns the number of sigma functions in the block.

O

O - Variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
The set of the outside edges.
ob - Variable in class harpoon.Backend.Runtime1.Runtime
 
OBJ_ALENGTH_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
OBJ_AZERO_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
OBJ_CLAZ_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
OBJ_FZERO_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
OBJ_HASH_OFF - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
objAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
objAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, Exp) - Method in class harpoon.Backend.Runtime2.TreeBuilder
 
objAlloc(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, Exp) - Method in class harpoon.Backend.RuntimeTiny.TreeBuilder
 
OBJECT_HEADER_SIZE - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
ObjectBuilder - Class in harpoon.Backend.Runtime1
ObjectBuilder is an implementation of harpoon.Backend.Generic.Runtime.ObjectBuilder for the Runtime1 runtime.
ObjectBuilder(Runtime) - Constructor for class harpoon.Backend.Runtime1.ObjectBuilder
Creates a ObjectBuilder with a RootOracle which supplies null values to any field of java.lang.Object (which there usually aren't any of).
ObjectBuilder(Runtime, ObjectBuilder.RootOracle) - Constructor for class harpoon.Backend.Runtime1.ObjectBuilder
Creates a ObjectBuilder.
ObjectBuilder - Class in harpoon.Backend.RuntimeTiny
ObjectBuilder
ObjectBuilder(Runtime) - Constructor for class harpoon.Backend.RuntimeTiny.ObjectBuilder
Creates a ObjectBuilder.
ObjectBuilder(Runtime, ObjectBuilder.RootOracle) - Constructor for class harpoon.Backend.RuntimeTiny.ObjectBuilder
 
ObjectBuilder.RootOracle - Class in harpoon.Backend.Runtime1
A RootOracle allows a transformation to add fields to java.lang.Object (or any other class, really) and provide the initial values for that field in the various runtime constant objects without having to directly extend every ObjectInfo used in this Generic.Runtime implementation.
ObjectBuilder.RootOracle() - Constructor for class harpoon.Backend.Runtime1.ObjectBuilder.RootOracle
 
objectNew(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, boolean) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which will create a object of the given type, with length specified by the given expression.
objectNew(TreeFactory, HCodeElement, DerivationGenerator, AllocationInformation.AllocationProperties, HClass, boolean) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
ObjectNotModifiableException - Exception in harpoon.Analysis.GraphColoring
ObjectNotModifiableException
ObjectNotModifiableException() - Constructor for exception harpoon.Analysis.GraphColoring.ObjectNotModifiableException
Creates a ObjectNotModifiableException.
ObjectNotModifiableException(String) - Constructor for exception harpoon.Analysis.GraphColoring.ObjectNotModifiableException
Creates a ObjectNotModifiableException.
objectref - Variable in class harpoon.IR.LowQuad.PPTR
The Temp holding the object reference to convert.
objectref() - Method in class harpoon.IR.LowQuad.PPTR
Returns the Temp containing the object reference to convert into a POINTER.
objectref - Variable in class harpoon.IR.Quads.AGET
The array reference.
objectref() - Method in class harpoon.IR.Quads.AGET
Returns the array reference Temp.
objectref - Variable in class harpoon.IR.Quads.ALENGTH
The array reference to query.
objectref() - Method in class harpoon.IR.Quads.ALENGTH
Returns the Temp holding the array reference to query.
objectref - Variable in class harpoon.IR.Quads.ARRAYINIT
The array reference to initialize.
objectref() - Method in class harpoon.IR.Quads.ARRAYINIT
Returns the Temp referencing the array to be initialized.
objectref - Variable in class harpoon.IR.Quads.ASET
The array reference
objectref() - Method in class harpoon.IR.Quads.ASET
Returns the Temp with the array reference.
objectref - Variable in class harpoon.IR.Quads.COMPONENTOF
The component object to test.
objectref() - Method in class harpoon.IR.Quads.COMPONENTOF
Returns the component object reference to test.
objectref - Variable in class harpoon.IR.Quads.GET
Reference to the object containing the field.
objectref() - Method in class harpoon.IR.Quads.GET
Returns the object containing the specified field, or null if the field is static.
objectref - Variable in class harpoon.IR.Quads.SET
Reference to the object containing the field.
objectref() - Method in class harpoon.IR.Quads.SET
Returns null if the SET is on a static field, or the Temp containing the field to set otherwise.
objectref - Variable in class harpoon.IR.Quads.TYPECAST
The Temp to type cast.
objectref() - Method in class harpoon.IR.Quads.TYPECAST
Return the Temp type cast by this TYPECAST.
objectsize - Variable in class harpoon.Analysis.LowQuad.Loop.Induction
The objectsize HClass saves the array type.
objectSize(HClass) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Utility method for external analyses that want to know the exact size of an object.
objectSize(HClass) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
objectSize(HClass) - Method in class harpoon.Backend.RuntimeTiny.TreeBuilder
 
occupancy(Temp) - Method in class harpoon.Backend.Generic.RegFileInfo
Returns the number of slots that t's assigned register sequence occupies in the register file.
occupancy(Temp) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
offset() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
offset() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
offset - Variable in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
offset(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset from the class pointer of this class's pointer in the display
offset(HField) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset from the object reference of the specified non-static field
offset(HMethod) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the offset from the class pointer of the specified non-static method
offset - Variable in class harpoon.IR.Quads.ARRAYINIT
The starting index for the initializers.
offset() - Method in class harpoon.IR.Quads.ARRAYINIT
Returns the starting offset of the initializers.
old_cs - Variable in class harpoon.Main.CompilerStageEZ
 
ONE_CIRCLE - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
OneLevelInliner - Class in harpoon.Analysis.Quads.DeepInliner
OneLevelInliner contains the code that inlines a single CALL instruction.
ONLY_SYNC_REMOVAL - Static variable in class harpoon.Analysis.MemOpt.PreallocOpt
Use the incompatibility analysis only to remove syncronizations on the objects that can be preallocated (but don't actually preallocate them).
onMonitorEnter(int, Object, int) - Static method in class harpoon.Analysis.Quads.CollectSyncStats
 
onMonitorExit(int, Object, int) - Static method in class harpoon.Analysis.Quads.CollectSyncStats
 
onNew(int, Object, int) - Static method in class harpoon.Analysis.Quads.CollectSyncStats
 
Op - Class in harpoon.IR.Bytecode
The Op class contains constants and tables that we are likely to find useful when grokking a java bytecode stream.
Op() - Constructor for class harpoon.IR.Bytecode.Op
 
op - Variable in class harpoon.IR.Tree.OPER
An enumerated type encoding the operator.
op - Variable in class harpoon.Tools.PatMat.Spec.LeafOp
 
OpClass - Class in harpoon.IR.Bytecode
OpClass represents a class reference operand of a java bytecode instruction.
OpClass(Code, int) - Constructor for class harpoon.IR.Bytecode.OpClass
Creates an OpClass from the CONSTANT_CLASS at the given index in the constant pool.
opcode - Variable in class harpoon.IR.Quads.OPER
The operation to be performed, from the Qop class.
opcode() - Method in class harpoon.IR.Quads.OPER
Returns the operation to be performed, as an integer enumeration from the Qop class.
opcode - Variable in class harpoon.Tools.PatMat.Spec.ExpBinop
Opcode for this.
opcode - Variable in class harpoon.Tools.PatMat.Spec.ExpUnop
Opcode for this.
OpConstant - Class in harpoon.IR.Bytecode
OpConstant represents a constant operand of a java bytecode instruction.
OpConstant(Object, HClass) - Constructor for class harpoon.IR.Bytecode.OpConstant
Make a new OpConstant with the specified value and type.
OpConstant(Code, int) - Constructor for class harpoon.IR.Bytecode.OpConstant
Make a new OpConstant from a constant_pool entry.
OPER - Class in harpoon.IR.Quads
OPER objects represent arithmetic/logical operations, including mathematical operators such as add and subtract, conversion operators such as double-to-int, and comparison operators such as greater than and equals.
OPER(QuadFactory, HCodeElement, int, Temp, Temp[]) - Constructor for class harpoon.IR.Quads.OPER
Creates a OPER.
OPER - Static variable in class harpoon.IR.Quads.QuadKind
 
OPER - Class in harpoon.IR.Tree
OPER objects are expressions which stand for the result of applying some operator to subexpressions.
OPER(TreeFactory, HCodeElement, int, int, int) - Constructor for class harpoon.IR.Tree.OPER
 
Operand - Class in harpoon.IR.Bytecode
Operand represents the operands of a java bytecode instruction.
Operand() - Constructor for class harpoon.IR.Bytecode.Operand
 
operands - Variable in class harpoon.IR.Quads.OPER
Operands of the operation, in left-to-right order.
operands() - Method in class harpoon.IR.Quads.OPER
Returns an array of Temps which are the operands of the operation.
operands(int) - Method in class harpoon.IR.Quads.OPER
Returns a specified element of the operands array.
operandsLength() - Method in class harpoon.IR.Quads.OPER
Returns the length of the operands array.
operandType() - Method in class harpoon.IR.Tree.OPER
Return type of operands (not necessarily the result type).
OperVisitor - Class in harpoon.IR.Quads
An OperVisitor is a visitor pattern for opcodes of the OPER quad.
OperVisitor() - Constructor for class harpoon.IR.Quads.OperVisitor
 
OpField - Class in harpoon.IR.Bytecode
OpField represents a field reference operand of a java bytecode instruction.
OpField(Code, int) - Constructor for class harpoon.IR.Bytecode.OpField
Create an OpField from the CONSTANT_Fieldref at the given index in the constant pool.
OpLocalVariable - Class in harpoon.IR.Bytecode
OpLocalVariable represents an operand of a java bytecode instruction which indicates a local variable index.
OpLocalVariable(int) - Constructor for class harpoon.IR.Bytecode.OpLocalVariable
Create an OpLocalVariable given the index of the local variable referenced.
OpMethod - Class in harpoon.IR.Bytecode
OpMethod represents a method reference operand of a java bytecode instruction.
OpMethod(Code, int) - Constructor for class harpoon.IR.Bytecode.OpMethod
Create an OpMethod from the CONSTANT_Methodref or CONSTANT_InterfaceMethodref at the given index in the constant pool.
ops_using_this_tag(MEM) - Method in class harpoon.Analysis.Tree.CacheEquivalence
Returns all the MEM operations which use the tag defined by whose_tag_check(mem)
optarg - Variable in class gnu.getopt.Getopt
For communication from `getopt' to the caller.
optArgs - Variable in class harpoon.Util.Options.Option
 
opterr - Variable in class gnu.getopt.Getopt
Callers store false here to inhibit the error message for unrecognized options.
optimistic - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
optimistic - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
OptimisticGraphColorer - Class in harpoon.Analysis.GraphColoring
OptimisticGraphColorer uses a strategy similar to that of SimpleGraphColorer, except after removing all nodes with degree < K (where K is the number of colors provided), it begins optimistically removing nodes in the hopes that they will not actually need to be spilled.
OptimisticGraphColorer() - Constructor for class harpoon.Analysis.GraphColoring.OptimisticGraphColorer
Creates a OptimisticGraphColorer with the default second stage selection strategy.
OptimisticGraphColorer(OptimisticGraphColorer.NodeSelector) - Constructor for class harpoon.Analysis.GraphColoring.OptimisticGraphColorer
Creates a OptimisticGraphColorer with selector as its second stage selection strategy.
OptimisticGraphColorer.NodeSelector - Class in harpoon.Analysis.GraphColoring
 
OptimisticGraphColorer.NodeSelector() - Constructor for class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.NodeSelector
 
OptimisticGraphColorer.SimpleSelector - Class in harpoon.Analysis.GraphColoring
 
OptimisticGraphColorer.SimpleSelector() - Constructor for class harpoon.Analysis.GraphColoring.OptimisticGraphColorer.SimpleSelector
 
optimize(HCode) - Method in class harpoon.Analysis.LowQuad.Loop.LoopOptimize
optimize takes in a HCode and performs loop optimizations on it.
optimize(HCode) - Static method in class harpoon.Analysis.Quads.BasicCSE
Eliminates common subexpression within basic blocks in quad-ssi HCode.
optimize(Code, AllocationInformationMap) - Static method in class harpoon.Analysis.Quads.DeadCode
 
optimize(HCode) - Method in class harpoon.Analysis.Quads.SCC.SCCOptimize
 
optimize(CanonicalTreeCode) - Method in interface harpoon.IR.Tree.OptimizedTreeCode.TreeOptimizer
 
OPTIMIZE_HASH_CODE - Static variable in class harpoon.Analysis.PointerAnalysis.AbstrRelation
Optimizes the .hashCode() method by caching the hash code.
OptimizedTreeCode - Class in harpoon.IR.Tree
The OptimizedTreeCode codeview is an optimized, canonical representation of Tree form.
OptimizedTreeCode.TreeOptimizer - Interface in harpoon.IR.Tree
 
optind - Variable in class gnu.getopt.Getopt
Index in ARGV of the next element to be scanned.
Option - Class in harpoon.Util.Options
Option
Option(String, String, String, String) - Constructor for class harpoon.Util.Options.Option
 
Option(String, String, String) - Constructor for class harpoon.Util.Options.Option
 
Option(String, String) - Constructor for class harpoon.Util.Options.Option
 
Option(String) - Constructor for class harpoon.Util.Options.Option
 
OPTIONAL_ARGUMENT - Static variable in class gnu.getopt.LongOpt
Constant value used for the "has_arg" constructor argument.
optionName - Variable in class harpoon.Util.Options.Option
 
optionName() - Method in class harpoon.Util.Options.Option
 
Options - Class in harpoon.Main
Options contains the values of the current runtime environment.
Options() - Constructor for class harpoon.Main.Options
 
optopt - Variable in class gnu.getopt.Getopt
When an unrecognized option is encountered, getopt will return a '?'
optstring - Variable in class gnu.getopt.Getopt
This is the string describing the valid short options.
optype - Variable in class harpoon.IR.Tree.OPER
Type of the operands (not necessarily the result type).
OR - Static variable in class harpoon.IR.Tree.Bop
Bit-wise OR; long/integer only.
OR - Static variable in class harpoon.Tools.Annotation.Sym
 
OR - Static variable in class harpoon.Tools.PatMat.Sym
 
ordering - Variable in class gnu.getopt.Getopt
Determines whether we permute arguments or not
OREQ - Static variable in class harpoon.Tools.Annotation.Sym
 
ORIGINAL - Static variable in class harpoon.Analysis.Transformation.MethodSplitter
The ORIGINAL token represents the original pre-split version of a method.
OROR - Static variable in class harpoon.Tools.Annotation.Sym
 
other() - Method in class harpoon.Analysis.PA2.PANode
 
out(N, FACT) - Method in class harpoon.Analysis.Companions.DataFlowSolver.Forward
Compute the OUT fact given the IN fact for a Node (HCodeElement).
out() - Method in class harpoon.Analysis.PA2.WriteConstraint
 
outDegree() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
outer_class_info() - Method in class harpoon.IR.RawClass.InnerClass
 
outer_class_info_index - Variable in class harpoon.IR.RawClass.InnerClass
CONSTANT_Class_info pointer to the defining scope for the inner class.
outputClass(PrintStream) - Method in class harpoon.IR.Jasmin.Jasmin
Takes in a PrintStream 'out' and dumps Jasmin formatted assembly code to it.
outputClassData(HClass, PrintWriter) - Method in class harpoon.Main.CodeGenerator
 
outputClassData(Linker, HClass, PrintWriter) - Static method in class harpoon.Main.EDMain
 
outputClassData(Linker, HClass, PrintWriter) - Static method in class harpoon.Main.EDXMain
 
outputJavaFile(PrintWriter) - Method in class harpoon.Tools.PatMat.CodeGeneratorGenerator
Writes the Code Generator to out.
outputMethod(HMethod, HCodeFactory, HCodeFactory, PrintWriter) - Method in class harpoon.Main.CodeGenerator
 
outputMethod(HMethod, HCodeFactory, HCodeFactory, PrintWriter) - Static method in class harpoon.Main.EDMain
 
outputMethod(HMethod, HCodeFactory, HCodeFactory, PrintWriter) - Static method in class harpoon.Main.EDXMain
 
outputSelectionMethod(PrintWriter, boolean) - Method in class harpoon.Tools.PatMat.CodeGeneratorGenerator
Writes the Instruction Selection Method to out.
outputSelectionMethod(PrintWriter, boolean) - Method in class harpoon.Tools.PatMat.MaximalMunchCGG
Writes the Instruction Selection Method to out.
OVar - Class in harpoon.Analysis.PA2
OVar
OVar() - Constructor for class harpoon.Analysis.PA2.OVar
 
overrides(HMethod) - Method in class harpoon.Analysis.ClassHierarchy
Returns a set of methods in the hierarchy (not necessary reachable methods) which override the given method hm.
overrides(HClass, HMethod, boolean) - Method in class harpoon.Analysis.ClassHierarchy
Returns the set of methods, excluding hm, declared in classes which are instances of hc, which override hm.

P

PACheckRemoval - Class in harpoon.Analysis.Realtime
PACheckRemoval is a pointer analysis based implementation of the CheckRemoval interface.
PACheckRemoval(Linker, ClassHierarchy, HCodeFactory, Set) - Constructor for class harpoon.Analysis.Realtime.PACheckRemoval
Creates a PACheckRemoval.
PACKAGE - Static variable in class harpoon.Tools.Annotation.Sym
 
PackedClassFieldMap - Class in harpoon.Backend.Analysis
PackedClassFieldMap is a FieldMap for non-static fields of a class which attempts to maximally fill holes in the data structure (even if this means commingling a subclass' fields with those of its superclass) in order to minimize the space required by objects.
PackedClassFieldMap() - Constructor for class harpoon.Backend.Analysis.PackedClassFieldMap
Creates a PackedClassFieldMap.
padd(Temp) - Method in class harpoon.Analysis.LowQuad.Loop.Induction
 
PADD - Static variable in class harpoon.IR.LowQuad.LQop
Computes the sum of two POINTER values.
PAEdge - Class in harpoon.Analysis.PointerAnalysis
PAEdge
PAEdge(PANode, String, PANode) - Constructor for class harpoon.Analysis.PointerAnalysis.PAEdge
Creates a PAEdge.
PAEdgeSet - Class in harpoon.Analysis.PA2
PAEdgeSet
PAEdgeSet() - Constructor for class harpoon.Analysis.PA2.PAEdgeSet
 
PAEdgeSet - Interface in harpoon.Analysis.PointerAnalysis
PAEdgeSet
PAEdgeSet.EdgeAction - Interface in harpoon.Analysis.PA2
 
PAEscapeFunc - Class in harpoon.Analysis.PointerAnalysis
PAEscapeFunc models the escape information.
PAEscapeFunc() - Constructor for class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Creates a EscapeFunc.
PANode - Class in harpoon.Analysis.PA2
PANode
PANode(PANode.Kind, GenType) - Constructor for class harpoon.Analysis.PA2.PANode
 
PANode - Class in harpoon.Analysis.PointerAnalysis
PANode class models a node for the Pointer Analysis algorithm.
PANode(int, GenType[]) - Constructor for class harpoon.Analysis.PointerAnalysis.PANode
Creates a PANode of type type.
PANode(int) - Constructor for class harpoon.Analysis.PointerAnalysis.PANode
Constructor using the default null value for node_class.
PANode() - Constructor for class harpoon.Analysis.PointerAnalysis.PANode
 
PANode.Kind - Enum in harpoon.Analysis.PA2
 
PANodeVisitor - Interface in harpoon.Analysis.PointerAnalysis
PANodeVisitor is a wrapper for a function that is called on a PANode.
PAOFFSET - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PAOFFSET - Class in harpoon.IR.LowQuad
PAOFFSET computes the POINTER offset needed to access a given array element.
PAOFFSET(LowQuadFactory, HCodeElement, Temp, HClass, Temp) - Constructor for class harpoon.IR.LowQuad.PAOFFSET
Creates a PAOFFSET representing the POINTER offset needed to access a given array element.
parallelLoads(PANode) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Returns an iterator over the set of loads that are performed in parallel with an nt thread.
PARAM - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: Parameter node
ParamInfo - Class in harpoon.Analysis.PA2.Mutation
ParamInfo
paramNumber(HMethod, HField) - Method in class harpoon.Analysis.SizeOpt.ConstructorClassifier
Returns the number of the parameter (starting at 0) which holds the value which hf will be set to whenever the given constructor is executed.
params - Variable in class harpoon.IR.LowQuad.PCALL
Parameters to pass to the method.
params() - Method in class harpoon.IR.LowQuad.PCALL
Returns the parameters of this method invocation.
params(int) - Method in class harpoon.IR.LowQuad.PCALL
Returns a specified parameter in the params array.
params - Variable in class harpoon.IR.Quads.CALL
Parameters to pass to the method.
params() - Method in class harpoon.IR.Quads.CALL
Returns the parameters of this method invocation.
params(int) - Method in class harpoon.IR.Quads.CALL
Returns a specified parameter in the params array.
params - Variable in class harpoon.IR.Quads.METHOD
the temporary variables used for method formals.
params() - Method in class harpoon.IR.Quads.METHOD
Returns the params array which associates Temps with formal parameters of a method.
params(int) - Method in class harpoon.IR.Quads.METHOD
Returns a specified member of the params array.
params - Variable in class harpoon.Tools.PatMat.Spec.StmMethod
Identifier name to get params field of Tree.METHOD.
paramsLength() - Method in class harpoon.IR.LowQuad.PCALL
Returns the number of parameters in the params array.
paramsLength() - Method in class harpoon.IR.Quads.CALL
Returns the number of parameters in the params array.
paramsLength() - Method in class harpoon.IR.Quads.METHOD
Returns the length of the params array.
paramType(int) - Method in class harpoon.IR.Quads.CALL
Returns the type of the specified parameter.
PARENED - Static variable in class harpoon.Tools.PatMat.Sym
 
parent() - Method in class harpoon.Analysis.LowQuad.Loop.Induction.IntMultAdd
 
parent() - Method in class harpoon.Analysis.SESE.Region
Parent region of this one (null for top-level region).
parent - Variable in class harpoon.ClassFile.CachingCodeFactory
Parent code factory.
parent - Variable in class harpoon.IR.Assem.Code
The method that this code view represents.
parent - Variable in class harpoon.IR.Quads.Code
The method that this code view represents.
parent - Variable in class harpoon.IR.RawClass.Attribute
ClassFile in which this attribute information is found.
parent - Variable in class harpoon.IR.RawClass.Constant
ClassFile in which this Constant is found.
parent - Variable in class harpoon.IR.RawClass.ExceptionTable
ClassFile in which this attribute information is found.
parent - Variable in class harpoon.IR.RawClass.FieldInfo
ClassFile in which this field information is found.
parent - Variable in class harpoon.IR.RawClass.InnerClass
ClassFile in which this attribute information is found.
parent - Variable in class harpoon.IR.RawClass.LocalVariableTable
ClassFile in which this attribute information is found.
parent - Variable in class harpoon.IR.RawClass.MethodInfo
ClassFile in which this method information is found.
parent - Variable in class harpoon.IR.Tree.Code
The method that this code view represents.
parent - Variable in class harpoon.Runtime.Transactions.CommitRecord
The commit record that this is dependent on, if any.
parentLoop() - Method in class harpoon.Analysis.Loops.LoopFinder
Returns the Loops that contains this loop.
parentLoop() - Method in interface harpoon.Analysis.Loops.Loops
Returns the loop immediately nesting this loop.
parents() - Method in class harpoon.ClassFile.HClass
Return the parents of this HClass.
parents(HClass) - Static method in class harpoon.Util.HClassUtil
Create an array describing the inheritance of class hc.
parentsOf(Object) - Method in interface harpoon.Analysis.GraphColoring.DirectedGraph
Returns a collection view for the parents of a specific node.
ParIntGraph - Class in harpoon.Analysis.PointerAnalysis
ParIntGraph models a Parallel Interaction Graph data structure.
ParIntGraph() - Constructor for class harpoon.Analysis.PointerAnalysis.ParIntGraph
Creates a ParIntGraph.
PARRAY - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PARRAY - Class in harpoon.IR.LowQuad
PARRAY converts an array object reference into a POINTER value that can be used to access array elements.
PARRAY(LowQuadFactory, HCodeElement, Temp, Temp) - Constructor for class harpoon.IR.LowQuad.PARRAY
Creates a PARRAY representing a conversion from an array object reference into a POINTER that can be used to reference array elements.
parseClass(Linker, String) - Static method in class harpoon.Util.ParseUtil
Parse a string as a class name.
parseField(Linker, String) - Static method in class harpoon.Util.ParseUtil
Parse a string as a field name.
parseInstrumentationResults(String) - Static method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Parse the text file produced by an instrumented program.
parseMethod(Linker, String) - Static method in class harpoon.Util.ParseUtil
Parse a string as a method name + descriptor string.
parseOptions(List<Option>, String[]) - Static method in class harpoon.Util.Options.Option
 
parseOptions(List<Option>, List<String>) - Static method in class harpoon.Util.Options.Option
 
parseOpts(String[]) - Static method in class harpoon.Main.Javap
 
parseProfile(WeightedGraph, BufferedReader, WGNode[]) - Static method in class harpoon.Analysis.Partition.Main
 
Parser - Class in harpoon.Tools.PatMat
 
Parser() - Constructor for class harpoon.Tools.PatMat.Parser
constructor
Parser(Lexer, ErrorMsg) - Constructor for class harpoon.Tools.PatMat.Parser
 
parseSet(String, ParseUtil.StringParser) - Static method in class harpoon.Util.ParseUtil
Parse a string as a set.
parseString(String) - Method in interface harpoon.Util.ParseUtil.StringParser
 
ParseUtil - Class in harpoon.Util
ParseUtil implements simple parsers for common string data types.
ParseUtil() - Constructor for class harpoon.Util.ParseUtil
 
ParseUtil.BadLineException - Exception in harpoon.Util
Exception thrown by the methods in ParseUtil to indicate an unparsable line in an input file.
ParseUtil.BadLineException(String) - Constructor for exception harpoon.Util.ParseUtil.BadLineException
 
ParseUtil.StringParser - Interface in harpoon.Util
Callback interface for the resource parsing routines.
Partition - Class in harpoon.Analysis.Partition
 
Partition() - Constructor for class harpoon.Analysis.Partition.Partition
 
PartitionGraphViewer - Class in harpoon.Analysis.Partition
 
PartitionGraphViewer(WeightedGraph[], int, int, Observer, int) - Constructor for class harpoon.Analysis.Partition.PartitionGraphViewer
 
PARTJSupportCompStage - Class in harpoon.Analysis.PointerAnalysis
PARTJSupportCompStage
PARTJSupportCompStage() - Constructor for class harpoon.Analysis.PointerAnalysis.PARTJSupportCompStage
Creates a PARTJSupportCompStage.
PASync - Class in harpoon.Analysis.PointerAnalysis
PASync models a sync action.
PASync(PANode, PANode, HCodeElement) - Constructor for class harpoon.Analysis.PointerAnalysis.PASync
Creates a PASync.
PAThreadMap - Class in harpoon.Analysis.PointerAnalysis
PAThreadMap implements the parallel thread map (i.e. the "tau" function from the algorithm).
PAThreadMap() - Constructor for class harpoon.Analysis.PointerAnalysis.PAThreadMap
Creates a PAThreadMap.
Pattern - Class in harpoon.IR.Quads
Pattern please document me if I'm public!
Pattern() - Constructor for class harpoon.IR.Quads.Pattern
 
patternMatch(QuadWithTry, Map) - Static method in class harpoon.IR.Quads.Pattern
 
PAUtil - Class in harpoon.Analysis.PA2
PAUtil
PAUtil() - Constructor for class harpoon.Analysis.PA2.PAUtil
 
PAWorkList - Class in harpoon.Analysis.PointerAnalysis
PAWorkList
PAWorkList() - Constructor for class harpoon.Analysis.PointerAnalysis.PAWorkList
Creates a PAWorkList.
PAWorkSet - Class in harpoon.Analysis.PointerAnalysis
The PAWorkset class tries to formalize the concept of a workset used in many dataflow analysis.
PAWorkSet() - Constructor for class harpoon.Analysis.PointerAnalysis.PAWorkSet
 
PAWorkStack - Class in harpoon.Analysis.PointerAnalysis
PAWorkStack
PAWorkStack() - Constructor for class harpoon.Analysis.PointerAnalysis.PAWorkStack
Creates a PAWorkStack.
PCALL - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PCALL - Class in harpoon.IR.LowQuad
PCALL objects represent a method pointer dereference and invocation.
PCALL(LowQuadFactory, HCodeElement, Temp, Temp[], Temp, Temp, Temp[][], Temp[], boolean, boolean) - Constructor for class harpoon.IR.LowQuad.PCALL
Creates a PCALL representing a method pointer dereference and method invocation.
PCALL(LowQuadFactory, HCodeElement, Temp, Temp[], Temp, Temp, Temp[], boolean, boolean) - Constructor for class harpoon.IR.LowQuad.PCALL
Creates a PCALL with an empty dst array of the proper size and arity.
PCMPEQ - Static variable in class harpoon.IR.LowQuad.LQop
Evaluates to true if the two POINTER values are equal.
PCMPGT - Static variable in class harpoon.IR.LowQuad.LQop
Evaluates to true if the first POINTER value is greater than the second POINTER value.
PCONST - Class in harpoon.IR.LowQuad
PCONST is an abstract superclass of the LowQuads that encode symbolic offsets or constants for array elements, fields, and methods.
PCONST(LowQuadFactory, HCodeElement, Temp) - Constructor for class harpoon.IR.LowQuad.PCONST
Creates a PCONST.
peek() - Method in class harpoon.Util.Collections.WorkSet
Looks at the object as the top of this WorkSet (treating it as a Stack) without removing it from the set/stack.
peekMax() - Method in class harpoon.Util.BinHeapPriorityQueue
 
peekMax() - Method in interface harpoon.Util.MaxPriorityQueue
Returns the Object in this with the highest priority.
PEEPHOLE_OPTIMIZATIONS - Static variable in class harpoon.Backend.Generic.Code
 
percentage(double, double) - Static method in class harpoon.Util.Util
Returns a string representing the proportion a/total (in percents).
performFinalAssignment(Temp[]) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
Gives each Instr in the code a register assignment.
performFinalAssignment(Temp[]) - Method in class harpoon.Analysis.Instr.AppelRegAllocFsk
 
performFinalAssignment(Temp[]) - Method in class harpoon.Analysis.Instr.AppelRegAllocStd
 
PERMUTE - Static variable in class gnu.getopt.Getopt
PERMUTE is the default.
PFCONST - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PFCONST - Class in harpoon.IR.LowQuad
PFCONST computes the POINTER constant needed to access a given static field.
PFCONST(LowQuadFactory, HCodeElement, Temp, HField) - Constructor for class harpoon.IR.LowQuad.PFCONST
Creates a PFCONST representing the POINTER constant needed to access a given static field.
PFIELD - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PFIELD - Class in harpoon.IR.LowQuad
PFIELD converts an object reference into a POINTER value that can be used to access non-static object fields.
PFIELD(LowQuadFactory, HCodeElement, Temp, Temp) - Constructor for class harpoon.IR.LowQuad.PFIELD
Creates a PFIELD representing a conversion from an object reference into a POINTER that can be used to reference non-static object fields.
PFOFFSET - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PFOFFSET - Class in harpoon.IR.LowQuad
PFOFFSET computes the POINTER offset needed to access a given non-static field.
PFOFFSET(LowQuadFactory, HCodeElement, Temp, HField) - Constructor for class harpoon.IR.LowQuad.PFOFFSET
Creates a PFOFFSET representing the POINTER offset needed to access a given non-static field.
PGCNiftyAllocationStrategy - Class in harpoon.Backend.PreciseC
PGCNiftyAllocationStrategy uses alloca() instead of NSTK_alloc to do stack allocation.
PGCNiftyAllocationStrategy(Frame) - Constructor for class harpoon.Backend.PreciseC.PGCNiftyAllocationStrategy
Creates a PGCNiftyAllocationStrategy.
PGCNiftyAllocationStrategyWithStats - Class in harpoon.Backend.PreciseC
PGCNiftyAllocationStrategyWithStats adds a callback to properly update statistics after stack allocation.
PGCNiftyAllocationStrategyWithStats(Frame) - Constructor for class harpoon.Backend.PreciseC.PGCNiftyAllocationStrategyWithStats
Creates a PGCNiftyAllocationStrategyWithStats.
PGET - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PGET - Class in harpoon.IR.LowQuad
PGET represents a POINTER dereference to get a field or array element.
PGET(LowQuadFactory, HCodeElement, Temp, Temp, HClass) - Constructor for class harpoon.IR.LowQuad.PGET
Creates a PGET representing a pointer dereference and fetch.
PHI - Class in harpoon.IR.Quads
PHI objects represent blocks of phi functions.
PHI(QuadFactory, HCodeElement, Temp[], Temp[][], int) - Constructor for class harpoon.IR.Quads.PHI
Creates a PHI object representing a block of phi functions.
PHI(QuadFactory, HCodeElement, Temp[], int) - Constructor for class harpoon.IR.Quads.PHI
Creates a PHI object with the specified arity.
PHI - Static variable in class harpoon.IR.Quads.QuadKind
 
phiNeeded(HCodeElement) - Method in class harpoon.Analysis.Place
 
Place - Class in harpoon.Analysis
Place determines the proper locations for phi/sigma functions.
Place(HCode, Liveness) - Constructor for class harpoon.Analysis.Place
Creates a Place.
PLUS - Static variable in class harpoon.Tools.Annotation.Sym
 
PLUSEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
PLUSPLUS - Static variable in class harpoon.Tools.Annotation.Sym
 
plusWidthMap(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine the positive bit width of Temp t.
plusWidthMap(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the positive bit width of Temp t.
plusWidthMap(HField) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the positive bit width of HField hf.
PMCONST - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PMCONST - Class in harpoon.IR.LowQuad
PMCONST computes the POINTER constant needed to invoke a given non-virtual method.
PMCONST(LowQuadFactory, HCodeElement, Temp, HMethod) - Constructor for class harpoon.IR.LowQuad.PMCONST
Creates a PMCONST representing the POINTER constant needed to invoke a given non-virtual method.
PMETHOD - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PMETHOD - Class in harpoon.IR.LowQuad
PMETHOD converts an object reference into a POINTER value that can be used to invoke object methods.
PMETHOD(LowQuadFactory, HCodeElement, Temp, Temp) - Constructor for class harpoon.IR.LowQuad.PMETHOD
Creates a PMETHOD representing a conversion from an object reference into a POINTER that can be used to invoke virtual methods.
PMOFFSET - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PMOFFSET - Class in harpoon.IR.LowQuad
PMOFFSET computes the POINTER offset needed to invoke a given virtual method.
PMOFFSET(LowQuadFactory, HCodeElement, Temp, HMethod) - Constructor for class harpoon.IR.LowQuad.PMOFFSET
Creates a PMOFFSET representing the POINTER offset needed to invoke a given virtual method.
PNEG - Static variable in class harpoon.IR.LowQuad.LQop
Negates a POINTER value (used to compute differences).
pointedNodes(PANode) - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
pointedNodes(PANode, HField) - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
pointedNodes(PANode) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
pointedNodes(PANode, HField) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
pointedNodes(Temp) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
pointedNodes(PANode, String) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
pointedNodes(Collection, String) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
pointedNodes(PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
pointedNodes(Temp) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
pointedNodes(PANode, String) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
pointedNodes(PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
pointedNodes(Temp) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
pointedNodes(PANode, String) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
pointedNodes(Collection, String) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
pointedNodes(PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
pointedNodes(MetaMethod, Quad, Temp) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the set of the nodes pointed by the temporary t at the point right before executing instruction q from the body of meta-method mm.
pointedNodes(Quad, Temp) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
POINTER - Static variable in class harpoon.IR.Tree.Type
Pointer type.
POINTER - Static variable in interface harpoon.IR.Tree.Typed
 
POINTER_SIZE - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
PointerAnalysis - Class in harpoon.Analysis.PA2
PointerAnalysis attemps to give a specification for the different pointer analysis implementations.
PointerAnalysis() - Constructor for class harpoon.Analysis.PA2.PointerAnalysis
 
PointerAnalysis - Class in harpoon.Analysis.PointerAnalysis
PointerAnalysis is the main class of the Pointer Analysis package.
PointerAnalysis(MetaCallGraph, CachingSCCLBBFactory, Linker, ClassHierarchy) - Constructor for class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Creates a PointerAnalysis object.
PointerAnalysisCompStage - Class in harpoon.Analysis.PointerAnalysis
PointerAnalysisCompStage
PointerAnalysisCompStage(boolean) - Constructor for class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
Creates a PointerAnalysisCompStage object.
PointerAnalysisCompStage() - Constructor for class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
Convenient constructor: the created compiler stage is not externally enabled.
pointerindex - Variable in class harpoon.Analysis.LowQuad.Loop.Induction
The pointerindex boolean describes whether the Temp induction variable is a pointer [true] or an integer [false].
pointeroffset - Variable in class harpoon.Analysis.LowQuad.Loop.Induction
The ArrayList saves pointer Temps that are added in.
pointersAreLong() - Method in class harpoon.Backend.Generic.Frame
Returns false if pointers can be represented in 32 bits, or true otherwise.
pointersAreLong() - Method in class harpoon.Backend.MIPS.Frame
 
pointersAreLong() - Method in class harpoon.Backend.PreciseC.Frame
 
pointersAreLong - Variable in class harpoon.Backend.Runtime1.ObjectBuilder
 
pointersAreLong() - Method in class harpoon.Backend.Sparc.Frame
 
pointersAreLong() - Method in class harpoon.Backend.StrongARM.Frame
 
pointersAreLong() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
PointerTypeChangedException - Exception in harpoon.Interpret.Tree
This exception is thrown when the type of a Pointer within the Tree interpreter is changed.
PointerTypeChangedException(Pointer) - Constructor for exception harpoon.Interpret.Tree.PointerTypeChangedException
Class constructor
pointsTo(HCE, Temp) - Method in class harpoon.Analysis.PointsToAnalysis
Provides points-to information valid for all contexts in which Temp t defined at defsite is used or defined.
pointsTo(HCE, Temp, CONTEXT) - Method in class harpoon.Analysis.PointsToAnalysis
Provies points-to information valid only for a use of t (defined at defsite in the specific Context c.
PointsToAnalysis<HCE extends HCodeElement,NODE extends PointsToAnalysis.Node<HCE>,CONTEXT extends Context> - Class in harpoon.Analysis
The PointsToAnalysis interface encapsulates a points-to pointer analysis algorithm, allowing transformation and analysis code to use the results of a PointsToAnalysis w/o knowing the details of its implementation.
PointsToAnalysis() - Constructor for class harpoon.Analysis.PointsToAnalysis
 
PointsToAnalysis.Node<HCE extends HCodeElement> - Interface in harpoon.Analysis
PointsToAnalysis.Node is just a marker interface for the nodes in the points-to graph returned by the PointsToAnalysis interface.
PointsToGraph - Class in harpoon.Analysis.PointerAnalysis
PointsToGraph models the memory, as specified by the abstraction of the object creation sites.
PointsToGraph() - Constructor for class harpoon.Analysis.PointerAnalysis.PointsToGraph
Creates a PointsToGraph.
PointsToQuadVisitor - Class in harpoon.Analysis.PreciseGC
PointsToQuadVisitor performs local points to analysis, and can be subclassed for more specific purposes.
PointsToQuadVisitor(Code) - Constructor for class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
Creates a PointsToQuadVisitor.
POLY - Static variable in class harpoon.Analysis.MetaMethods.GenType
Polymorphic type.
POP - Static variable in class harpoon.IR.Bytecode.Op
 
pop() - Method in class harpoon.Util.Collections.WorkSet
Removes the item at the top of this WorkSet (treating it as a Stack) and returns that object as the value of this function.
POP2 - Static variable in class harpoon.IR.Bytecode.Op
 
POPER - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
POPER - Class in harpoon.IR.LowQuad
POPER is an extended version of harpoon.IR.Quads.OPER, with new opcodes defined in LQop.
POPER(LowQuadFactory, HCodeElement, int, Temp, Temp[]) - Constructor for class harpoon.IR.LowQuad.POPER
Creates a POPER.
pos - Variable in class harpoon.Tools.Annotation.Lex.LinePos
Character position in the line.
posixly_correct - Variable in class gnu.getopt.Getopt
The flag determines whether or not we operate in strict POSIX compliance
postEsc(Quad) - Method in class harpoon.Analysis.PA2.FullAnalysisResult
Nodes that escape right after q
postI(Quad) - Method in class harpoon.Analysis.PA2.FullAnalysisResult
Inside edges right after q
postorderBlocksIter() - Method in class harpoon.Analysis.BasicBlock.Factory
Generates an Iterator that traverses over all of the blocks generated by this BasicBlock.Factory in Postorder (subtrees first, then root).
PPTR - Class in harpoon.IR.LowQuad
PPTR is an abstract superclass of the LowQuads that convert object references into POINTER types.
PPTR(LowQuadFactory, HCodeElement, Temp, Temp) - Constructor for class harpoon.IR.LowQuad.PPTR
Creates a PPTR.
PREALLOC_OPT - Static variable in class harpoon.Analysis.MemOpt.PreallocOpt
If true, the compiler uses the static memory pre-allocation optimization (via IncompatibilityAnalysis.
PreallocAllocationStrategy - Class in harpoon.Analysis.MemOpt
PreallocAllocationStrategy is the allocation strategy for the Static Memory Preallocation Optimization (via Ovy's Incompatibility Analysis).
PreallocAllocationStrategy(Frame) - Constructor for class harpoon.Analysis.MemOpt.PreallocAllocationStrategy
Creates a PreallocAllocationStrategy.
preallocAnalysis(Linker, HCodeFactory, ClassHierarchy, HMethod, Set, AllocationStatistics, Frame) - Static method in class harpoon.Analysis.MemOpt.PreallocOpt
Executes the IncompatibilityAnalysis and creates a (QuadSSI) code factory that produces code with the allocation properties set to reflect the fact that some allocation sites can use pre-allocated memory space.
PreallocData - Class in harpoon.Analysis.MemOpt
PreallocData
PreallocData(HClass, Frame, Set, Label, Label) - Constructor for class harpoon.Analysis.MemOpt.PreallocData
Creates a PreallocData.
PreallocOpt - Class in harpoon.Analysis.MemOpt
PreallocOpt
PreallocOpt() - Constructor for class harpoon.Analysis.MemOpt.PreallocOpt
 
PreallocOpt.QuadPass - Class in harpoon.Analysis.MemOpt
 
PreallocOpt.QuadPass(AllocationInstrCompStage) - Constructor for class harpoon.Analysis.MemOpt.PreallocOpt.QuadPass
 
PreallocOpt.SafeCachingCodeFactory - Class in harpoon.Analysis.MemOpt
A CachingCodeFactory that ignores all calls to clear (hence the name).
PreallocOpt.SafeCachingCodeFactory(HCodeFactory, boolean) - Constructor for class harpoon.Analysis.MemOpt.PreallocOpt.SafeCachingCodeFactory
 
PreallocOpt.TreePass - Class in harpoon.Analysis.MemOpt
 
PreallocOpt.TreePass() - Constructor for class harpoon.Analysis.MemOpt.PreallocOpt.TreePass
 
PRECISEC - Static variable in class harpoon.Backend.Backend
PreciseC backend.
PreciselyTyped - Interface in harpoon.IR.Tree
The PreciselyTyped interface allows access to type information for expressions which have a type which cannot be expressed by the standard types in the Typed interface.
pred(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
pred() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
pred() - Method in class harpoon.IR.Assem.Instr
Returns the control flow predecessors of this.
pred() - Method in class harpoon.IR.Bytecode.Instr
 
pred() - Method in interface harpoon.IR.Properties.CFGraphable
Returns an array of all the edges entering this CFGraphable.
pred() - Method in class harpoon.IR.Quads.Quad
 
predC() - Method in class harpoon.IR.Assem.Instr
Returns the control flow predecessors of this.
predC() - Method in class harpoon.IR.Assem.InstrLABEL
 
predC() - Method in class harpoon.IR.Bytecode.Instr
 
predC() - Method in interface harpoon.IR.Properties.CFGraphable
Returns a List of all the edges to this HCodeElement.
predC(HCE) - Method in class harpoon.IR.Properties.CFGrapher
Returns a List of all the edges to this HCodeElement.
predC() - Method in class harpoon.IR.Quads.Quad
 
predC() - Method in class harpoon.Util.Collections.AbstractGraph.Node
 
predC() - Method in interface harpoon.Util.Collections.Graph.Node
Return a collection of edges leading to this node.
predElemC(HCE) - Method in class harpoon.IR.Properties.CFGrapher
Returns a Collection of all the HCodeElements preceeding hc.
predicate_string - Variable in class harpoon.Tools.PatMat.Spec.DetailPredicate
 
PredicateWrapper - Interface in harpoon.Util
PredicateWrapper wraps a predicate on an Object.
predSet(Temp) - Method in class harpoon.Analysis.Quads.QuadInterferenceGraph
 
predSet(N) - Method in interface harpoon.Util.Grapher
 
preEsc(Quad) - Method in class harpoon.Analysis.PA2.FullAnalysisResult
Nodes that escape right before q
preI(Quad) - Method in class harpoon.Analysis.PA2.FullAnalysisResult
Inside edges right before q
preorderBlocksIter() - Method in class harpoon.Analysis.BasicBlock.Factory
Generates an Iterator that traverses over all of the blocks generated by this BasicBlock.Factory in Preorder (root first, then subtrees).
PreOrderClazNumbering - Class in harpoon.Backend.RuntimeTiny
PreOrderClazNumbering will number single-inheritance instantiated classes (i.e. not interfaces or arrays of interfaces) such that all classes numbered in an interval [a,b] will be instances of the first common superclass of A and B, where clazNumber(A)==a and clazNumber(B)==b.
PreOrderClazNumbering(ClassHierarchy) - Constructor for class harpoon.Backend.RuntimeTiny.PreOrderClazNumbering
Creates a PreOrderClazNumbering.
prepareForSerialization() - Method in class harpoon.Analysis.PointerAnalysis.MAInfo
Nullifies some stuff to make the serialization possible.
pressure(Temp, Temp) - Method in class harpoon.Backend.Generic.RegFileInfo
Returns the degree of conflict that b inflicts upon a if the two Temps interfere.
pressure(Temp, Temp) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
prettyPrint(Tree) - Method in class harpoon.Backend.Generic.CodeGen
 
prev() - Method in class harpoon.Analysis.BasicBlock
Deprecated. Use prevSet() instead
prev - Variable in class harpoon.IR.Assem.Instr
The Instr that is output prior to this.
prev() - Method in class harpoon.IR.Bytecode.Instr
Return a list of all the Instrs that can precede this one.
prev(int) - Method in class harpoon.IR.Bytecode.Instr
Return the specified predecessor of this Instr.
prev(int) - Method in class harpoon.IR.Quads.Quad
Returns the ith predecessor of this quad.
prev() - Method in class harpoon.IR.Quads.Quad
Returns an array containing all the predecessors of this quad, in order.
prev_bb - Variable in class harpoon.Analysis.FCFGBasicBlock
Previous BBs (according to the normal control flow).
prevEdge() - Method in class harpoon.IR.Quads.Quad
Returns an array containing all the incoming edges of this quad.
prevEdge(int) - Method in class harpoon.IR.Quads.Quad
Returns the ith incoming edge of this quad.
previous() - Method in class harpoon.Util.ArrayIterator
 
previous() - Method in class harpoon.Util.CloneableIterator
 
previousIndex() - Method in class harpoon.Util.ArrayIterator
 
previousIndex() - Method in class harpoon.Util.CloneableIterator
 
prevLength() - Method in class harpoon.Analysis.BasicBlock
Deprecated. Use prevSet() instead
prevLength() - Method in class harpoon.IR.Quads.Quad
Return the number of predecessors of this quad.
prevSet() - Method in class harpoon.Analysis.BasicBlock
Returns all the predecessors of this.
prevSet() - Method in interface harpoon.Analysis.BasicBlockInterf
Returns all the predecessors of the basic block, according to the normal and the exceptional control flow.
prevSet() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns all the predecessors of the basic block, according to the normal and the exceptional control flow.
print(PrintStream, boolean, MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraph
Nice pretty-printer for debug purposes.
print(PrintStream, boolean, MetaMethod) - Method in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
Nice pretty-printer for debug purposes.
print(PrintWriter, String) - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
print() - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
print(String) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
print(PrintWriter, String) - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
print(String) - Method in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Pretty printer.
print() - Method in class harpoon.Analysis.PointerAnalysis.MAInfo
Pretty printer for debug.
print(PrintWriter) - Method in class harpoon.Analysis.SESE
 
print(PrintWriter) - Method in class harpoon.ClassFile.HClass
Prints a formatted representation of this class.
print(PrintWriter) - Method in class harpoon.ClassFile.HCode
Pretty-print this code view using an empty callback.
print(PrintWriter, HCode.PrintCallback<HCE>) - Method in class harpoon.ClassFile.HCode
Pretty-print this code view using the specified callback.
print(PrintWriter) - Method in class harpoon.ClassFile.HData
Print a human-readable representation of this dataview using a null callback.
print(PrintWriter, HCode.PrintCallback) - Method in class harpoon.ClassFile.HData
Print a human-readable representation of this dataview using the specified callback.
print() - Method in class harpoon.IR.Assem.Code
Prints the assembly instructions of this to System.out.
print(PrintWriter, HCode.PrintCallback<Instr>) - Method in class harpoon.IR.Assem.Code
Prints the assembly instructions of this to pw.
print(PrintWriter, HCode.PrintCallback<Quad>) - Method in class harpoon.IR.Quads.Code
 
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.Attribute
Pretty-print this attribute structure.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeCode
Pretty-print the contents of this attribute.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeConstantValue
Pretty-print the contents of this attribute.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeExceptions
Pretty-print the contents of this attribute.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeInnerClasses
Pretty-print this attribute structure.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeLineNumberTable
Pretty-print this attribute.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeLocalVariableTable
Pretty-print the contents of this attribute.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeSignature
Pretty-print this attribute structure.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.AttributeSourceFile
Pretty-print this attribute structure.
print(PrintWriter) - Method in class harpoon.IR.RawClass.ClassFile
Pretty print this classfile structure.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.ClassFile
 
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.Constant
Pretty-print this constant.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.ExceptionTable
Pretty-print this entry.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.FieldInfo
Pretty-print this field_info structure.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.LocalVariableTable
Pretty-print the contents of this attribute.
print(PrintWriter, int) - Method in class harpoon.IR.RawClass.MethodInfo
Pretty-print this method_info structure.
print(PrintWriter, HCode.PrintCallback<Tree>) - Method in class harpoon.IR.Tree.Code
 
print(PrintWriter, HCode.PrintCallback) - Method in class harpoon.IR.Tree.Data
Print a human-readable representation of this dataview
Print - Class in harpoon.IR.Tree
Print pretty-prints Trees.
Print() - Constructor for class harpoon.IR.Tree.Print
 
print(PrintWriter, Code, TempMap, HCode.PrintCallback<Tree>) - Static method in class harpoon.IR.Tree.Print
 
print(PrintWriter, Data, TempMap, HCode.PrintCallback<Tree>) - Static method in class harpoon.IR.Tree.Print
 
print(PrintWriter, Code, HCode.PrintCallback<Tree>) - Static method in class harpoon.IR.Tree.Print
 
print(PrintWriter, Data, HCode.PrintCallback<Tree>) - Static method in class harpoon.IR.Tree.Print
 
print(PrintWriter, Code, Map) - Static method in class harpoon.IR.Tree.Print
 
print(PrintWriter, Tree) - Static method in class harpoon.IR.Tree.Print
 
print(Tree) - Static method in class harpoon.IR.Tree.Print
 
print(Collection) - Static method in class harpoon.Util.Util
Return a String representing the elements of collection in a human readable format.
PRINT_CLEANING_INFO - Static variable in class harpoon.Analysis.Instr.AppelRegAlloc
 
print_collection(Collection, String, String, PrintWriter) - Static method in class harpoon.Util.Util
Pretty printer for collections.
print_collection(Collection, String, String) - Static method in class harpoon.Util.Util
Simplified version of print_collection.
print_collection(Collection, String) - Static method in class harpoon.Util.Util
Even more simplified version of print_collection.
PRINT_DEPTH_TO_SPILL_INFO - Static variable in class harpoon.Analysis.Instr.AppelRegAlloc
 
PRINT_HEURISTIC_INFO - Static variable in class harpoon.Analysis.Instr.AppelRegAlloc
 
print_stats() - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Prints some statistics.
print_stats() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Prints some statistics.
printAfter(PrintWriter, HCE) - Method in class harpoon.ClassFile.HCode.PrintCallback
This method is called right *after* each HCodeElement is output.
printBBCFG(HMethod, HCodeFactory, PrintWriter) - Static method in class harpoon.Util.Graph
Print the Control Flow Graph of the Basic Blocks composing the code of method hm, as constructed by the code factory hcf.
printBBCFG(HMethod, LBBConverter, PrintWriter) - Static method in class harpoon.Util.Graph
Print the Control Flow Graph of the Basic Blocks composing the code of method hm, as constructed by the LBBConverter hcf.
printBefore(PrintWriter, HCE) - Method in class harpoon.ClassFile.HCode.PrintCallback
This method is called right *before* each HCodeElement is output.
printCFG(HCode, PrintWriter, String) - Static method in class harpoon.Util.Graph
Print (vcg format) control from graph representing code view.
printCFG(HCode, PrintWriter, String, String[]) - Static method in class harpoon.Util.Graph
Print (vcg format) control flow graph representing code view.
printClassHierarchy(PrintWriter, HMethod, ClassHierarchy) - Static method in class harpoon.Util.Graph
 
printDomTree(HCode, PrintWriter, String) - Static method in class harpoon.Util.Graph
Print (vcg format) DomTree of code view.
printDomTree(boolean, HCode, PrintWriter, String) - Static method in class harpoon.Util.Graph
Print (vcg format) (Post)DomTree of code view.
printDomTree(HCode, PrintWriter, String, String[]) - Static method in class harpoon.Util.Graph
Print (vcg format) of DomTree.
printDomTree(boolean, HCode, PrintWriter, String, String[]) - Static method in class harpoon.Util.Graph
Print (vcg format) of (Post)DomTree.
printError(String, HMethod, HCodeElement) - Static method in class harpoon.Main.Lint
print out a standardized error message
PrintFactory - Class in harpoon.Analysis.Realtime
PrintFactory allows you to print the code as it's being converted for debugging purposes only.
PrintFactory(HCodeFactory, String) - Constructor for class harpoon.Analysis.Realtime.PrintFactory
Construct a PrintFactory that will label the code produced by parent with comment.
printGraph(ColorableGraph, boolean) - Static method in class harpoon.Analysis.Instr.GraphColoringRegAlloc
returns nodeToNum.
printHelp() - Static method in class harpoon.Main.SAMain
 
printHelp(PrintStream) - Method in class harpoon.Util.Options.Option
 
printPreallocatedCode() - Method in class harpoon.Backend.Generic.Code
 
printPreallocatedCode(HCode.PrintCallback) - Method in class harpoon.Backend.Generic.Code
 
printStatistics(IncompatibilityAnalysis, AllocationStatistics, HCodeFactory, Linker, Frame) - Static method in class harpoon.Analysis.MemOpt.IAStatistics
Prints static and dynamic statisticis about the memory preallocation optimization through incompatibility analysis.
printStatistics(Frame, Linker) - Method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
 
printStatistics(Collection, QuadVisitor) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
Prints statitistics about the allocation sites from the collection allocs.
printStatistics(Collection) - Method in class harpoon.Instrumentation.AllocationStatistics.AllocationStatistics
 
printStats(int, int) - Static method in class harpoon.Analysis.PA2.Stats
 
printStats() - Static method in class harpoon.Analysis.Realtime.Realtime
Print statistics about the static analysis and addition of Realtime support.
PRIVATE - Static variable in class harpoon.Tools.Annotation.Sym
 
procAssemDirectives(Instr) - Method in class harpoon.Interpret.Tree.DefaultFrame
 
procFixup(HMethod, Instr, int, Set) - Method in class harpoon.Backend.Generic.CodeGen
Fixes up the procedure entry and exit code for a list of instrs, once it is known how many registers and how much stack space is used.
procFixup(HMethod, Code, int, Set) - Method in class harpoon.Backend.Generic.CodeGen
Fixes up the procedure entry and exit code for a list of instrs, once it is known how many registers and how much stack space is used.
procFixup(HMethod, Instr, int, Set) - Method in class harpoon.Backend.MIPS.CodeGen
 
procFixup(HMethod, Instr, int, Set) - Method in class harpoon.Backend.Sparc.CodeGen
 
procFixup(HMethod, Instr, int, Set) - Method in class harpoon.Backend.StrongARM.CodeGen
 
procLiveOnExit(Instr) - Method in class harpoon.Interpret.Tree.DefaultFrame
 
procPrologue(TreeFactory, HCodeElement, Temp[], int[]) - Method in class harpoon.Interpret.Tree.DefaultFrame
 
producedClassType() - Method in class harpoon.Tools.PatMat.CodeGeneratorGenerator
Returns the fully qualified name of the superclass of the generated CodeGen.
producedClassType() - Method in class harpoon.Tools.PatMat.MaximalMunchCGG
 
production_table() - Method in class harpoon.Tools.Annotation.Java12
access to production table
production_table() - Method in class harpoon.Tools.PatMat.Parser
access to production table
profWriter - Static variable in class harpoon.Main.Options
Stream for writing profiling data.
progname - Variable in class gnu.getopt.Getopt
Name to print as the program name in error messages.
proj(int) - Method in class harpoon.Util.Tuple
Projects an element of the Tuple.
project(Relation) - Method in class harpoon.Analysis.PointerAnalysis.PAEdge
 
project(Relation) - Method in class harpoon.Analysis.PointerAnalysis.PASync
Returns the image of this sync action projected through the relation mu.
propagate(Collection) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Propagates the escape information along the edges.
propagate() - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Convenient function that recomputes all the escape info.
proportion2str(long, long) - Static method in class harpoon.Util.Util
Returns the string representation of the proportion a/b.
PROTECTED - Static variable in class harpoon.Tools.Annotation.Sym
 
protected_bb - Variable in class harpoon.Analysis.FCFGBasicBlock
Predecessor BBs in the exceptional control flow.
protectedQuads() - Method in class harpoon.IR.Quads.HANDLER
Deprecated.  
protectedSet() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns the set of predecessor BBs in the exceptional control flow.
protectedSet - Variable in class harpoon.IR.Quads.HANDLER
The set of Quads protected by this HANDLER.
protectedSet() - Method in class harpoon.IR.Quads.HANDLER
Returns an immutable Set of the Quadss protected by this HANDLER.
prune(Code) - Static method in class harpoon.Analysis.Quads.Unreachable
Prunes unreachable code from a quad graph in-place.
prune(HEADER) - Static method in class harpoon.Analysis.Quads.Unreachable
Prunes unreachable code *without updating the derivation*.
PSET - Static variable in class harpoon.IR.LowQuad.LowQuadKind
 
PSET - Class in harpoon.IR.LowQuad
PSET represents a POINTER dereference to set a field or array element.
PSET(LowQuadFactory, HCodeElement, Temp, Temp, HClass) - Constructor for class harpoon.IR.LowQuad.PSET
Creates a PSET representing a pointer dereference and store.
ptr - Variable in exception harpoon.Interpret.Tree.PointerTypeChangedException
The Pointer whose type is changed.
ptr - Variable in class harpoon.IR.LowQuad.PCALL
The method pointer to dereference.
ptr() - Method in class harpoon.IR.LowQuad.PCALL
Returns the POINTER which is to be dereferenced by this PCALL.
ptr - Variable in class harpoon.IR.LowQuad.PGET
Temp holding the POINTER value to dereference and fetch.
ptr() - Method in class harpoon.IR.LowQuad.PGET
Returns the Temp holding the POINTER value to dereference and fetch.
ptr - Variable in class harpoon.IR.LowQuad.PSET
Temp holding the POINTER value to dereference and store to.
ptr() - Method in class harpoon.IR.LowQuad.PSET
Returns the Temp holding the POINTER value to dereference.
ptrGET(Object, Object, Object) - Static method in class harpoon.Runtime.MZFExternalMap
 
PTRMASK(TreeFactory, HCodeElement, DerivationGenerator, Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
ptrSET(Object, Object, Object, Object) - Static method in class harpoon.Runtime.MZFExternalMap
 
ptrsign - Variable in class harpoon.Analysis.LowQuad.Loop.Induction
The ptrsign saves the relative sign.
ptrvariable - Variable in class harpoon.Analysis.LowQuad.Loop.Induction
 
PUBLIC - Static variable in class harpoon.Tools.Annotation.Sym
 
PUBLIC_ONLY - Static variable in class harpoon.Main.Javap
Show only public classes and members.
PUBLIC_PROTECTED_ONLY - Static variable in class harpoon.Main.Javap
Show protected/public classes and members.
PUBLIC_PROTECTED_PACKAGE_ONLY - Static variable in class harpoon.Main.Javap
Show package/protected/public classes and members.
PUBLIC_PROTECTED_PACKAGE_PRIVATE - Static variable in class harpoon.Main.Javap
Show all classes and members.
pull() - Method in class harpoon.Util.Collections.WorkSet
Removes some item from this and return it (Worklist adaptor method).
pull() - Method in interface harpoon.Util.Worklist
Removes some item from the Worklist and return it.
pureMethods - Static variable in class harpoon.Analysis.PA2.Mutation.WPMutationAnalysisCompStage
If the --wp-mutation-save option is used, the analysis will save all discovered pure methods in this set.
Purity - Class in harpoon.Main
Purity
Purity() - Constructor for class harpoon.Main.Purity
 
push(E) - Method in class harpoon.Util.Collections.WorkSet
Pushes item onto the top of this WorkSet (treating it as a Stack), if it is not already there.
push(E) - Method in interface harpoon.Util.Worklist
Pushes an item onto the Worklist if it is not already there.
put(K, V) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Associates the specified value with the specified key in this map.
put(HMethod, HCode) - Method in class harpoon.ClassFile.CachingCodeFactory
Add or replace a representation for m to this CachingCodeFactory.
putAll(Map<? extends K, ? extends V>) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Copies all of the mappings from the specified map to this map.
putDerivation(HCE, Temp, Derivation.DList) - Method in class harpoon.IR.LowQuad.DerivationMap
Add a mapping from the given Temp t defined at the given HCodeElement hce to the given Derivation.DList derivation to this DerivationMap.
putDerivation(Exp, Derivation.DList) - Method in class harpoon.IR.Tree.DerivationGenerator
Add a mapping from the given Tree.Exp exp to the given Derivation.DList derivation.
PUTFIELD - Static variable in class harpoon.IR.Bytecode.Op
 
PUTFIELD2_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
PUTFIELD_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
PUTFIELD_QUICK_W - Static variable in class harpoon.IR.Bytecode.Op
 
PUTSTATIC - Static variable in class harpoon.IR.Bytecode.Op
 
PUTSTATIC2_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
PUTSTATIC_QUICK - Static variable in class harpoon.IR.Bytecode.Op
 
putType(HCE, Temp, HClass) - Method in class harpoon.IR.LowQuad.DerivationMap
Add a mapping from the given Temp t defined at the given HCodeElement hce to the given HClass type to this DerivationMap.
putType(Exp, HClass) - Method in class harpoon.IR.Tree.DerivationGenerator
Add a mapping from the given Tree.Exp exp to the given HClass type to this DerivationGenerator.
putTypeAndTemp(Exp, HClass, Temp) - Method in class harpoon.IR.Tree.DerivationGenerator
Add a mapping from the given Tree.Exp exp to the given HClass type to the DerivationGenerator, indicating that this value lives in Temp temp.

Q

qf - Variable in class harpoon.IR.Quads.Code
Quad factory.
Qop - Class in harpoon.IR.Quads
Qop is an enumerated type for the various kinds of OPER opcodes.
Qop() - Constructor for class harpoon.IR.Quads.Qop
 
Quad - Class in harpoon.IR.Quads
Quad is the base class for the quadruple representation.
Quad(QuadFactory, HCodeElement, int, int) - Constructor for class harpoon.IR.Quads.Quad
Initializes a quad with prev_arity input edges and next_arity output edges.
Quad(QuadFactory, HCodeElement) - Constructor for class harpoon.IR.Quads.Quad
Initializes a quad with exactly one input edge and exactly one output edge.
quad2method(Quad) - Static method in class harpoon.Util.Util
 
quad_with_try - Variable in class harpoon.Util.BasicBlocks.BBConverter
 
QuadClassHierarchy - Class in harpoon.Analysis.Quads
QuadClassHierarchy computes a ClassHierarchy of classes possibly usable starting from some root method using quad form.
QuadClassHierarchy(Linker, Collection, HCodeFactory) - Constructor for class harpoon.Analysis.Quads.QuadClassHierarchy
Creates a ClassHierarchy of all classes reachable/usable from HMethods in the roots Collection.
QuadCounter - Class in harpoon.Analysis.Quads
QuadCounter is an harpoon.ClassFile.HCodeFactory which counts the number of quads that have been converted thus far.
QuadCounter(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.QuadCounter
Creates a new QuadCounter with hcf as its parent.
QuadFactory - Class in harpoon.IR.Quads
A QuadFactory is responsible for assigning unique numbers to the Quads in a method, and for maintaining some method-wide information (such as a pointer to the parent HCode).
QuadFactory() - Constructor for class harpoon.IR.Quads.QuadFactory
 
QuadFlowGraph - Class in harpoon.Analysis.Companions
QuadFlowGraph is an expanded flow graphs for Quads, where additional nodes are added before PHI and after SIGMA nodes to make the dataflow corresponding to the phi and sigma functions easier to express.
QuadFlowGraph(Code) - Constructor for class harpoon.Analysis.Companions.QuadFlowGraph
Creates a QuadFlowGraph.
QuadInterferenceGraph - Class in harpoon.Analysis.Quads
QuadInterferenceGraph constructs a variable-liveness interference graph from a Quad.Code.
QuadInterferenceGraph(Code) - Constructor for class harpoon.Analysis.Quads.QuadInterferenceGraph
Creates a QuadInterferenceGraph.
QuadInterferenceGraph(Code, Liveness<Quad>) - Constructor for class harpoon.Analysis.Quads.QuadInterferenceGraph
 
QuadKind - Class in harpoon.IR.Quads
QuadKind is an enumerated type for the various kinds of Quads.
QuadKind() - Constructor for class harpoon.IR.Quads.QuadKind
 
QuadLiveness - Class in harpoon.Analysis.Quads
QuadLiveness performs live variable analysis for a given HCode.
QuadLiveness(HCode<Quad>) - Constructor for class harpoon.Analysis.Quads.QuadLiveness
Creates a QuadLiveness.
quadMap(Quad) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
quadMap() - Method in class harpoon.IR.Quads.RSSxToNoSSA
 
quadMap - Variable in class harpoon.IR.Quads.SSIRename
Map from old no-ssa quads to new ssi quads.
quadMap - Variable in class harpoon.IR.Quads.SSIToSSA
Map from old ssi quads to new ssa quads.
QuadNoSSA - Class in harpoon.IR.Quads
QuadNoSSA is a code view with explicit exception handling.
QuadNoSSA(HMethod, Quad) - Constructor for class harpoon.IR.Quads.QuadNoSSA
 
QuadRSSx - Class in harpoon.IR.Quads
Quads.QuadRSSx is a code view in relaxed SSI form.
QuadRSSx(HMethod, Quad) - Constructor for class harpoon.IR.Quads.QuadRSSx
Create a new code object given a quadruple representation of the method instructions.
quads - Variable in class harpoon.IR.Quads.Code
The quadruples composing this code view.
quadSet(Quad) - Method in class harpoon.Analysis.EventDriven.ContCode
 
quadSet(Quad) - Method in class harpoon.Analysis.EventDriven.ContCodeNoSSA
 
quadSet(Quad) - Method in class harpoon.Analysis.EventDriven.ContCodeSSI
 
QuadSSA - Class in harpoon.IR.Quads
Quads.QuadSSA is a code view in SSA form.
QuadSSA(QuadSSI) - Constructor for class harpoon.IR.Quads.QuadSSA
Creates a Code object from a bytecode object.
QuadSSA(HMethod, Quad) - Constructor for class harpoon.IR.Quads.QuadSSA
Create a new code object given a quadruple representation of the method instructions.
QuadSSI - Class in harpoon.IR.Quads
Quads.QuadSSI is a code view in SSI form.
QuadSSI(QuadNoSSA) - Constructor for class harpoon.IR.Quads.QuadSSI
Creates a Code object from a bytecode object.
QuadSSI(ResilientNoSSA) - Constructor for class harpoon.IR.Quads.QuadSSI
Creates a Code object from a resilient-no-ssa object.
QuadSSI(HMethod, Quad) - Constructor for class harpoon.IR.Quads.QuadSSI
Create a new code object given a quadruple representation of the method instructions.
quadToBB - Variable in class harpoon.Analysis.FCFGBasicBlock.Factory
 
QuadValueVisitor<T> - Class in harpoon.IR.Quads
QuadValueVisitor is a visitor class that returns a (parameterized) value.
QuadValueVisitor() - Constructor for class harpoon.IR.Quads.QuadValueVisitor
 
QuadVisitor - Class in harpoon.IR.Quads
QuadVisitor is a Design Pattern, courtesy of Martin.
QuadVisitor() - Constructor for class harpoon.IR.Quads.QuadVisitor
 
QuadWithTry - Class in harpoon.IR.Quads
QuadWithTry is a code view with explicit try-block handlers.
QuadWithTry(HMethod, Quad) - Constructor for class harpoon.IR.Quads.QuadWithTry
 
QuantaChecker - Class in harpoon.Analysis.Realtime
 
QuantaChecker(HCodeFactory) - Constructor for class harpoon.Analysis.Realtime.QuantaChecker
 
query(HCE) - Method in class harpoon.Analysis.AllocationInformationMap
Return the AllocationProperties for the given allocationSite.
query(Quad) - Method in class harpoon.Analysis.DefaultAllocationInformation
Return an AllocationProperties object for the given allocation site.
query(Quad) - Method in class harpoon.Analysis.DefaultAllocationInformationMap
Returns the AllocationProperties for an allocation site.
query(HCE) - Method in interface harpoon.Analysis.Maps.AllocationInformation
Query the properties of the allocation at the specified site.
query(HCodeElement) - Method in class harpoon.Analysis.PointerAnalysis.MAInfo
Returns the allocation policy for allocationSite.
QUESTION - Static variable in class harpoon.Tools.Annotation.Sym
 

R

r - Variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
The set of normally returned objects
ra - Variable in class harpoon.Analysis.Instr.EqTempSets
 
raiseValue(CFGEdge, Set) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
RANGE_DEBUG - Static variable in class harpoon.Analysis.MemOpt.PreallocOpt
If true, we do not preallocate allocation sites whose unique identifier is not between lowBound and highBound.
RANGLE - Static variable in class harpoon.Tools.PatMat.Sym
 
Raw - Class in harpoon.Main
Raw prints out the raw data structures from the class file corresponding to the class name given on the command-line.
Raw() - Constructor for class harpoon.Main.Raw
 
RBRACE - Static variable in class harpoon.Tools.Annotation.Sym
 
RBRACE - Static variable in class harpoon.Tools.PatMat.Sym
 
RBRACK - Static variable in class harpoon.Tools.Annotation.Sym
 
RBRACK - Static variable in class harpoon.Tools.PatMat.Sym
 
RCTransformer - Class in harpoon.Analysis.PreciseGC
RCTransformer transforms recursive constructors that build their data structures in a top-down fashion into methods that build their data structures in a bottom-up fashion.
RCTransformer(HCodeFactory, ClassHierarchy, Linker) - Constructor for class harpoon.Analysis.PreciseGC.RCTransformer
Creates a RCTransformer.
RCVR - Static variable in class harpoon.Analysis.PreciseGC.MRA.MRAToken
 
reach - Static variable in class harpoon.Analysis.PA2.Mutation.MLabel
 
Reachable<HCE extends HCodeElement> - Class in harpoon.Analysis
Reachable
Reachable(HCode<HCE>) - Constructor for class harpoon.Analysis.Reachable
 
Reachable(HCode<HCE>, CFGrapher<HCE>) - Constructor for class harpoon.Analysis.Reachable
 
reachable - Variable in class harpoon.Analysis.Reachable
 
reachable_from_excp - Variable in class harpoon.Analysis.PointerAnalysis.PointsToGraph
 
reachableInstrs() - Method in class harpoon.Analysis.Instr.RegAlloc
Iterates over a view of the code which skips over instrs that are not in our basic block set.
reachableNodes(Set) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Computes the set of nodes reachable from nodes in roots through paths that use inside and outside edges.
reachFromStat - Static variable in class harpoon.Analysis.PA2.Mutation.MLabel
 
ReachingDefs - Class in harpoon.Analysis.DataFlow
ReachingDefs is a ForwardDataFlowBasicBlockVisitor for performing reaching definitions analysis on any IR that implements HCodeElement, CFGraphable, and UseDefable.
ReachingDefs() - Constructor for class harpoon.Analysis.DataFlow.ReachingDefs
 
ReachingDefs<HCE extends HCodeElement> - Class in harpoon.Analysis
ReachingDefs defines an abstract class for analyzing reaching definitions.
ReachingDefs(HCode<HCE>) - Constructor for class harpoon.Analysis.ReachingDefs
Creates a ReachingDefs object for the provided HCode.
reachingDefs(HCE, Temp) - Method in class harpoon.Analysis.ReachingDefs
Returns the Set of HCodeElements providing definitions of Temp t which reach HCodeElement hce.
reachingDefs(HCE, Temp) - Method in class harpoon.Analysis.ReachingDefsAltImpl
Returns the Set of HCodeElements providing definitions of Temp t which reach HCodeElement hce.
reachingDefs(HCE, Temp) - Method in class harpoon.Analysis.ReachingDefsCachingImpl
Returns the Set of HCodeElements providing definitions of Temp t which reach HCodeElement hce.
reachingDefs(HCE, Temp) - Method in class harpoon.Analysis.ReachingDefsImpl
Returns the Set of HCodeElements providing definitions of Temp t which reach HCodeElement hce.
reachingDefs(HCE, Temp) - Method in class harpoon.Analysis.SSxReachingDefsImpl
 
ReachingDefsAltImpl<HCE extends HCodeElement> - Class in harpoon.Analysis
ReachingDefsAltImpl
ReachingDefsAltImpl(HCode<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsAltImpl
Creates a ReachingDefsImpl object for the provided HCode using CFGrapher.DEFAULT and UseDefer.DEFAULT.
ReachingDefsAltImpl(HCode<HCE>, CFGrapher<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsAltImpl
Creates a ReachingDefsImpl object for the provided HCode for an IR implementing UseDefable using the provided CFGrapher.
ReachingDefsAltImpl(HCode<HCE>, CFGrapher<HCE>, UseDefer<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsAltImpl
Creates a ReachingDefsImpl object for the provided HCode using the provided CFGrapher and UseDefer.
ReachingDefsCachingImpl<HCE extends HCodeElement> - Class in harpoon.Analysis
ReachingDefsCachingImpl is an extension of ReachingDefsImpl that keeps a BasicBlock local cache mapping Temp:t -> HCodeElement:h -> Set:s where s is the result of calling reachingDefs(h, t).
ReachingDefsCachingImpl(HCode<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsCachingImpl
Creates a ReachingDefsCachingImpl.
ReachingDefsCachingImpl(HCode<HCE>, CFGrapher<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsCachingImpl
Creates a ReachingDefsCachingImpl.
ReachingDefsCachingImpl(HCode<HCE>, CFGrapher<HCE>, UseDefer<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsCachingImpl
Creates a ReachingDefsCachingImpl.
ReachingDefsImpl<HCE extends HCodeElement> - Class in harpoon.Analysis
ReachingDefsImpl defines an implementation for analyzing reaching definitions.
ReachingDefsImpl(HCode<HCE>, CFGrapher<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsImpl
Creates a ReachingDefsImpl object for the provided HCode for an IR implementing UseDefable using the provided CFGrapher.
ReachingDefsImpl(HCode<HCE>, CFGrapher<HCE>, UseDefer<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsImpl
Creates a ReachingDefsImpl object for the provided HCode using the provided CFGrapher and UseDefer.
ReachingDefsImpl(HCode<HCE>) - Constructor for class harpoon.Analysis.ReachingDefsImpl
Creates a ReachingDefsImpl object for the provided HCode using CFGrapher.DEFAULT.
ReachingHCodeElements - Class in harpoon.Analysis.DataFlow
ReachingHCodeElements is an extension of ReachingDefs for performing reaching definitions analysis on HCodeElementss.
ReachingHCodeElements(BasicBlock.Factory) - Constructor for class harpoon.Analysis.DataFlow.ReachingHCodeElements
Constructs a new ReachingHCodeElements for the basic blocks in the supplied BasicBlock.Factory.
ReachingHCodeElements(BasicBlock.Factory, SetFactory) - Constructor for class harpoon.Analysis.DataFlow.ReachingHCodeElements
Constructs a new ReachingHCodeElements for the basic blocks in the supplied BasicBlock.Factory.
read(ClassFile, ClassDataInputStream) - Static method in class harpoon.IR.RawClass.Attribute
Read an Attribute from a ClassDataInputStream.
read(ClassDataInputStream) - Method in class harpoon.IR.RawClass.ClassFile
 
read(ClassFile, ClassDataInputStream) - Static method in class harpoon.IR.RawClass.Constant
Read a single Constant item from an input class bytecode file, and return an object instance corresponding to it.
read(ClassFile, ClassDataInputStream) - Method in class harpoon.IR.RawClass.FieldInfo
Read a single FieldInfo item from an input class bytecode file.
read(ClassFile, ClassDataInputStream) - Method in class harpoon.IR.RawClass.MethodInfo
Read a single MethodInfo item from an input class bytecode file.
read() - Method in class harpoon.Tools.Annotation.Lex.EscapedUnicodeReader
 
read(char[], int, int) - Method in class harpoon.Tools.Annotation.Lex.EscapedUnicodeReader
 
read_u1() - Method in class harpoon.IR.RawClass.ClassDataInputStream
Read an unsigned one-byte quantity, high byte first.
read_u2() - Method in class harpoon.IR.RawClass.ClassDataInputStream
Read an unsigned two-byte quantity, high byte first.
read_u4() - Method in class harpoon.IR.RawClass.ClassDataInputStream
Read an unsigned four-byte quantity, high byte first.
readResolve() - Method in class harpoon.Analysis.Transformation.MethodSplitter.Token
This method must be overridden to ensure that Tokens are still singletons after deserialization.
readResource(String, ParseUtil.StringParser) - Static method in class harpoon.Util.ParseUtil
Reads from the given resource, ignoring '#' comments and blank lines, obeying 'include' directives, and invoking the given StringParser on any other lines.
readUnsignedInt() - Method in class harpoon.IR.RawClass.ClassDataInputStream
Supplies the mysterious missing method from the standard DataInputStream superclass.
ready() - Method in class harpoon.Tools.Annotation.Lex.EscapedUnicodeReader
 
real_action() - Method in class harpoon.Analysis.MemOpt.PreallocOpt.QuadPass
 
real_action() - Method in class harpoon.Analysis.MemOpt.PreallocOpt.TreePass
 
real_action() - Method in class harpoon.Analysis.PA2.AllocSync.WPAllocSyncCompStage
 
real_action() - Method in class harpoon.Analysis.PA2.Mutation.WPMutationAnalysisCompStage
 
real_action() - Method in class harpoon.Analysis.PA2.WPPointerAnalysisCompStage
 
real_action() - Method in class harpoon.Analysis.PointerAnalysis.AllocSyncOptCompStage
 
real_action() - Method in class harpoon.Analysis.PointerAnalysis.PARTJSupportCompStage
 
real_action() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
 
real_action() - Method in class harpoon.Analysis.Realtime.Realtime.QuadPass
 
real_action() - Method in class harpoon.Analysis.Realtime.Realtime.TreePass
 
real_action() - Method in class harpoon.Main.CompilerStageEZ
 
real_action() - Method in class harpoon.Main.DynamicSyncRemoval.QuadPass
 
real_action() - Method in class harpoon.Main.DynamicSyncRemoval.TreePass
 
real_action() - Method in class harpoon.Main.EventDrivenTransformation.QuadPass1
 
real_action() - Method in class harpoon.Main.EventDrivenTransformation.QuadPass2
 
real_action() - Method in class harpoon.Main.MIPSOptimizations.QuadPass
 
real_action() - Method in class harpoon.Main.MIPSOptimizations.TreePass
 
real_action() - Method in class harpoon.Main.MZFCompilerStage
 
real_action() - Method in class harpoon.Main.RoleInference
 
real_action() - Method in class harpoon.Main.Transactions.QuadPass
 
real_action() - Method in class harpoon.Main.Transactions.TreePass
 
real_action() - Method in class harpoon.Main.WriteBarriers.DynamicWBQuadPass
 
real_action() - Method in class harpoon.Main.WriteBarriers.WBDynamicWBTreePass
 
real_action() - Method in class harpoon.Main.WriteBarriers.WBQuadPass
 
REAL_POINTER_ANALYSIS - Static variable in class harpoon.Analysis.Realtime.Realtime
More complicated pointer analysis to determine which checks to remove.
Realtime - Class in harpoon.Analysis.Realtime
Realtime is the top-level access point for the rest of the Harpoon compiler to provide support for the Realtime Java MemoryArea extensions described in the Realtime Java Specification and there's also a JavaDoc version.
Realtime() - Constructor for class harpoon.Analysis.Realtime.Realtime
 
Realtime.QuadPass - Class in harpoon.Analysis.Realtime
 
Realtime.QuadPass() - Constructor for class harpoon.Analysis.Realtime.Realtime.QuadPass
 
Realtime.TreePass - Class in harpoon.Analysis.Realtime
 
Realtime.TreePass() - Constructor for class harpoon.Analysis.Realtime.Realtime.TreePass
 
REALTIME_JAVA - Static variable in class harpoon.Analysis.Realtime.Realtime
Is Realtime JAVA support turned on?
REALTIME_THREADS - Static variable in class harpoon.Analysis.Realtime.Realtime
Add support for realtime threads
REALTIME_THREADS_PREEMPT - Static variable in class harpoon.Analysis.Realtime.Realtime
Add support for CheckQuanta
RealtimeAllocationStrategy - Class in harpoon.Analysis.Realtime
RealtimeAllocationStrategy makes all memory allocations to go through RTJ_malloc.
RealtimeAllocationStrategy(Frame) - Constructor for class harpoon.Analysis.Realtime.RealtimeAllocationStrategy
Creates a RealtimeAllocationStrategy.
RealtimeRuntime - Class in harpoon.Analysis.Realtime
RealtimeRuntime is a trivial extension of harpoon.Backend.Runtime2.Runtime that allows constants to be tagged with an ImmortalMemory and emits extra const char* data for debugging purposes when Realtime.DEBUG_REF is turned on.
RealtimeRuntime(Frame, AllocationStrategy, HMethod, boolean) - Constructor for class harpoon.Analysis.Realtime.RealtimeRuntime
Create a RealtimeRuntime.
recomputeEdges() - Method in class harpoon.IR.Tree.TreeCode
This operation is not supported in non-canonical tree forms.
RECORD_ACTIONS - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Turns on the recording of the actions done by the program.
RECORD_WRITES - Static variable in class harpoon.Analysis.PA2.Flags
 
recycle - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
recycle - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
recycle - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
reduce_table() - Method in class harpoon.Tools.Annotation.Java12
access to reduce_goto table
reduce_table() - Method in class harpoon.Tools.PatMat.Parser
access to reduce_goto table
ref(TreeFactory, DerivationGenerator, Stm, Temp) - Static method in class harpoon.Backend.Analysis.GCTraceStore
 
referenceEqual(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, Translation.Exp) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp representing an comparison between expressions evaluating to two references, refLeft and refRight.
referenceEqual(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
REFLECTION_DATA - Static variable in class harpoon.IR.Tree.SEGMENT
R/O memory that stores reflection tables and other non-object data.
REFLECTION_OBJECTS - Static variable in class harpoon.IR.Tree.SEGMENT
R/O memory that stores reflection data objects.
RegAlloc - Class in harpoon.Analysis.Instr
RegAlloc performs Register Allocation for a set of Instrs in a Backend.Generic.Code.
RegAlloc(Code) - Constructor for class harpoon.Analysis.Instr.RegAlloc
Creates a RegAlloc.
RegAlloc - Class in harpoon.Backend.CSAHack.RegAlloc
Register allocation module.
RegAlloc(Frame, Code, Instr, DerivationGenerator) - Constructor for class harpoon.Backend.CSAHack.RegAlloc.RegAlloc
Allocate the temporaries defined and used in an Assem.InstrList to machine registers defined in a Frame.
RegAlloc.Factory - Class in harpoon.Analysis.Instr
 
RegAlloc.Factory() - Constructor for class harpoon.Analysis.Instr.RegAlloc.Factory
 
RegAlloc.IntermediateCode - Interface in harpoon.Analysis.Instr
IntermediateCode is a code which has been register allocated but the architecture-specific spill instructions and method prologue/epilogue have not been inserted yet.
RegAlloc.IntermediateCodeFactory - Interface in harpoon.Analysis.Instr
IntermediateCodeFactory is an HCodeFactory that is guaranteed to produce IntermediateCodes.
RegAlloc.RestoreProxy - Class in harpoon.Analysis.Instr
 
RegAlloc.SpillLoad - Class in harpoon.Analysis.Instr
Class for RegAlloc usage in loading registers.
RegAlloc.SpillProxy - Class in harpoon.Analysis.Instr
 
RegAlloc.SpillStore - Class in harpoon.Analysis.Instr
Class for RegAlloc usage in spilling registers.
regAllocLocalWords(int) - Method in class harpoon.Backend.MIPS.StackInfo
On top (highest address) of the MIPS stack frame are the locals/temporaries This isn't a great interface, but it is the info we get from RegAlloc.
RegAllocOpts - Class in harpoon.Analysis.Instr
RegAllocOpts encapsulates a set of modifications to how register allocation will be performed on a particular set of methods.
RegAllocOpts(String) - Constructor for class harpoon.Analysis.Instr.RegAllocOpts
Creates a RegAllocOpts.
regAllocUsedRegs(ArrayList) - Method in class harpoon.Backend.MIPS.StackInfo
Give the stack frame model the array of used callee saved registers.
regDerivations - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
regDerivations() - Method in class harpoon.Backend.Generic.GCInfo.GCPoint
Returns an unmodifiable Map of live derived pointers in WrappedMachineRegLocs to the derivation information in the form of DLocs for that GC point
RegFileInfo - Class in harpoon.Backend.Generic
RegFileInfo defines an interface that general program analyses can call to find out architecture specific information about the target machine's register file.
RegFileInfo() - Constructor for class harpoon.Backend.Generic.RegFileInfo
Creates a RegFileInfo.
RegFileInfo - Class in harpoon.Backend.MIPS
RegFileInfo encapsulates information about the MIPS register set.
RegFileInfo() - Constructor for class harpoon.Backend.MIPS.RegFileInfo
Creates a RegFileInfo.
RegFileInfo - Class in harpoon.Backend.Sparc
RegFileInfo contains architecture specific information about the registers for the Sparc architecture.
RegFileInfo(TempBuilder) - Constructor for class harpoon.Backend.Sparc.RegFileInfo
 
RegFileInfo - Class in harpoon.Backend.StrongARM
RegFileInfo encapsulates information about the StrongARM register set.
RegFileInfo() - Constructor for class harpoon.Backend.StrongARM.RegFileInfo
Creates a RegFileInfo.
RegFileInfo.CommonLoc - Interface in harpoon.Backend.Generic
Common super class for StackOffsetLoc and MachineRegLoc.
RegFileInfo.MachineRegLoc - Interface in harpoon.Backend.Generic
Represents Machine Register Temps.
RegFileInfo.SpillException - Exception in harpoon.Backend.Generic
SpillException tells a register allocator which Temps are appropriate for spilling in order to allocate space for another Temp.
RegFileInfo.SpillException() - Constructor for exception harpoon.Backend.Generic.RegFileInfo.SpillException
 
RegFileInfo.SpillException(String) - Constructor for exception harpoon.Backend.Generic.RegFileInfo.SpillException
 
RegFileInfo.StackOffsetLoc - Interface in harpoon.Backend.Generic
Represents Stack Offset Temps.
RegFileInfo.TempLocator - Interface in harpoon.Backend.Generic
Defines function from (Temp x DefPoint) -> Set of CommonLoc.
regIndex() - Method in class harpoon.Backend.Generic.GCInfo.WrappedMachineRegLoc
Returns the abstract index of underlying MachineRegLoc in the register file.
regIndex() - Method in interface harpoon.Backend.Generic.RegFileInfo.MachineRegLoc
Returns the index of this in the register file.
regIndex() - Method in interface harpoon.Backend.Maps.BackendDerivation.Register
Returns the index of this register in the machine register file.
REGISTER - Static variable in class harpoon.Backend.MIPS.StackInfo
 
registerAssigned(Instr, Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.Code
 
registerAssigned(Instr, Temp) - Method in class harpoon.Backend.Generic.Code
Checks if pseudoReg has been assigned to some registers in i.
Registration - Class in harpoon.IR
Registration takes care of registering 'well-known' intermediate representations.
Registration() - Constructor for class harpoon.IR.Registration
 
regLocs - Variable in class harpoon.Backend.Generic.GCInfo.DLoc
Arrays of base pointer locations
regSigns - Variable in class harpoon.Backend.Generic.GCInfo.DLoc
Arrays of booleans
REGSTACKSPLIT - Static variable in class harpoon.Backend.MIPS.StackInfo
 
regTempFactory() - Method in class harpoon.Backend.MIPS.RegFileInfo
 
regTempFactory() - Method in class harpoon.Backend.Sparc.RegFileInfo
 
RegUseDefer - Class in harpoon.Backend.Generic
RegUseDefer performs a Temp -> Register mapping on Backend Codes.
RegUseDefer(Code) - Constructor for class harpoon.Backend.Generic.RegUseDefer
Creates a RegUseDefer.
Relation - Interface in harpoon.Analysis.PointerAnalysis
Relation is a mathematical relation, accepting one to many and many to one mappings.
RelationEntryVisitor - Interface in harpoon.Analysis.PointerAnalysis
RelationEntryVisitor is a wrapper for a function that is called on a relation entry of the form <key,value>.
RelationImpl - Class in harpoon.Analysis.PointerAnalysis
RelationImpl is a heavy-weight implementation of the Relation interface: it is basically a Hashtable from keys to HashSet's of values.
RelationImpl() - Constructor for class harpoon.Analysis.PointerAnalysis.RelationImpl
Creates an empty Relation.
releaseClassHierarchy() - Static method in class harpoon.Analysis.PA2.TypeFilter
 
relink(HClass, HClass) - Method in class harpoon.ClassFile.Relinker
Globally replace all references to oldClass with references to newClass, which may or may not have the same name.
Relinker - Class in harpoon.ClassFile
A Relinker object is a Linker where one can globally replace references to a certain class with references to another, different, class.
Relinker(Linker) - Constructor for class harpoon.ClassFile.Relinker
Creates a Relinker.
REM - Static variable in class harpoon.IR.Tree.Bop
Remainder operation.
REM - Static variable in class harpoon.Tools.PatMat.Sym
 
remove() - Method in class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
remove(Set) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
remove(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
remove(Object) - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Removes the mapping previously attached to key.
remove(Set) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
remove(Set) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
remove(Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Remove all the PANodes that appear in set from this object.
remove(Set) - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Removes the nodes from nodes from this graph.
remove(Set) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Remove all the PANodes that appear in set from this thread map.
remove() - Method in class harpoon.Analysis.PointerAnalysis.PAWorkList
 
remove() - Method in class harpoon.Analysis.PointerAnalysis.PAWorkSet
 
remove() - Method in class harpoon.Analysis.PointerAnalysis.PAWorkStack
 
remove(Set) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Remove all the PANodes that appear in set from this points-to graph.
remove(Object, Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Removes the relation between key and value.
remove(Object, Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
remove() - Method in class harpoon.IR.Assem.Instr
Removes this from its current place in the instruction layout.
remove(HCE, Temp) - Method in class harpoon.IR.LowQuad.DerivationMap
Remove all type and derivation mappings for the given Temp defined at the given HCodeElement.
remove(int) - Method in class harpoon.IR.Quads.FOOTER
Remove an attachment from this FOOTER by replacing the footer.
remove(Quad) - Method in interface harpoon.IR.Quads.HANDLER.ProtectedSet
Remove a quad from the protected set.
remove() - Method in class harpoon.IR.Quads.Quad
Remove this quad from the graph.
remove(Stm) - Method in class harpoon.IR.Tree.Code
Removes the specified Stm from the tree in which it resides.
remove(Exp) - Method in class harpoon.IR.Tree.DerivationGenerator
Remove all type and derivation mappings for the given Tree.Exp.
remove() - Method in class harpoon.Util.ArrayIterator
 
remove(Object) - Method in class harpoon.Util.BinHeapPriorityQueue
 
remove() - Method in class harpoon.Util.CloneableIterator
 
REMOVE_TAGS - Static variable in class harpoon.Analysis.Realtime.Realtime
Remove tagging when you remove all checks?
removeAll(Object, Collection) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
removeAll(Object, Collection) - Method in class harpoon.Analysis.PointerAnalysis.LightRelation
 
removeAll(Object, Collection) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Removes the relation between key and any element from values.
removeAll(Object, Collection) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
removeAllInterfaces() - Method in interface harpoon.ClassFile.HClassMutator
 
removeAssignment(Instr, Temp) - Method in class harpoon.Backend.Generic.Code
 
removeClassInitializer(HInitializer) - Method in interface harpoon.ClassFile.HClassMutator
 
removeColor() - Method in class harpoon.Analysis.GraphColoring.ColorFactory
Factory downsizer.
removeConstructor(HConstructor) - Method in interface harpoon.ClassFile.HClassMutator
 
removeDeclaredField(HField) - Method in interface harpoon.ClassFile.HClassMutator
 
removeDeclaredMethod(HMethod) - Method in interface harpoon.ClassFile.HClassMutator
 
removeDummies() - Method in class harpoon.Analysis.Partition.WeightedGraph
 
removeEdge(WGNode) - Method in class harpoon.Analysis.Partition.WGNode
 
removeEdge(Temp, PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
removeEdge(PANode, String, PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
removeEdge(Temp, PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
removeEdge(PANode, String, PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
removeEdge(Temp, PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
removeEdge(PANode, String, PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
removeEdge(E) - Method in class harpoon.Util.Collections.AbstractGraph
 
removeEdge(E) - Method in interface harpoon.Util.Collections.MutableGraph
Remove the given edge from the graph.
removeEdges() - Method in class harpoon.Analysis.Partition.WGNode
 
removeEdges(Temp) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
removeEdges(PANode, String) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
removeEdges(PANode) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
removeEdges(Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Removes all the information related to ld actions using the edges from edges.
removeEdges(Set) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Removes all the information related to edges from edges.
removeEdges(Temp) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
removeEdges(PANode, String) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
removeEdges(PANode) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
removeEdges(Temp) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
removeEdges(PANode, String) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
removeEdges(PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
removeEmptyLoads() - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Simplify this parallel interaction graph by removing the loads that don't escape anywhere (and hence, don't represent any object).
removeExceptionType(HClass) - Method in interface harpoon.ClassFile.HMethodMutator
 
removeHandlers(HandlerSet) - Method in class harpoon.IR.Quads.Quad
Remove this quad from the given handler sets.
removeIncomingEdge(WGNode) - Method in class harpoon.Analysis.Partition.WGNode
 
removeIncomingEdges() - Method in class harpoon.Analysis.Partition.WGNode
 
removeInterface(HClass) - Method in interface harpoon.ClassFile.HClassMutator
 
removeKey(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
removeKey(Object) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelationMapBased
 
removeKey(Object) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Removes all the relations attached to key.
removeKey(Object) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
removeKeys(PredicateWrapper) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
removeKeys(PredicateWrapper) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Removes all the keys that satisfy predicate.check().
removeKeys(PredicateWrapper) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
removeMethodHole(PANode, HMethod) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
The dual of addMethodHole
removeMethodHoles(Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
The methods from the set good_holes are unharmful to the specific application that uses the pointer analysis.
removeModifiers(int) - Method in interface harpoon.ClassFile.HClassMutator
 
removeModifiers(int) - Method in interface harpoon.ClassFile.HFieldMutator
Remove the modifiers specified by m from the field.
removeModifiers(int) - Method in interface harpoon.ClassFile.HMethodMutator
 
removeNode(WGNode) - Method in class harpoon.Analysis.Partition.WeightedGraph
 
removeNodeHole(PANode, PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
The dual of addNodeHole
removeNodeHoleFromAll(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Removes a node hole from all the nodes: esc(n) = esc(n) - {n_hole} for all n.
removeNodes(Set) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Removes all the information related to edges containing nodes from nodes.
removeNodes(Set) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Removes all the information related to edges containing nodes from nodes.
removeObjects(PredicateWrapper) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
removeObjects(PredicateWrapper) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Removes all the relations involving at least one object that satisfy predicate.check().
removeObjects(PredicateWrapper) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
removeOutgoingEdge(WGNode) - Method in class harpoon.Analysis.Partition.WGNode
 
removeOutgoingEdges() - Method in class harpoon.Analysis.Partition.WGNode
 
removePhi(int) - Method in class harpoon.IR.Quads.PHI
Deprecated. does not preserve immutability.
removePred(int) - Method in class harpoon.IR.Quads.PHI
Deprecated. does not preserve immutability.
removeSigma(int) - Method in class harpoon.IR.Quads.SIGMA
Deprecated. Does not preserve immutability.
removeValues(PredicateWrapper) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
removeValues(PredicateWrapper) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Removes all the values that satisfy predicate.check().
removeValues(PredicateWrapper) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.Analysis.Instr.InstrMOVEproxy
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.Analysis.Instr.RegAlloc.RestoreProxy
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.Analysis.Instr.RegAlloc.SpillProxy
 
rename(Derivation.DList, TempMap) - Static method in class harpoon.Analysis.Maps.Derivation.DList
Returns a new DList with the Temps renamed by the supplied mapping
rename(TempMap) - Method in class harpoon.IR.Assem.Instr
Create a new Instr identical to the receiver, but with all Temps renamed according to the given mappings.
rename(TempMap, TempMap) - Method in class harpoon.IR.Assem.Instr
Create a new Instr identical to the receiver, but with all Temps renamed according to the given mappings.
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.Instr
Create a new Instr identical to the receiver, but with all Temps renamed according to the given mappings.
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.InstrCALL
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.InstrDIRECTIVE
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.InstrJUMP
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.InstrLABEL
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.InstrMEM
 
rename(InstrFactory, TempMap, TempMap) - Method in class harpoon.IR.Assem.InstrMOVE
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PAOFFSET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PARRAY
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PCALL
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PFCONST
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PFIELD
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PFOFFSET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PGET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PMCONST
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PMETHOD
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PMOFFSET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.POPER
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.LowQuad.PSET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.AGET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.ALENGTH
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.ANEW
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.ARRAYINIT
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.ASET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.CALL
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.CJMP
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.COMPONENTOF
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.CONST
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.DEBUG
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.FOOTER
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.GET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.HANDLER
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.HEADER
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.INSTANCEOF
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.LABEL
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.METHOD
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.MONITORENTER
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.MONITOREXIT
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.MOVE
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.NEW
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.NOP
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.OPER
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.PHI
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.Quad
Create a new Quad identical to the receiver, but with all Temps renamed according to a mapping.
rename(TempMap, TempMap) - Method in class harpoon.IR.Quads.Quad
Create a new Quad identical to the receiver, but with all Temps renamed according to a mapping.
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.RETURN
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.SET
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.SWITCH
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.THROW
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.TYPECAST
 
rename(QuadFactory, TempMap, TempMap) - Method in class harpoon.IR.Quads.TYPESWITCH
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.ALIGN
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.BINOP
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.CALL
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.CJUMP
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.CONST
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.DATUM
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.ESEQ
 
rename(ExpList, TreeFactory, TempMap, Tree.CloneCallback) - Static method in class harpoon.IR.Tree.ExpList
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.EXPR
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.JUMP
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.LABEL
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.MEM
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.METHOD
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.MOVE
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.NAME
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.NATIVECALL
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.RETURN
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.SEGMENT
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.SEQ
 
rename(StmList, TreeFactory, TempMap, Tree.CloneCallback) - Static method in class harpoon.IR.Tree.StmList
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.TEMP
 
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.THROW
 
rename(TempMap) - Method in class harpoon.IR.Tree.Tree
Rename while cloning a subtree.
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.Tree
Rename while cloning a subtree.
rename(TreeFactory, TempMap, Tree.CloneCallback) - Method in class harpoon.IR.Tree.UNOP
 
replace() - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Replaces the last hidden node into the graph.
replace() - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Replaces the last hidden node into the graph.
replace(Instr, Instr) - Method in class harpoon.Analysis.Instr.GraphColoringRegAlloc
 
replace(Instr, Instr) - Method in class harpoon.Analysis.Instr.RegAlloc
replaces 'orig' with 'repl', and modifies internal data structures to reflect that replacement as necessary.
replace(Instr, Instr) - Static method in class harpoon.IR.Assem.Instr
 
replace(Quad, Quad) - Static method in class harpoon.IR.Quads.Quad
Replace one quad with another.
replace(ExpList, Exp, Exp) - Static method in class harpoon.IR.Tree.ExpList
 
replace(Tree) - Method in class harpoon.IR.Tree.Tree
Replace the tree rooted at this with a new tree.
replaceAll() - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Replaces all hidden nodes in graph.
replaceAll() - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Replaces all hidden nodes in graph.
replaceInstrList(Instr, List) - Static method in class harpoon.IR.Assem.Instr
Replaces oldi in the Instruction Stream with newis.
report() - Static method in class harpoon.Runtime.Counters
Report counter values to System.err, using reflection to discover all fields starting with "COUNTER_".
report_error(String, Symbol) - Method in class harpoon.Tools.Annotation.Java12
 
report_error(String, Symbol) - Method in class harpoon.Tools.PatMat.Parser
 
repToReg - Variable in class harpoon.Analysis.Instr.EqTempSets
 
REQUIRE_ORDER - Static variable in class gnu.getopt.Getopt
Describe how to deal with options that follow non-option ARGV-elements.
REQUIRED_ARGUMENT - Static variable in class gnu.getopt.LongOpt
Constant value used for the "has_arg" constructor argument.
requiresHandler(CALL) - Method in class harpoon.Backend.PreciseC.IdentifyNoHandler
 
reset(HMethod, TempFactory, boolean, CALL) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
resetColors() - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Reverts the graph's color mapping to its initial state.
resetColors() - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Reverts the graph to an uncolored state.
resetGraph() - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Returns all nodes in graph to their original state.
ResilientNoSSA - Class in harpoon.IR.Quads
ResilientNoSSA is a code view with resilient exception handling.
ResilientNoSSA(HMethod, Quad) - Constructor for class harpoon.IR.Quads.ResilientNoSSA
 
resize(int) - Method in class harpoon.IR.Quads.FOOTER
Change the arity of this FOOTER by replacing it.
resolve(HClass) - Method in class harpoon.Analysis.AbstractClassFixupRelinker
 
resolve_threads(PointerAnalysis, ParIntGraph) - Static method in class harpoon.Analysis.PointerAnalysis.InterThreadPA
Do the inter-thread analysis for a method.
resolveOutstandingTemps() - Method in class harpoon.Analysis.Instr.RegAlloc
Transforms Temp references for this into appropriate offsets from the Stack Pointer in the Memory.
resourcePath(String) - Method in class harpoon.Analysis.Realtime.RealtimeRuntime
 
resourcePath(String) - Method in class harpoon.Backend.Generic.Runtime
Prefixes a runtime-specific path onto the specific resource name, so that transformations can refer to runtime-specific properties files in a uniform manner.
resourcePath(String) - Method in class harpoon.Backend.Runtime1.Runtime
 
result_id - Variable in class harpoon.Tools.PatMat.Spec.RuleExp
Identifier for return value of expression that this matches.
resultType(int) - Static method in class harpoon.IR.LowQuad.LQop
Determines the result type of an OPER.
resultType(int) - Static method in class harpoon.IR.Quads.Qop
Determines the result type of an OPER.
ret() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult.Chained
 
ret() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
Nodes returned from the method.
RET - Static variable in class harpoon.IR.Bytecode.Op
 
retex - Variable in class harpoon.IR.LowQuad.PCALL
Destination for any exception thrown by the method.
retex() - Method in class harpoon.IR.LowQuad.PCALL
Returns the Temp which will get any exception thrown by the called method, or null if exceptions are not caught.
retex - Variable in class harpoon.IR.Quads.CALL
Destination for any exception thrown by the method.
retex() - Method in class harpoon.IR.Quads.CALL
Returns the Temp which will get any exception thrown by the called method, or null if exceptions are not caught.
retex - Variable in class harpoon.Tools.PatMat.Spec.StmCall
Exception value destination expression.
retex - Variable in class harpoon.Tools.PatMat.Spec.StmThrow
The exceptional value.
retryTransaction() - Method in class harpoon.Runtime.Transactions.CommitRecord
Returns a new commit record suitable for retrying this transaction.
RETURN - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: Return node.
RETURN - Static variable in class harpoon.IR.Bytecode.Op
 
RETURN - Static variable in class harpoon.IR.Quads.QuadKind
 
RETURN - Class in harpoon.IR.Quads
RETURN objects indicate a method return, with an optional return value.
RETURN(QuadFactory, HCodeElement, Temp) - Constructor for class harpoon.IR.Quads.RETURN
Creates a RETURN representing a method return.
RETURN - Class in harpoon.IR.Tree
RETURN objects are used to represent a return from a method body.
RETURN(TreeFactory, HCodeElement, Exp) - Constructor for class harpoon.IR.Tree.RETURN
Constructor.
RETURN - Static variable in class harpoon.IR.Tree.TreeKind
 
RETURN - Static variable in class harpoon.Tools.Annotation.Sym
 
RETURN - Static variable in class harpoon.Tools.PatMat.Sym
 
RETURN_IN_ORDER - Static variable in class gnu.getopt.Getopt
RETURN_IN_ORDER is an option available to programs that were written to expect options and other ARGV-elements in any order and that care about the ordering of the two.
returnCodeStatements() - Method in class harpoon.Tools.PatMat.CodeGeneratorGenerator
 
returnDataStatements() - Method in class harpoon.Tools.PatMat.CodeGeneratorGenerator
 
retval - Variable in class harpoon.IR.LowQuad.PCALL
Destination for the method's return value; null for void methods.
retval() - Method in class harpoon.IR.LowQuad.PCALL
Returns the Temp which will hold the return value of the method, or the value null if the method returns no value.
retval - Variable in class harpoon.IR.Quads.CALL
Destination for the method's return value; null for void methods.
retval() - Method in class harpoon.IR.Quads.CALL
Returns the Temp which will hold the return value of the method, or the value null if the method returns no value.
retval - Variable in class harpoon.IR.Quads.RETURN
Return value.
retval() - Method in class harpoon.IR.Quads.RETURN
Returns the Temp which holds the method return value, or returns null if the method returns no value.
retval - Variable in class harpoon.Tools.PatMat.Spec.StmCall
Return value destination expression.
retval - Variable in class harpoon.Tools.PatMat.Spec.StmNativeCall
Return value destination expression.
retval - Variable in class harpoon.Tools.PatMat.Spec.StmReturn
Return value expression.
REUSE_LOAD_NODES - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
If true, then each time we try to load something from an escaped node that already has a few load nodes (for the field we load), we reuse the smallest existent node, instead of generating a node for that LOAD instruction.
ReversePostOrderEnumerator - Class in harpoon.Analysis.DataFlow
 
ReversePostOrderEnumerator(BasicBlock) - Constructor for class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
ReversePostOrderEnumerator(Quad) - Constructor for class harpoon.Analysis.DataFlow.ReversePostOrderEnumerator
 
ReversePostOrderIterator - Class in harpoon.Analysis.DataFlow
 
ReversePostOrderIterator(BasicBlock) - Constructor for class harpoon.Analysis.DataFlow.ReversePostOrderIterator
 
revert(Relation) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
revert(Relation) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Revert this relation and store the result into the relation result.
revert(Relation) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
revQuadMap - Variable in class harpoon.IR.Quads.SSIToSSA
Map from new ssa quads to old ssi quads.
revTempMap - Variable in class harpoon.IR.Quads.SSIToSSA
Map from new ssa temps to old ssi temps.
rewriteProgram() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
rfi() - Method in class harpoon.Analysis.Instr.RegAlloc
(Helper method) Returns the RegFileInfo for the frame of the code being analyzed.
right - Variable in class harpoon.Tools.PatMat.Spec.ExpBinop
Expression on the right side of this.
rmEdge(Node, Node) - Method in class harpoon.Backend.CSAHack.Graph.Graph
 
rnd - Variable in class harpoon.Backend.Runtime1.ObjectBuilder
 
ro - Variable in class harpoon.Backend.Runtime1.ObjectBuilder
 
RoleInference - Class in harpoon.Analysis.RoleInference
RoleInference
RoleInference(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.RoleInference.RoleInference
 
RoleInference - Class in harpoon.Main
RoleInference
RoleInference() - Constructor for class harpoon.Main.RoleInference
 
root - Variable in class harpoon.Analysis.FCFGBasicBlock.Factory
 
root - Variable in class harpoon.Backend.Runtime1.Data
 
rootloop(HCode) - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis
 
rootQuad - Variable in class harpoon.IR.Quads.SSIRename
New root element (of the SSI-form graph)
rootQuad - Variable in class harpoon.IR.Quads.SSIToSSA
New root element (of the SSA-form graph)
roots() - Method in class harpoon.Analysis.DomTree
Return the roots of the (post-)dominator tree (forest).
roots - Variable in class harpoon.Main.CompilerStageEZ
 
RPAREN - Static variable in class harpoon.Tools.Annotation.Sym
 
RPAREN - Static variable in class harpoon.Tools.PatMat.Sym
 
RSHIFT - Static variable in class harpoon.Tools.Annotation.Sym
 
RSHIFTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
RSSxToNoSSA - Class in harpoon.IR.Quads
RSSxToNoSSA converts "relaxed-ssx" form into quads without phi or sigma functions.
RSSxToNoSSA(QuadFactory, Code) - Constructor for class harpoon.IR.Quads.RSSxToNoSSA
Creates a RSSxToNoSSA.
RTJ_PERF - Static variable in class harpoon.Analysis.Realtime.Realtime
Add support for RTJPerf
RULES - Static variable in class harpoon.Analysis.Tree.Canonicalize
Default canonicalization rules.
rules - Variable in class harpoon.Tools.PatMat.Spec
List of Instruction Patterns for this machine specification.
run(PrintWriter, HCodeFactory, HClass, String[], InputStream, boolean) - Static method in class harpoon.Interpret.Quads.Method
invoke a static main method, using a static state loaded from disk.
run(PrintWriter, HCodeFactory, HClass, String[], boolean) - Static method in class harpoon.Interpret.Quads.Method
invoke a static main method with no static state.
run(PrintWriter, HCodeFactory, HClass, String[]) - Static method in class harpoon.Interpret.Tree.Method
invoke a static main method with no static state.
Run - Class in harpoon.Main
Run invokes the interpreter.
Run() - Constructor for class harpoon.Main.Run
 
run_mms - Variable in class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
 
running() - Method in class harpoon.Util.Timer
Ask if the timer is currently running.
Runtime - Class in harpoon.Backend.Generic
A Generic.Runtime provides runtime-specific information to the backend.
Runtime() - Constructor for class harpoon.Backend.Generic.Runtime
 
runtime - Variable in class harpoon.Backend.Runtime1.ObjectBuilder
 
Runtime - Class in harpoon.Backend.Runtime1
Runtime1.Runtime is a no-frills implementation of the runtime abstract class.
Runtime(Frame, AllocationStrategy, HMethod, boolean) - Constructor for class harpoon.Backend.Runtime1.Runtime
Creates a new Runtime1.Runtime.
Runtime(Frame, AllocationStrategy, HMethod, boolean, ObjectBuilder.RootOracle) - Constructor for class harpoon.Backend.Runtime1.Runtime
Creates a new Runtime1.Runtime.
runtime - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
Runtime - Class in harpoon.Backend.Runtime2
Runtime2.Runtime is a no-frills implementation of the runtime abstract class.
Runtime(Frame, AllocationStrategy, HMethod, boolean) - Constructor for class harpoon.Backend.Runtime2.Runtime
 
Runtime(Frame, AllocationStrategy, HMethod, boolean, ObjectBuilder.RootOracle) - Constructor for class harpoon.Backend.Runtime2.Runtime
 
Runtime - Class in harpoon.Backend.RuntimeTiny
RuntimeTiny.Runtime is a size-optimized version of the FLEX backend.
Runtime(Frame, AllocationStrategy, HMethod, boolean) - Constructor for class harpoon.Backend.RuntimeTiny.Runtime
 
Runtime(Frame, AllocationStrategy, HMethod, boolean, ObjectBuilder.RootOracle) - Constructor for class harpoon.Backend.RuntimeTiny.Runtime
 
Runtime.ExtraClazInfo - Class in harpoon.Backend.Runtime1
provides a means for a subclass to add extra fields to DataClaz.
Runtime.ExtraClazInfo() - Constructor for class harpoon.Backend.Runtime1.Runtime.ExtraClazInfo
 
Runtime.ObjectBuilder - Class in harpoon.Backend.Generic
The ObjectBuilder constructs data tables in the IR.Tree form to represent static objects which may be needed by the runtime---primarily string constant objects.
Runtime.ObjectBuilder() - Constructor for class harpoon.Backend.Generic.Runtime.ObjectBuilder
 
Runtime.ObjectBuilder.ArrayInfo - Interface in harpoon.Backend.Generic
Information needed to build an array object.
Runtime.ObjectBuilder.Info - Interface in harpoon.Backend.Generic
General information about a built object's type and what label to use to refer to it.
Runtime.ObjectBuilder.ObjectInfo - Interface in harpoon.Backend.Generic
Information needed to build a non-array object.
Runtime.TreeBuilder - Class in harpoon.Backend.Generic
The TreeBuilder constructs bits of code in the IR.Tree form to handle various runtime-dependent tasks---primarily method and field access.
Runtime.TreeBuilder() - Constructor for class harpoon.Backend.Generic.Runtime.TreeBuilder
 
runtimeCallableMethods() - Method in class harpoon.Backend.Generic.Runtime
Return a Set of HMethods and HClasses which are referenced / callable by code in the runtime implementation (and should therefore be included in every class hierarchy).
runtimeCallableMethods() - Method in class harpoon.Backend.Runtime1.Runtime
 
RuntimeInformation - Class in harpoon.Backend.Generic
RuntimeInformation is an abstract encapsulation of analysis information about native methods as executed by a particular runtime system.
RuntimeInformation(Linker) - Constructor for class harpoon.Backend.Generic.RuntimeInformation
 
RuntimeInformation - Class in harpoon.Backend.Runtime1
RuntimeInformation
RuntimeInformation(RuntimeInformation) - Constructor for class harpoon.Backend.Runtime1.RuntimeInformation
Creates a RuntimeInformation.
RuntimeMethodCloner - Class in harpoon.Analysis.Counters
RuntimeMethodCloner creates 'shadow' copies of all non-virtual methods called in harpoon.Runtime.Counters and places them in the Counters class.
RuntimeMethodCloner(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.Counters.RuntimeMethodCloner
Creates a RuntimeMethodCloner.

S

s1 - Variable in class harpoon.Tools.PatMat.Spec.StmSeq
First statement to execute.
s2 - Variable in class harpoon.Tools.PatMat.Spec.StmSeq
Second statement to execute.
sa - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
SA_MAX_LINE - Static variable in class harpoon.Analysis.PA2.AllocSync.ASFlags
 
SA_MIN_LINE - Static variable in class harpoon.Analysis.PA2.AllocSync.ASFlags
 
safeCopy(ArrayFactory<T>, T[]) - Static method in class harpoon.Util.Util
Copy an array type to prevent modification.
SALOAD - Static variable in class harpoon.IR.Bytecode.Op
 
SAMain - Class in harpoon.Main
SAMain is the entry point for most of the analyses and optimizations implemented in Flex.
SAMain() - Constructor for class harpoon.Main.SAMain
 
SASTORE - Static variable in class harpoon.IR.Bytecode.Op
 
SAVE_MEMORY - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Turns on the save memory mode.
scan() - Method in class harpoon.Tools.Annotation.Java12
scan to get the next Symbol
scan() - Method in class harpoon.Tools.PatMat.Parser
scan to get the next Symbol
SCCAnalysis - Class in harpoon.Analysis.Quads.SCC
SCCAnalysis implements Sparse Conditional Constant Propagation, with extensions to allow type and bitwidth analysis.
SCCAnalysis(HCode, UseDefMap) - Constructor for class harpoon.Analysis.Quads.SCC.SCCAnalysis
Creates a SCC.
SCCAnalysis(HCode) - Constructor for class harpoon.Analysis.Quads.SCC.SCCAnalysis
Creates a SCC, and uses UseDef for the UseDefMap.
SCCLBBFactory - Class in harpoon.Util.LightBasicBlocks
SCCLBBFactory computes the topologically sorted component graph of the light basic blocks containing the code of a method.
SCCLBBFactory(LBBConverter) - Constructor for class harpoon.Util.LightBasicBlocks.SCCLBBFactory
Creates a SCCLBBFactory.
SCCOptimize - Class in harpoon.Analysis.Quads.SCC
SCCOptimize optimizes the code after SCCAnalysis.
SCCOptimize(TypeMap, ConstMap, ExecMap) - Constructor for class harpoon.Analysis.Quads.SCC.SCCOptimize
Creates an SCCOptimize.
SCCOptimize(SCCAnalysis) - Constructor for class harpoon.Analysis.Quads.SCC.SCCOptimize
 
sccSolver(Iterator, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.InstrSolver
 
sccToString(SCComponent<MetaMethod>, MetaCallGraph) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
Pretty print debug function for SCC's of MetaMethods.
score(HMethod, SmallMethodInliner.IntMap, MultiMap) - Method in class harpoon.Analysis.Quads.ArrayCopyInliner
 
score(HMethod, SmallMethodInliner.IntMap, MultiMap) - Method in class harpoon.Analysis.Quads.SmallMethodInliner
Override this if you want to define your own scoring function for inlining methods.
seenList - Static variable in class harpoon.Analysis.Realtime.HeapCheckAdder
Have I already dealt with this instruction?
SEGMENT - Class in harpoon.IR.Tree
The SEGMENT class is used to mark the beginning of a new section of memory.
SEGMENT(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.SEGMENT
Class constructor.
SEGMENT - Static variable in class harpoon.IR.Tree.TreeKind
 
SEGMENT - Static variable in class harpoon.Tools.PatMat.Sym
 
segtype - Variable in class harpoon.IR.Tree.SEGMENT
The type of segment this SEGMENT precedes.
segtype - Variable in class harpoon.Tools.PatMat.Spec.LeafSegType
 
segtype - Variable in class harpoon.Tools.PatMat.Spec.StmSegment
Type of segment.
select(HMethod) - Method in interface harpoon.Analysis.AllCallers.MethodSet
 
select(Collection) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
select(Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Returns a PAEscapeFunc containing escape information only about the nodes from the set remaining_nodes.
select(Collection) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Returns the subrelation of this relation that contains only the keys that appear in selected_keys.
select(Collection) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
select(HMethod, MethodSplitter.Token) - Method in class harpoon.Analysis.Transformation.MethodSplitter
Go from a (possibly already split) method to the version of the method named by the token which.
selectAllocations() - Method in class harpoon.IR.Quads.Code
Returns the list of all allocation sites (ie, NEW and ANEW quads) from this code.
selectCALLs() - Method in class harpoon.IR.Quads.Code
Returns the list of all CALL quads from this code.
selectQuads(QuadValueVisitor<Boolean>) - Method in class harpoon.IR.Quads.Code
Returns the list of all quads q from this code for which q.accept(v) is true.
selfEnabled() - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysisCompStage
 
SEMICOLON - Static variable in class harpoon.Tools.Annotation.Sym
 
SEQ - Class in harpoon.IR.Tree
SEQ evaluates the left statement followed by the right statement.
SEQ(TreeFactory, HCodeElement, Stm, Stm) - Constructor for class harpoon.IR.Tree.SEQ
Constructor.
SEQ(Stm, Stm) - Constructor for class harpoon.IR.Tree.SEQ
Convenient constructor: the tree factory and the source arguments are identical to those for the left and the right statements (those statements must have the same tree factory and source).
SEQ - Static variable in class harpoon.IR.Tree.TreeKind
 
SEQ - Static variable in class harpoon.Tools.PatMat.Sym
 
SerializableCodeFactory - Interface in harpoon.ClassFile
A SerializableCodeFactory is an HCodeFactory that implements java.io.Serializable.
SESE - Class in harpoon.Analysis
SESE computes nested single-entry single-exit regions from a cycle-equivalency set.
SESE(HCode) - Constructor for class harpoon.Analysis.SESE
Creates a SESE using a CycleEq.
SESE.Region - Class in harpoon.Analysis
SESE.Region represents a single-entry single-exit (SESE) Region, as computed by the SESE object.
SET - Static variable in class harpoon.IR.Quads.QuadKind
 
SET - Class in harpoon.IR.Quads
SET represents field assignment-to operations.
SET(QuadFactory, HCodeElement, HField, Temp, Temp) - Constructor for class harpoon.IR.Quads.SET
Creates a SET representing a field assignment operation.
set(int) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Records that this contains type.
set(E) - Method in class harpoon.Util.ArrayIterator
 
set(Object) - Method in class harpoon.Util.CloneableIterator
 
set_diff(Set<A>, Set<B>) - Static method in class harpoon.Util.Util
Computes the difference of two sets: a-b.
setAll() - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Records that this contains all five basic Types, { INT, LONG, FLOAT, DOUBLE, POINTER }.
setAllocationInformation(AllocationInformation<Quad>) - Method in class harpoon.IR.Quads.Code
Set an AllocationInformation for this codeview.
setArg(int, String) - Method in class harpoon.Util.Options.Option
 
setArgs(ExpList) - Method in class harpoon.IR.Tree.INVOCATION
Sets the function argument list.
setArgv(String[]) - Method in class gnu.getopt.Getopt
Since in GNU getopt() the argument vector is passed back in to the function every time, the caller can swap out argv on the fly.
setCallGraph(CallGraph) - Method in class harpoon.Backend.Generic.Frame
Sets the CallGraph to use for this Generic.Frame.
setCallGraph(CallGraph) - Method in class harpoon.Backend.Generic.Runtime
Sets the CallGraph to use for this Generic.Runtime.
setCallGraph(CallGraph) - Method in class harpoon.Backend.Runtime1.Runtime
 
setChild(int, Tree) - Method in class harpoon.IR.Tree.Tree
Modify the child array -- for subclass use only.
setClassHierarchy(ClassHierarchy) - Method in class harpoon.Backend.Generic.Frame
Sets the ClassHierarchy to use for this Generic.Frame.
setClassHierarchy(ClassHierarchy) - Method in class harpoon.Backend.Generic.Runtime
Sets the ClassHierarchy to use for this Generic.Runtime.
setClassHierarchy(ClassHierarchy) - Method in class harpoon.Backend.Runtime1.Runtime
 
setClassHierarchy(ClassHierarchy) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
setClassHierarchy(ClassHierarchy) - Method in class harpoon.Backend.RuntimeTiny.Runtime
 
setColor(Object, Color) - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Sets the color of n.
setColor(Object, Color) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
Sets the color of n.
setConstant(Object) - Method in interface harpoon.ClassFile.HFieldMutator
Mark this field as constant with the constant value given by co.
setData(Exp) - Method in class harpoon.IR.Tree.DATUM
Sets the expression to write to memory.
setDerivation(Derivation<Quad>) - Method in class harpoon.IR.LowQuad.Code
Allow subclasses to initialize the Derivation for this LowQuad.Code.
setDst(Exp) - Method in class harpoon.IR.Tree.MOVE
Sets the expression giving the destination for the computed value.
setDynamicWBFlag() - Method in class harpoon.Analysis.AllocationInformationMap.AllocationPropertiesImpl
 
setDynamicWBFlag() - Method in class harpoon.Analysis.ChainedAllocationProperties
 
setDynamicWBFlag() - Method in interface harpoon.Analysis.Maps.AllocationInformation.AllocationProperties
 
setDynamicWBFlag() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
 
setEdge(WGNode, WGNode, long) - Static method in class harpoon.Analysis.Partition.WeightedGraph
 
setEdge(WGNode, long) - Method in class harpoon.Analysis.Partition.WGNode
 
setEntry(Instr) - Method in class harpoon.IR.Assem.InstrGroup
Sets the entry point for a group of instructions.
setExceptionTypes(HClass[]) - Method in interface harpoon.ClassFile.HMethodMutator
 
setExit(Instr) - Method in class harpoon.IR.Assem.InstrGroup
Sets the exit point for this group of instructions.
setExp(Exp) - Method in class harpoon.IR.Tree.ESEQ
Sets the expression whose value is the the value of the ESEQ.
setExp(Exp) - Method in class harpoon.IR.Tree.EXPR
Sets the expression to evaluate.
setExp(Exp) - Method in class harpoon.IR.Tree.JUMP
Set the expression giving the address to jump to.
setExp(Exp) - Method in class harpoon.IR.Tree.MEM
Sets the memory reference subexpression.
setFunc(Exp) - Method in class harpoon.IR.Tree.INVOCATION
Sets the function reference expression.
setGroup(InstrGroup) - Method in class harpoon.IR.Assem.Instr
Sets the InstrGroup sequence associated with this.
setHandler(NAME) - Method in class harpoon.IR.Tree.CALL
Sets the destination to which we should return if our caller throws an exception.
setHandler(Exp) - Method in class harpoon.IR.Tree.THROW
Set the location of the exception-handling code
SetHClass - Class in harpoon.Analysis.TypeInference
SetHClass represents concrete type.
SetHClass() - Constructor for class harpoon.Analysis.TypeInference.SetHClass
 
SetHClass(HClass) - Constructor for class harpoon.Analysis.TypeInference.SetHClass
 
SetHClass(SetHClass) - Constructor for class harpoon.Analysis.TypeInference.SetHClass
 
setJNITransaction(CommitRecord) - Static method in class harpoon.Runtime.Transactions.ImplHelper
Sets the JNI "current transaction" state to the given transaction.
setLeft(Exp) - Method in class harpoon.IR.Tree.BINOP
Sets the subexpression of the left-hand side of the operator.
setLeft(Stm) - Method in class harpoon.IR.Tree.SEQ
Sets the statement to evaluate first.
setModifiers(int) - Method in interface harpoon.ClassFile.HClassMutator
 
setModifiers(int) - Method in interface harpoon.ClassFile.HFieldMutator
Set the field's modifiers to those specified by m.
setModifiers(int) - Method in interface harpoon.ClassFile.HMethodMutator
 
setNoTagCheckMap(Map) - Method in class harpoon.Backend.MIPS.Frame
 
setOperand(Exp) - Method in class harpoon.IR.Tree.UNOP
Sets the subexpression to be operated upon.
setOpterr(boolean) - Method in class gnu.getopt.Getopt
Normally Getopt will print a message to the standard error when an invalid option is encountered.
setOptind(int) - Method in class gnu.getopt.Getopt
This method allows the optind index to be set manually.
setOptionalArg(int, String) - Method in class harpoon.Util.Options.Option
 
setOptstring(String) - Method in class gnu.getopt.Getopt
In GNU getopt, it is possible to change the string containg valid options on the fly because it is passed as an argument to getopt() each time.
setParameterName(int, String) - Method in interface harpoon.ClassFile.HMethodMutator
 
setParameterNames(String[]) - Method in interface harpoon.ClassFile.HMethodMutator
 
setParameterType(int, HClass) - Method in interface harpoon.ClassFile.HMethodMutator
Warning: use can cause method name conflicts in class.
setParameterTypes(HClass[]) - Method in interface harpoon.ClassFile.HMethodMutator
Warning: use can cause method name conflicts in class.
setParams(TEMP[]) - Method in class harpoon.IR.Tree.METHOD
Set the temporary variables used for method formals.
setPriority(Object, int) - Method in class harpoon.Util.BinHeapPriorityQueue
 
setPriority(Object, int) - Method in interface harpoon.Util.MaxPriorityQueue
Changes the priority of this Object to the new, specified value, and returns the old value
setRetex(TEMP) - Method in class harpoon.IR.Tree.CALL
Sets the destination temp for any exception which the callee might throw.
setRetex(Exp) - Method in class harpoon.IR.Tree.THROW
Set the exceptional value to return
setReturnType(HClass) - Method in interface harpoon.ClassFile.HMethodMutator
 
setRetval(TEMP) - Method in class harpoon.IR.Tree.INVOCATION
Sets the expression indicating the destination of the return value.
setRetval(Exp) - Method in class harpoon.IR.Tree.RETURN
Sets the value to return.
setRight(Exp) - Method in class harpoon.IR.Tree.BINOP
Sets the subexpression of the right-hand side of the operator.
setRight(Stm) - Method in class harpoon.IR.Tree.SEQ
Sets the statement to evaluate last.
setSignedPrecise(int) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Recordes that this contains a signed, specific precise type value
requires: 1 <= numBits <= 32
setSourceFile(String) - Method in interface harpoon.ClassFile.HClassMutator
 
setSrc(Exp) - Method in class harpoon.IR.Tree.MOVE
Sets the expression for the computed value.
setStm(Stm) - Method in class harpoon.IR.Tree.ESEQ
Sets the statement to evaluate for side-effects.
setSuperclass(HClass) - Method in interface harpoon.ClassFile.HClassMutator
 
setSynthetic(boolean) - Method in interface harpoon.ClassFile.HFieldMutator
Set the 'synthetic' property of this field.
setSynthetic(boolean) - Method in interface harpoon.ClassFile.HMethodMutator
 
setter2field - Variable in class harpoon.Analysis.SizeOpt.Field2Method
This maps 'setter' methods to the field they set.
setTest(Exp) - Method in class harpoon.IR.Tree.CJUMP
Returns the test condition for this CJUMP.
Settings - Class in harpoon.Main
Settings
Settings() - Constructor for class harpoon.Main.Settings
 
Settings.StdLib - Enum in harpoon.Main
 
setToZero(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Set to zero the value attached to the node n.
setType(int, GenType) - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Set the type of the i-th argument of this meta-method.
setType(HClass) - Method in interface harpoon.ClassFile.HFieldMutator
Set the type of this field to type.
SetTypeMap - Interface in harpoon.Analysis.Maps
SetTypeMap is a mapping from temporaries to their concrete types, i.e.setTypeMap(HCode, Temp) - Method in interface harpoon.Analysis.Maps.SetTypeMap
Return the concrete type of a given temporary.
setTypeMap(HCode, Temp) - Method in class harpoon.Analysis.TypeInference.InterProc
 
setUnsignedPrecise(int) - Method in class harpoon.Tools.PatMat.Spec.TypeSet
Recordes that this contains an unsigned, specific precise type value
requires: 1 <= numBits <= 32
setupCode(Linker, ClassHierarchy, HCodeFactory) - Static method in class harpoon.Analysis.Realtime.Realtime
Adds realtime support to a block of code using an harpoon.ClassFile.HCodeFactory.
setupObject(Linker) - Static method in class harpoon.Analysis.Realtime.Realtime
Creates a field memoryArea on java.lang.Object.
setUsedDANum(Set) - Method in class harpoon.Backend.MIPS.Frame
 
SHL - Static variable in class harpoon.IR.Tree.Bop
Left bit-wise shift; long/integer only.
SHL - Static variable in class harpoon.Tools.PatMat.Sym
 
Short - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type short.
SHORT - Static variable in class harpoon.Tools.Annotation.Sym
 
shouldRemoveCheck(Quad) - Method in class harpoon.Analysis.Realtime.AllCheckRemoval
Too aggressive treatment.
shouldRemoveCheck(Quad) - Method in interface harpoon.Analysis.Realtime.CheckRemoval
Returns true iff it is always safe to assign a.b = f; or a[b] = f;
shouldRemoveCheck(Quad) - Method in class harpoon.Analysis.Realtime.CheesyPACheckRemoval
 
shouldRemoveCheck(Quad) - Method in class harpoon.Analysis.Realtime.PACheckRemoval
 
shouldRemoveCheck(Quad) - Method in class harpoon.Analysis.Realtime.SimpleCheckRemoval
Very conservative treatment.
shouldRemoveNoHeapReadCheck(Quad) - Method in class harpoon.Analysis.Realtime.AllCheckRemoval
Too aggressive treatment.
shouldRemoveNoHeapReadCheck(Quad) - Method in interface harpoon.Analysis.Realtime.NoHeapCheckRemoval
Returns true iff a.b or a[b] in f = a.b or f = a[b] cannot be a heap reference.
shouldRemoveNoHeapReadCheck(Quad) - Method in class harpoon.Analysis.Realtime.SimpleCheckRemoval
Very conservative treatment.
shouldRemoveNoHeapWriteCheck(Quad) - Method in class harpoon.Analysis.Realtime.AllCheckRemoval
Too aggressive treatment.
shouldRemoveNoHeapWriteCheck(Quad) - Method in interface harpoon.Analysis.Realtime.NoHeapCheckRemoval
Returns true iff a.b or a[b] in a.b = f or a[b] = f cannot be a heap reference.
shouldRemoveNoHeapWriteCheck(Quad) - Method in class harpoon.Analysis.Realtime.SimpleCheckRemoval
Very conservative treatment.
show(PrintStream) - Method in class harpoon.Backend.CSAHack.FlowGraph.FlowGraph
Print a human-readable dump for debugging.
show(PrintStream) - Method in class harpoon.Backend.CSAHack.Graph.Graph
Print a human-readable dump for debugging.
SHOW_ACTIONS - Static variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
 
show_evolution(PAEdgeSet, PAEdgeSet) - Static method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
Display the edges which were removed and the edges which were added while passing from es_old to es_new.
show_evolution(ActionRepository) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Shows the evolution from ar2 to this: newly added stuff and removed stuff.
SHOW_INTRA_PROC_RESULTS - Static variable in class harpoon.Analysis.PA2.Flags
 
show_lbb(LightBasicBlock) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
 
show_lbb_scc(MetaMethod, TopSortedCompDiGraph<LightBasicBlock>) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
 
SHOW_NODES - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
SHOW_PROGRESS - Static variable in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
If true, the analysis will show progress dots and other progress indicators.
show_specializations() - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Nice looking info for debug purposes.
SHOW_TIMINGS - Static variable in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
If true, the analysis will show timings for all of its stages.
SHR - Static variable in class harpoon.IR.Tree.Bop
Right signed bit-wise shift; long/integer only.
SHR - Static variable in class harpoon.Tools.PatMat.Sym
 
shrink(int) - Method in class harpoon.IR.Quads.PHI
Shrink the arity of a PHI by replacing it.
shrink(ArrayFactory<T>, T[], int) - Static method in class harpoon.Util.Util
Remove element 'n' from array 'src'.
SIGMA - Static variable in class harpoon.IR.Quads.QuadKind
 
SIGMA - Class in harpoon.IR.Quads
SIGMA functions are added where control flow splits.
SIGMA(QuadFactory, HCodeElement, Temp[][], Temp[], int) - Constructor for class harpoon.IR.Quads.SIGMA
Creates a SIGMA representing a block of sigma functions.
SIGMA(QuadFactory, HCodeElement, Temp[], int) - Constructor for class harpoon.IR.Quads.SIGMA
Creates a SIGMA object with the specified arity.
sign - Variable in class harpoon.Analysis.Maps.Derivation.DList
Sign of base pointer.
signature() - Method in class harpoon.IR.RawClass.AttributeSignature
 
signature_index - Variable in class harpoon.IR.RawClass.AttributeSignature
The value of the signature_index item must be a valid index into the constant_pool table.
signature_index() - Method in class harpoon.IR.RawClass.AttributeSignature
 
SIGNATURES - Static variable in class harpoon.Main.Javap
Print internal type signatures.
signed() - Method in class harpoon.IR.Tree.CONST
Returns true if this is a signed expression, false otherwise.
signed() - Method in class harpoon.IR.Tree.ESEQ
 
signed() - Method in class harpoon.IR.Tree.MEM
Returns true if this is a signed expression, false otherwise.
signed() - Method in interface harpoon.IR.Tree.PreciselyTyped
Returns true if this is a signed expression, false otherwise.
sigNeeded(HCodeElement) - Method in class harpoon.Analysis.Place
 
silicon.JavaChip - package silicon.JavaChip
 
SIMPLE - Static variable in class harpoon.Analysis.Realtime.Realtime
Very conservative analysis method - keep all checks
SimpleCheckRemoval - Class in harpoon.Analysis.Realtime
SimpleCheckRemoval is the simplest implementation of the interface CheckRemoval: it just keeps all the checks!
SimpleCheckRemoval() - Constructor for class harpoon.Analysis.Realtime.SimpleCheckRemoval
Creates a SimpleCheckRemoval.
SimpleConstMap - Class in harpoon.Analysis.Quads
SimpleConstMap is a very simple implementation of ConstMap that reports whether a given Temp is defined by a CONST quad.
SimpleConstMap(HCode) - Constructor for class harpoon.Analysis.Quads.SimpleConstMap
Creates a SimpleConstMap which provides information about HCode hc.
SimpleGraphColorer - Class in harpoon.Analysis.GraphColoring
SimpleGraphColorer uses the simple but effective graph coloring strategy of progressively removing nodes with degree less than K, (where K is the number of colors provided).
SimpleGraphColorer() - Constructor for class harpoon.Analysis.GraphColoring.SimpleGraphColorer
 
Simplification - Class in harpoon.Analysis.Tree
Simplification is a general-purpose simplification engine for trees.
Simplification() - Constructor for class harpoon.Analysis.Tree.Simplification
 
Simplification.Rule - Class in harpoon.Analysis.Tree
A simplification rule for use with the tree simplifier.
Simplification.Rule(String) - Constructor for class harpoon.Analysis.Tree.Simplification.Rule
 
simplify() - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
simplify(Tree, DerivationGenerator, List<Simplification.Rule>) - Static method in class harpoon.Analysis.Tree.Simplification
Performs simplification on root, using the specified set of simplification rules.
SINGLETON - Static variable in class harpoon.Analysis.DefaultAllocationInformation
A static instance of the singleton DefaultAllocationInformation object.
SINGLETON - Static variable in class harpoon.Analysis.PreciseGC.WriteBarrierInserter.DefaultWriteBarrierAnalysis
A static instance of the singleton DefaultWriteBarrierAnalysis.
SingularFinder - Class in harpoon.Analysis.Companions
SingularFinder is an implementation of SingularOracle for quad IRs.
SingularFinder(HCodeFactory) - Constructor for class harpoon.Analysis.Companions.SingularFinder
Creates a SingularFinder.
SingularOracle<HCE extends HCodeElement> - Interface in harpoon.Analysis.Companions
A SingularOracle provides information about singularity and mutual singularity of static values.
SIPUSH - Static variable in class harpoon.IR.Bytecode.Op
 
size() - Method in class harpoon.Analysis.Maps.ExactTypeMap.ExactType
 
size() - Method in class harpoon.Analysis.Partition.WeightedGraph
 
size() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
size(HClass) - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
Returns the size of the specified class
size() - Method in interface harpoon.IR.Quads.HANDLER.ProtectedSet
Return the number of protected quads in the set.
size(ExpList) - Static method in class harpoon.IR.Tree.ExpList
 
size() - Method in class harpoon.Util.ArraySet
 
size() - Method in class harpoon.Util.BinHeapPriorityQueue
 
SIZE_IN_BYTES - Static variable in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
If true, compute the sizes of the classes in bytes, otherwise, compute them in fields (an approximation).
SizeCounters - Class in harpoon.Analysis.SizeOpt
The SizeCounters code factory adds counters for various allocation properties, to aid in determining the effectiveness of the various size optimizations in this package.
SizeCounters(HCodeFactory, Frame) - Constructor for class harpoon.Analysis.SizeOpt.SizeCounters
Creates a SizeCounters.
Sizer - Class in harpoon.Main
Sizer computes the sizes of all the methods used in a given program.
Sizer() - Constructor for class harpoon.Main.Sizer
 
sizeStatistics(Collection, HCodeFactory) - Static method in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
 
smallestSESE - Variable in class harpoon.Analysis.SESE
Mapping from Nodes/Edges to smallest enclosing canonical SESE Region.
SmallMethodInliner - Class in harpoon.Analysis.Quads
SmallMethodInliner will inline small methods until the code is bloated by the specified amount.
SmallMethodInliner(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.SmallMethodInliner
Creates a SmallMethodInliner.
SmallMethodInliner.IntMap - Class in harpoon.Analysis.Quads
 
SmartCallGraph - Class in harpoon.Analysis.MetaMethods
SmartCallGraph is an improved call graph produced by compressing a meta call graph, ie, all metamethods are shrinked down to their originating method).
SmartCallGraph(MetaCallGraph) - Constructor for class harpoon.Analysis.MetaMethods.SmartCallGraph
Creates a SmartCallGraph.
SmartCallGraph(CachingCodeFactory, Linker, ClassHierarchy, Set) - Constructor for class harpoon.Analysis.MetaMethods.SmartCallGraph
Convenient constructor for use in cases when a meta call graph does not already exist.
sol - Variable in class harpoon.Backend.Generic.GCInfo.WrappedStackOffsetLoc
 
solve() - Method in class harpoon.Analysis.DataFlow.LiveTemps
Finds the fixed-point solution for this LiveTemps.
Solver - Class in harpoon.Analysis.DataFlow
Solver contains static methods to find the fixed point of a set of data-flow equations.
sorted - Variable in class harpoon.Backend.Analysis.InitializerOrdering
 
SortedClassFieldMap - Class in harpoon.Backend.Analysis
A SortedClassFieldMap is an extension of ClassFieldMap which sorts object fields to minimize "holes" between fields.
SortedClassFieldMap() - Constructor for class harpoon.Backend.Analysis.SortedClassFieldMap
Creates a SortedClassFieldMap.
sortedCollection(Collection) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
Returns a sorted array containing all the objects from set.
SortedMapComparator<K,V> - Class in harpoon.Util
A SortedMapComparator compares two sorted maps entry-by-entry (treating the map as a sorted pair list).
SortedMapComparator() - Constructor for class harpoon.Util.SortedMapComparator
Creates a SortedMapComparator which compares entries in the order defined by the SortedMap and compares keys before values.
SortedMapComparator(Comparator<? super K>, Comparator<? super V>) - Constructor for class harpoon.Util.SortedMapComparator
Creates a SortedMapComparator which compares entries in the order defined by the SortedMap and compares keys (using keyComparator) before values (using valueComparator).
sortedSet(Set) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
 
sourcefile() - Method in class harpoon.IR.RawClass.AttributeSourceFile
 
sourcefile_index - Variable in class harpoon.IR.RawClass.AttributeSourceFile
The value of the sourcefile_index item must be a valid index into the constant_pool table.
sourcefile_index() - Method in class harpoon.IR.RawClass.AttributeSourceFile
 
sources() - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
sources() - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
SpaceHeavyLiveTemps - Class in harpoon.Analysis.DataFlow
SpaceHeavyLiveTemps is an extension of LiveTemps that keeps ALL of the results of the queries that it has calculated alive.
SpaceHeavyLiveTemps(BasicBlock.Factory, Set) - Constructor for class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
Creates a SpaceHeavyLiveTemps.
SpaceHeavyLiveTemps(BasicBlock.Factory, Set, UseDefer) - Constructor for class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
 
SpaceHeavyLiveTemps(BasicBlock.Factory, Set, UseDefer, CFGrapher) - Constructor for class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
 
SpaceHeavyLiveTemps(BasicBlock.Factory, Set, SetFactory, UseDefer) - Constructor for class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
 
SpaceHeavyLiveTemps(BasicBlock.Factory, Set, SetFactory, UseDefer, CFGrapher) - Constructor for class harpoon.Analysis.DataFlow.SpaceHeavyLiveTemps
 
SPAllocationStrategy - Class in harpoon.Backend.Runtime1
SPAllocationStrategy implements a "semi-precise" allocation strategy by providing the BDW collector with more precise information about pointer locations.
SPAllocationStrategy(Frame) - Constructor for class harpoon.Backend.Runtime1.SPAllocationStrategy
Creates a SPAllocationStrategy.
SPARC - Static variable in class harpoon.Backend.Backend
SPARC backend
SparseGraph - Class in harpoon.Analysis.GraphColoring
SparseGraph is an implementation of a ColorableGraph object.
SparseGraph() - Constructor for class harpoon.Analysis.GraphColoring.SparseGraph
Creates a SparseGraph.
SparseNode - Class in harpoon.Analysis.GraphColoring
SparseNode is an extension of a ColorableNode for use with the SparseGraph object.
SparseNode() - Constructor for class harpoon.Analysis.GraphColoring.SparseNode
Creates a SparseNode.
spec - Variable in class harpoon.Tools.PatMat.CodeGeneratorGenerator
The machine specification that the CodeGenerators outputted by this will target.
Spec - Class in harpoon.Tools.PatMat
Spec represents the parsed specification of a set of Instruction Patterns for a target backend .
Spec(String, String, String, String, Spec.RuleList) - Constructor for class harpoon.Tools.PatMat.Spec
Creates a Spec.
Spec.Detail - Class in harpoon.Tools.PatMat
A detail is an abstract representation for a piece of data about the Instruction Pattern or Rule.
Spec.Detail() - Constructor for class harpoon.Tools.PatMat.Spec.Detail
 
Spec.DetailExtra - Class in harpoon.Tools.PatMat
Extension of Spec.Detail that requests an extra temporary register for the use of the action clause.
Spec.DetailExtra(int, Spec.IdList) - Constructor for class harpoon.Tools.PatMat.Spec.DetailExtra
 
Spec.DetailList - Class in harpoon.Tools.PatMat
Linked list representation for representing the series of Spec.Details in this Spec.
Spec.DetailList(Spec.Detail, Spec.DetailList) - Constructor for class harpoon.Tools.PatMat.Spec.DetailList
 
Spec.DetailPredicate - Class in harpoon.Tools.PatMat
Extension of Spec.Detail that stores a predicate_string which is a piece of Java code that decides if a particular Spec.Rule can be applied.
Spec.DetailPredicate(String) - Constructor for class harpoon.Tools.PatMat.Spec.DetailPredicate
Constructs a new Spec.DetailPredicate.
Spec.DetailVisitor - Class in harpoon.Tools.PatMat
Visitor class for traversing a set of Spec.Details and performing some action depending on the type of Spec.Detail visited.
Spec.DetailVisitor() - Constructor for class harpoon.Tools.PatMat.Spec.DetailVisitor
 
Spec.DetailWeight - Class in harpoon.Tools.PatMat
Extension of Spec.Detail that stores a (name,weight) pair.
Spec.DetailWeight(String, double) - Constructor for class harpoon.Tools.PatMat.Spec.DetailWeight
Constructs a new Spec.DetailWeight.
Spec.Exp - Class in harpoon.Tools.PatMat
Abstract immutable representation of an Expression in an Instruction Pattern.
Spec.Exp() - Constructor for class harpoon.Tools.PatMat.Spec.Exp
 
Spec.ExpBinop - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents a Binary Operation in the code.
Spec.ExpBinop(Spec.TypeSet, Spec.Leaf, Spec.Exp, Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.ExpBinop
Constructs a Spec.ExpBinop that operates on expressions of types.
Spec.ExpConst - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents a Constant value in the code.
Spec.ExpConst(Spec.TypeSet, Spec.Leaf) - Constructor for class harpoon.Tools.PatMat.Spec.ExpConst
Constructs a Spec.ExpConst.
Spec.ExpId - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents an Identifier in the code.
Spec.ExpId(String) - Constructor for class harpoon.Tools.PatMat.Spec.ExpId
Constructs a Spec.ExpId around id.
Spec.ExpList - Class in harpoon.Tools.PatMat
Linked list representation for representing the series of Spec.Exps in a given Spec.Exp or Spec.Stm.
Spec.ExpList(Spec.Exp, Spec.ExpList) - Constructor for class harpoon.Tools.PatMat.Spec.ExpList
 
Spec.ExpMem - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents a Memory Access in the code (could be either Load or Store; Context-Sensitive).
Spec.ExpMem(Spec.TypeSet, Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.ExpMem
Constructs a Spec.ExpMem.
Spec.ExpName - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents a symbolic constant.
Spec.ExpName(String) - Constructor for class harpoon.Tools.PatMat.Spec.ExpName
Constructs a new Spec.ExpName representing name.
Spec.ExpTemp - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents a Temporary value in the code.
Spec.ExpTemp(Spec.TypeSet, String) - Constructor for class harpoon.Tools.PatMat.Spec.ExpTemp
Constructs a Spec.ExpTemp.
Spec.ExpUnop - Class in harpoon.Tools.PatMat
Extension of Spec.Exp that represents a Unary operation.
Spec.ExpUnop(Spec.TypeSet, Spec.Leaf, Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.ExpUnop
 
Spec.ExpVisitor - Class in harpoon.Tools.PatMat
Visitor class for traversing a set of Spec.Exps and performing some action depending on the type of Spec.Exp visited.
Spec.ExpVisitor() - Constructor for class harpoon.Tools.PatMat.Spec.ExpVisitor
 
Spec.IdList - Class in harpoon.Tools.PatMat
Linked list representation for representing a series of Identifier Strings in this Spec.
Spec.IdList(String, Spec.IdList) - Constructor for class harpoon.Tools.PatMat.Spec.IdList
 
Spec.Leaf - Class in harpoon.Tools.PatMat
Abstract representation of leaves in the instruction pattern.
Spec.Leaf() - Constructor for class harpoon.Tools.PatMat.Spec.Leaf
 
Spec.LeafId - Class in harpoon.Tools.PatMat
Extension of Spec.Leaf which represents an Identifier.
Spec.LeafId(String) - Constructor for class harpoon.Tools.PatMat.Spec.LeafId
Constructs a new Spec.LeafId.
Spec.LeafNull - Class in harpoon.Tools.PatMat
Extension of Spec.Leaf representing a null constant.
Spec.LeafNull() - Constructor for class harpoon.Tools.PatMat.Spec.LeafNull
Constructs a new Spec.LeafNull.
Spec.LeafNumber - Class in harpoon.Tools.PatMat
Extension of Spec.Leaf which represents a explicit number in the specification.
Spec.LeafNumber(Number) - Constructor for class harpoon.Tools.PatMat.Spec.LeafNumber
Constructs a new Spec.LeafNumber.
Spec.LeafOp - Class in harpoon.Tools.PatMat
Extension of Spec.Leaf representing an opcode for Uop and/or Bop.
Spec.LeafOp(int) - Constructor for class harpoon.Tools.PatMat.Spec.LeafOp
Constructs a new Spec.LeafOp.
Spec.LeafSegType - Class in harpoon.Tools.PatMat
Extension of Spec.Leaf which represents a segment type in the specification.
Spec.LeafSegType(int) - Constructor for class harpoon.Tools.PatMat.Spec.LeafSegType
Constructs a new Spec.LeafSegType.
Spec.LeafVisitor - Class in harpoon.Tools.PatMat
Visitor class for traversing a set of Spec.Leaf objects and performing some action depending on the type of Spec.Leaf visited.
Spec.LeafVisitor() - Constructor for class harpoon.Tools.PatMat.Spec.LeafVisitor
 
Spec.Rule - Class in harpoon.Tools.PatMat
Abstract immutable representation of an Instruction Pattern.
Spec.Rule(Spec.DetailList, String) - Constructor for class harpoon.Tools.PatMat.Spec.Rule
Constructs a new Spec.Rule.
Spec.RuleExp - Class in harpoon.Tools.PatMat
Extension of Spec.Rule that also contains a Spec.Exp to match Tree expressions and the identifier for the result that this produces.
Spec.RuleExp(Spec.Exp, String, Spec.DetailList, String) - Constructor for class harpoon.Tools.PatMat.Spec.RuleExp
Constructs a new Spec.RuleExp.
Spec.RuleList - Class in harpoon.Tools.PatMat
Linked list representation for representing the series of Spec.Rules in this Spec.
Spec.RuleList(Spec.Rule, Spec.RuleList) - Constructor for class harpoon.Tools.PatMat.Spec.RuleList
 
Spec.RuleStm - Class in harpoon.Tools.PatMat
Extension of Spec.Rule that also contains a Spec.Stm to match Tree statements.
Spec.RuleStm(Spec.Stm, Spec.DetailList, String) - Constructor for class harpoon.Tools.PatMat.Spec.RuleStm
Constructs a new Spec.RuleStm.
Spec.RuleVisitor - Class in harpoon.Tools.PatMat
Visitor class for traversing a set of Spec.Rules and performing some action depending on the type of Spec.Rule visited.
Spec.RuleVisitor() - Constructor for class harpoon.Tools.PatMat.Spec.RuleVisitor
 
Spec.Stm - Class in harpoon.Tools.PatMat
Abstract immutable representation of a Statement in an Instruction Pattern.
Spec.Stm() - Constructor for class harpoon.Tools.PatMat.Spec.Stm
 
Spec.StmAlign - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing an alignment request.
Spec.StmAlign(Spec.Leaf) - Constructor for class harpoon.Tools.PatMat.Spec.StmAlign
Constructs a new Spec.StmSegment.
Spec.StmCall - Class in harpoon.Tools.PatMat
Extension of Spec.Stm that represents a call to a procedure.
Spec.StmCall(String, String, Spec.Exp, String, String) - Constructor for class harpoon.Tools.PatMat.Spec.StmCall
Constructs a new Spec.StmCall.
Spec.StmCjump - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a conditional branch.
Spec.StmCjump(Spec.Exp, String, String) - Constructor for class harpoon.Tools.PatMat.Spec.StmCjump
Constructs a new Spec.StmCjump.
Spec.StmData - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a raw datum in memory.
Spec.StmData(Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmData
Constructs a new Spec.StmData.
Spec.StmExp - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing an expression which is evaluated for its side effects (i.e. we throw away the return value).
Spec.StmExp(Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmExp
Constructs a new Spec.StmExp.
Spec.StmJump - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing an unconditional branch.
Spec.StmJump(Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmJump
Constructs a new Spec.StmJump.
Spec.StmLabel - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a label which is the target of a branch or call.
Spec.StmLabel(String) - Constructor for class harpoon.Tools.PatMat.Spec.StmLabel
Constructs a new Spec.StmLabel.
Spec.StmMethod - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a method header.
Spec.StmMethod(String) - Constructor for class harpoon.Tools.PatMat.Spec.StmMethod
Constructs a new Spec.StmMethod.
Spec.StmMove - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing an expression which moves a value from one place to another.
Spec.StmMove(Spec.TypeSet, Spec.Exp, Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmMove
Constructs a new Spec.StmMove.
Spec.StmNativeCall - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing an expression which is evaluated for its side effects (i.e. we throw away the return value).
Spec.StmNativeCall(String, Spec.Exp, String) - Constructor for class harpoon.Tools.PatMat.Spec.StmNativeCall
Constructs a new Spec.StmNativeCall.
Spec.StmReturn - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing an expression which is evaluated for its side effects (i.e. we throw away the return value).
Spec.StmReturn(Spec.TypeSet, Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmReturn
Constructs a new Spec.StmReturn.
Spec.StmSegment - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a change of output segment.
Spec.StmSegment(Spec.Leaf) - Constructor for class harpoon.Tools.PatMat.Spec.StmSegment
Constructs a new Spec.StmSegment.
Spec.StmSeq - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a sequence of statements to be executed in order.
Spec.StmSeq(Spec.Stm, Spec.Stm) - Constructor for class harpoon.Tools.PatMat.Spec.StmSeq
Constructs a new Spec.StmSeq.
Spec.StmThrow - Class in harpoon.Tools.PatMat
Extension of Spec.Stm representing a operation to throw an exception.
Spec.StmThrow(Spec.Exp, Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmThrow
Constructs a new Spec.StmThrow.
Spec.StmThrow(Spec.Exp) - Constructor for class harpoon.Tools.PatMat.Spec.StmThrow
Provisional: REMOVE this.
Spec.StmVisitor - Class in harpoon.Tools.PatMat
Visitor class for traversing a set of Spec.Stms and performing some action depending on the type of Spec.Stm visited.
Spec.StmVisitor() - Constructor for class harpoon.Tools.PatMat.Spec.StmVisitor
 
Spec.TypeSet - Class in harpoon.Tools.PatMat
A representation for storing Types that values can be.
Spec.TypeSet() - Constructor for class harpoon.Tools.PatMat.Spec.TypeSet
Constructs a new Spec.TypeSet.
Spec.TypeSet(int) - Constructor for class harpoon.Tools.PatMat.Spec.TypeSet
Constructs a new Spec.TypeSet with type t.
Spec.TypeSet(Spec.TypeSet) - Constructor for class harpoon.Tools.PatMat.Spec.TypeSet
Constructs a new Spec.TypeSet with the same contents as the supplied Spec.TypeSet.
SpecialInterProc - Class in harpoon.Analysis.PA2
SpecialInterProc
SpecialInterProc() - Constructor for class harpoon.Analysis.PA2.SpecialInterProc
 
specialize(Map) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
specialize(Map) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
 
specialize(Map) - Method in class harpoon.Analysis.PointerAnalysis.PAEdge
 
specialize(Map) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
 
specialize(Map) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
 
specialize(Map) - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
 
specialize(Map) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
 
specificity() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
specificity() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Constant
 
specificity() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
specificity() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.IntegerValue
 
specificity() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Value
 
spillCost(Temp) - Method in interface harpoon.Analysis.InterferenceGraph
 
spillCost(Temp) - Method in class harpoon.Analysis.Quads.QuadInterferenceGraph
unimplemented.
spillCost(Node) - Method in class harpoon.Backend.CSAHack.RegAlloc.InterferenceGraph
 
spillCost(Node) - Method in class harpoon.Backend.CSAHack.RegAlloc.Liveness
 
SpillHeuristics - Class in harpoon.Analysis.Instr
Abstracts away the heuristic used for deciding between spill candidates during graph simplification.
SpillHeuristics.SpillHeuristic - Class in harpoon.Analysis.Instr
 
SpillHeuristics.SpillHeuristic() - Constructor for class harpoon.Analysis.Instr.SpillHeuristics.SpillHeuristic
 
spillStats(int[]) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
spliceIncrement(QuadFactory, Edge, String) - Static method in class harpoon.Analysis.Counters.CounterFactory
Increment the named counter by 1 on the given edge.
spliceIncrement(QuadFactory, Edge, String, long) - Static method in class harpoon.Analysis.Counters.CounterFactory
Increment the named counter by value on the given edge.
spliceIncrement(QuadFactory, Edge, String, Temp, boolean) - Static method in class harpoon.Analysis.Counters.CounterFactory
Increment the named counter by the amount in the Temp Tvalue on the given edge.
src - Variable in class harpoon.Backend.CSAHack.RegAlloc.MoveList
 
src - Variable in class harpoon.IR.LowQuad.PSET
Temp containing the desired new value of the field or element.
src() - Method in class harpoon.IR.LowQuad.PSET
Returns the Temp holding the desired new value for the dereference field or element.
src - Variable in class harpoon.IR.Quads.ASET
The new value for the array element.
src() - Method in class harpoon.IR.Quads.ASET
Returns the Temp holding the new value for the array element.
src - Variable in class harpoon.IR.Quads.INSTANCEOF
The Temp to evaluate.
src() - Method in class harpoon.IR.Quads.INSTANCEOF
Returns the Temp to test.
src - Variable in class harpoon.IR.Quads.MOVE
The source Temp.
src() - Method in class harpoon.IR.Quads.MOVE
Returns the source Temp.
src - Variable in class harpoon.IR.Quads.PHI
src[i][j] is the j'th parameter to the i'th phi function in this block.
src(int, int) - Method in class harpoon.IR.Quads.PHI
Returns the nParam'th argument of the nPhi'th phi function in the block.
src(int) - Method in class harpoon.IR.Quads.PHI
Returns an array holding the arguments to the nPhi'th phi function in the block.
src - Variable in class harpoon.IR.Quads.SET
Temp containing the desired new value of the field.
src() - Method in class harpoon.IR.Quads.SET
Returns the Temp containing the desired new value of the field.
src - Variable in class harpoon.IR.Quads.SIGMA
src[i] is the argument to the i'th sigma function in this block.
src(int) - Method in class harpoon.IR.Quads.SIGMA
Returns the argument to the nSigma'th sigma function in the block.
src() - Method in class harpoon.IR.Quads.SIGMA
 
src - Variable in class harpoon.Tools.PatMat.Spec.StmMove
Expression yielding the source data of this move.
SSICallGraph - Class in harpoon.Analysis.Quads
SSICallGraph
SSICallGraph(ClassHierarchy, HCodeFactory) - Constructor for class harpoon.Analysis.Quads.SSICallGraph
Creates a SSICallGraph.
SSILiveness - Class in harpoon.Analysis.MemOpt
 
SSILiveness(HCode) - Constructor for class harpoon.Analysis.MemOpt.SSILiveness
 
SSIRename - Class in harpoon.IR.Quads
SSIRename is a new, improved, fast SSI-renaming algorithm.
SSIRename(Code, QuadFactory) - Constructor for class harpoon.IR.Quads.SSIRename
Return a copy of the given quad graph properly converted to SSI form.
SSIStats - Class in harpoon.Analysis.Quads
SSIStats is a class to provide counts of uses, definitions and variables in plain, SSA, and SSI forms.
SSIStats(Code) - Constructor for class harpoon.Analysis.Quads.SSIStats
Creates a SSIStats.
SSIToSSA - Class in harpoon.IR.Quads
SSIToSSA renames variables to eliminate sigma functions in an SSI-form codeview, yielding an SSA codeview.
SSIToSSA(Code, QuadFactory) - Constructor for class harpoon.IR.Quads.SSIToSSA
Converts the given code (in SSI form) to a graph graph in SSA form created using the given code factory nqf.
SSIToSSAMap - Class in harpoon.Analysis.Quads
An SSIToSSAMap allows you to look at an SSI representation "with glasses on" so that it appears as SSA.
SSIToSSAMap(HCode) - Constructor for class harpoon.Analysis.Quads.SSIToSSAMap
Creates a SSIToSSAMap for the HCode hc.
SSxReachingDefsImpl<HCE extends HCodeElement> - Class in harpoon.Analysis
SSxReachingDefsImpl is a ReachingDefs implementation that works on codeviews in SSA or SSI form.
SSxReachingDefsImpl(HCode<HCE>) - Constructor for class harpoon.Analysis.SSxReachingDefsImpl
Create an SSxReachingDefs using the default UseDefer.
SSxReachingDefsImpl(HCode<HCE>, UseDefer<HCE>) - Constructor for class harpoon.Analysis.SSxReachingDefsImpl
Create an SSxReachingDefs for hc using the specified UseDefer.
STACK - Static variable in class harpoon.Backend.MIPS.StackInfo
 
STACK_ALLOCATE_ALWAYS - Static variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Stack allocate everything that's captured.
STACK_ALLOCATE_NOT_IN_LOOPS - Static variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Don't stack allocate in loops.
stack_allocate_not_in_loops() - Method in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Return true if policy is STACK_ALLOCATE_NOT_IN_LOOPS.
STACK_ALLOCATE_NOTHING - Static variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Don't stack allocate anything.
STACK_ALLOCATION_POLICY - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Forbids stack allocation in a loop.
stackDerivations - Variable in class harpoon.Backend.Generic.GCInfo.GCPoint
 
stackDerivations() - Method in class harpoon.Backend.Generic.GCInfo.GCPoint
Returns an unmodifiable Map of live derived pointers in StackOffsetLocs to the derivation information in the form of DLocs for that GC point
StackInfo - Class in harpoon.Backend.MIPS
This class encapsulates information about a given stack frame, e.g., does it grow up or down, where is the return address stored, that sort of thing.
StackInfo(RegFileInfo) - Constructor for class harpoon.Backend.MIPS.StackInfo
Each new frame should create a new stack info object.
stackLocs - Variable in class harpoon.Backend.Generic.GCInfo.DLoc
 
stackOffset() - Method in class harpoon.Backend.Generic.GCInfo.WrappedStackOffsetLoc
Returns the abstract stack offset of underlying StackOffsetLoc.
stackOffset() - Method in interface harpoon.Backend.Generic.RegFileInfo.StackOffsetLoc
 
stackSigns - Variable in class harpoon.Backend.Generic.GCInfo.DLoc
 
start() - Method in class harpoon.Util.Timer
Start the timer running.
start_pc - Variable in class harpoon.IR.RawClass.ExceptionTable
The values of the two items start_pc and end_pc indicate the ranges in the code array at which the exception handler is active.
start_pc - Variable in class harpoon.IR.RawClass.LineNumberTable
The value of the start_pc item must indicate the index into the code array at which the code for a new line in the original Java source file begins.
start_pc - Variable in class harpoon.IR.RawClass.LocalVariableTable
The given local variable must have a value at indices into the code array in the closed interval [start_pc, start_pc + length].
start_production() - Method in class harpoon.Tools.Annotation.Java12
start production
start_production() - Method in class harpoon.Tools.PatMat.Parser
start production
start_state() - Method in class harpoon.Tools.Annotation.Java12
start state
start_state() - Method in class harpoon.Tools.PatMat.Parser
start state
START_WITH - Static variable in class harpoon.Tools.PatMat.Sym
 
startGroup(InstrGroup.Type) - Method in class harpoon.Backend.Generic.CodeGen
 
startState() - Method in class harpoon.Analysis.PA2.Mutation.MutationNFA
 
state() - Method in class harpoon.Runtime.Transactions.CommitRecord
Returns the 'state' of this record (including dependencies)
state(CommitRecord) - Static method in class harpoon.Runtime.Transactions.CommitRecord
'StateP' procedure from write-up.
statements() - Method in class harpoon.Analysis.BasicBlock
Returns an unmodifiable List for the HCodeElements within this.
statements() - Method in interface harpoon.Analysis.BasicBlockInterf
Returns the list of the statements composing the basic block.
statements() - Method in class harpoon.Analysis.FCFGBasicBlock
 
STATIC - Static variable in class harpoon.Analysis.PointerAnalysis.PANode
Possible type: Static node.
STATIC - Static variable in class harpoon.Tools.Annotation.Sym
 
STATIC_OBJECTS - Static variable in class harpoon.IR.Tree.SEGMENT
R/W storage for static aggregate data
STATIC_PRIMITIVES - Static variable in class harpoon.IR.Tree.SEGMENT
R/W storage for static primitive data
staticCallDepth - Variable in class harpoon.Analysis.PA2.AnalysisPolicy
Lower bound of the static call depth.
staticInitializers - Variable in class harpoon.Backend.Runtime1.Runtime
 
StaticValue<HCE extends HCodeElement> - Class in harpoon.Analysis.Companions
A StaticValue is a pair of variable and statement, which represents all the variables possible values at the given program point.
StaticValue(Temp, HCE2) - Constructor for class harpoon.Analysis.Companions.StaticValue
Creates a StaticValue.
Stats - Class in harpoon.Analysis.PA2
Stats
Stats() - Constructor for class harpoon.Analysis.PA2.Stats
 
STATS - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
statWriter - Static variable in class harpoon.Main.Options
Stream for writing statistics.
STAY_IN_DECLARING_CLASS - Static variable in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
If true, the analysis will not descend into classes other than the class of the entry method.
STD_LIB - Static variable in class harpoon.Main.Settings
The standard library implementation that we use.
STD_LIB_VER - Static variable in class harpoon.Main.Settings
The version of the STD_LIB that we use.
Stm - Class in harpoon.IR.Tree
Stm objects are statements which perform side effects and control flow.
Stm(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.Stm
 
stm - Variable in class harpoon.Tools.PatMat.Spec.RuleStm
Statement associated with this.
StmList - Class in harpoon.IR.Tree
StmLists for singly-linked lists of Stms.
StmList(Stm, StmList) - Constructor for class harpoon.IR.Tree.StmList
List constructor.
stop() - Method in class harpoon.Util.Timer
Stop the timer.
storeCheck(Object) - Static method in class harpoon.Runtime.PreciseGC.WriteBarrier
dummy write barrier for PSETs
str - Variable in class harpoon.IR.Quads.DEBUG
The debugging string.
str() - Method in class harpoon.IR.Quads.DEBUG
Returns the debugging string printed by this quad.
str - Variable in class harpoon.Util.LightBasicBlocks.LightBasicBlock
 
STRICTFP - Static variable in class harpoon.Tools.Annotation.Sym
 
string() - Method in class harpoon.IR.RawClass.ConstantString
 
STRING_CONSTANTS - Static variable in class harpoon.IR.Tree.SEGMENT
R/O storage for string constant objects
STRING_DATA - Static variable in class harpoon.IR.Tree.SEGMENT
R/O storage for component character arrays of statically allocated string constant objects.
string_index - Variable in class harpoon.IR.RawClass.ConstantString
The value of the string_index item must be a valid index into the constant_pool table.
string_index() - Method in class harpoon.IR.RawClass.ConstantString
 
STRING_LITERAL - Static variable in class harpoon.Tools.Annotation.Sym
 
stringConst(TreeFactory, HCodeElement, DerivationGenerator, String) - Method in class harpoon.Backend.Generic.Runtime.TreeBuilder
Return a Translation.Exp which represents a reference to a string constant.
stringConst(TreeFactory, HCodeElement, DerivationGenerator, String) - Method in class harpoon.Backend.Runtime1.TreeBuilder
 
stringConstantMap() - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
 
stringConstants() - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
 
stringImg(Collection) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
Provides a string representation of a set; the elements of the set appear in increasing lexicographic order.
stringImg(Object[]) - Static method in class harpoon.Analysis.PointerAnalysis.Debug
 
stringLabel(String) - Static method in class harpoon.Analysis.Realtime.RealtimeAllocationStrategy
Return a label corresponding to the string s.
StringPointer - Class in harpoon.Interpret.Tree
The StringPointer class represents a pointer to an string constant.
STRONGARM - Static variable in class harpoon.Backend.Backend
StrongARM backend
StubCode - Class in harpoon.Backend.Runtime1
StubCode is used to generate non-canonical tree code stubs for native methods.
StubCode(HMethod, Frame) - Constructor for class harpoon.Backend.Runtime1.StubCode
Creates a StubCode.
subgroupOf(InstrGroup) - Method in class harpoon.IR.Assem.InstrGroup
Returns true if this is (reflexively) contained in group.
SUCC - Static variable in class harpoon.Analysis.PreciseGC.MRA.MRAToken
 
succ() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
succ() - Method in class harpoon.IR.Assem.Instr
Returns the control flow successors of this.
succ() - Method in class harpoon.IR.Bytecode.Instr
 
succ() - Method in interface harpoon.IR.Properties.CFGraphable
Returns an array of all the edges leaving this CFGraphable.
succ() - Method in class harpoon.IR.Quads.Quad
 
succC() - Method in class harpoon.IR.Assem.Instr
Returns the control flow successors of this.
succC() - Method in class harpoon.IR.Bytecode.Instr
 
succC() - Method in interface harpoon.IR.Properties.CFGraphable
Returns a List of all the edges from this HCodeElement.
succC(HCE) - Method in class harpoon.IR.Properties.CFGrapher
Returns a List of all the edges from this HCodeElement.
succC() - Method in class harpoon.IR.Quads.Quad
 
succC() - Method in class harpoon.Util.Collections.AbstractGraph.Node
 
succC() - Method in interface harpoon.Util.Collections.Graph.Node
Return a collection of edges leaving this node.
succElemC(HCE) - Method in class harpoon.IR.Properties.CFGrapher
Returns a Collection of all the HCodeElement succeeding hc.
succSet(Temp) - Method in class harpoon.Analysis.Quads.QuadInterferenceGraph
 
succSet(N) - Method in interface harpoon.Util.Grapher
 
suggestRegAssignment(Temp, Map, Collection) - Method in class harpoon.Backend.Generic.RegFileInfo
Analyzes regfile to find free registers that t can be assigned to.
suggestRegAssignment(Temp, Map, Collection) - Method in class harpoon.Backend.MIPS.RegFileInfo
 
suggestRegAssignment(Temp, Map) - Method in class harpoon.Backend.Sparc.RegFileInfo
 
suggestRegAssignment(Temp, Map, Collection) - Method in class harpoon.Backend.StrongARM.RegFileInfo
 
summarize(Collection<N>) - Method in class harpoon.Util.Collections.AbstractGraph
 
summarize(N) - Method in class harpoon.Util.Collections.AbstractGraph
 
summarize(N) - Method in interface harpoon.Util.Collections.MutableGraph
Remove the given node, preserving edges: if A->N->B, then after removing N there is an edge A->B.
summarize(Collection<N>) - Method in interface harpoon.Util.Collections.MutableGraph
Remove all specified nodes, preserving path information.
SUPER - Static variable in class harpoon.Tools.Annotation.Sym
 
super_class - Variable in class harpoon.IR.RawClass.ClassFile
For a class, the value of the super_class item either must be zero or must be a valid index into the constant_pool table.
super_class() - Method in class harpoon.IR.RawClass.ClassFile
Return the CONSTANT_Class_info entry in the constant_pool corresponding to the value of super_class, or null if super_class == 0.
SWAP - Static variable in class harpoon.IR.Bytecode.Op
 
swapAdd(HMethod) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
swapAdd takes in an HMethod and returns an HMethod that is to be called following the first method is called.
swapTo(HMethod) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
swapTo takes in an HMethod and returns an HMethod that is to be called following the first method is called.
SWITCH - Static variable in class harpoon.IR.Quads.QuadKind
 
SWITCH - Class in harpoon.IR.Quads
SWITCH represents a switch construct.
SWITCH(QuadFactory, HCodeElement, Temp, int[], Temp[][], Temp[]) - Constructor for class harpoon.IR.Quads.SWITCH
Creates a SWITCH operation.
SWITCH(QuadFactory, HCodeElement, Temp, int[], Temp[]) - Constructor for class harpoon.IR.Quads.SWITCH
Creates a switch with arity defined by the keys array.
SWITCH - Static variable in class harpoon.Tools.Annotation.Sym
 
swop(HMethod) - Method in interface harpoon.Analysis.EventDriven.BMethod
 
Sym - Class in harpoon.Tools.Annotation
CUP generated class containing symbol constants.
Sym() - Constructor for class harpoon.Tools.Annotation.Sym
 
Sym - Class in harpoon.Tools.PatMat
CUP generated class containing symbol constants.
Sym() - Constructor for class harpoon.Tools.PatMat.Sym
 
SYNCHRONIZED - Static variable in class harpoon.Tools.Annotation.Sym
 
SyncRemover - Class in harpoon.Analysis.DynamicSyncRemoval
SyncRemover calls a "magic" native method to determine if synchronization should be done on this object, and skips the MONITORENTER/MONITOREXIT sequence if the answer is no.
SyncRemover(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.DynamicSyncRemoval.SyncRemover
Creates a SyncRemover.
syncsOn(PANode, PANode) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
 
SyncTransformer - Class in harpoon.Analysis.Transactions
SyncTransformer transforms synchronized code to atomic transactions.
SyncTransformer(HCodeFactory, ClassHierarchy, Linker, boolean, HMethod, Set) - Constructor for class harpoon.Analysis.Transactions.SyncTransformer
Creates a SyncTransformer with no transaction root methods.
SyncTransformer(HCodeFactory, ClassHierarchy, Linker, boolean, HMethod, Set, String) - Constructor for class harpoon.Analysis.Transactions.SyncTransformer
Creates a SyncTransformer with a transaction root method set loaded from the specified resource name.
SyncTransformer(HCodeFactory, ClassHierarchy, Linker, boolean, HMethod, Set, Set<HMethod>) - Constructor for class harpoon.Analysis.Transactions.SyncTransformer
Creates a SyncTransformer with the specified transaction root method set.
syntax_error(Symbol) - Method in class harpoon.Tools.Annotation.Java12
 
syntax_error(Symbol) - Method in class harpoon.Tools.PatMat.Parser
 
systemCodeFactory - Static variable in class harpoon.ClassFile.Loader
System code factory: this code factory will return bytecode representations for classes loaded via the system linker.
systemLinker - Static variable in class harpoon.ClassFile.Loader
System-linker: the class names resolved by this linker are always immutable and identical to those on disk.

T

t_label - Variable in class harpoon.Tools.PatMat.Spec.StmCjump
Label to branch to on a True value.
ta - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
TABLESWITCH - Static variable in class harpoon.IR.Bytecode.Op
 
tail - Variable in class harpoon.Backend.CSAHack.Graph.NodeList
 
tail - Variable in class harpoon.Backend.CSAHack.RegAlloc.MoveList
 
tail - Variable in class harpoon.IR.Tree.ExpList
The next list entry.
tail - Variable in class harpoon.IR.Tree.StmList
The next list entry.
tail - Variable in class harpoon.Temp.LabelList
Deprecated.  
tail - Variable in class harpoon.Temp.TempList
 
tail - Variable in class harpoon.Tools.PatMat.Spec.DetailList
 
tail - Variable in class harpoon.Tools.PatMat.Spec.ExpList
 
tail - Variable in class harpoon.Tools.PatMat.Spec.IdList
 
tail - Variable in class harpoon.Tools.PatMat.Spec.RuleList
 
targets - Variable in class harpoon.IR.Tree.JUMP
A list of possible branch targets.
tau - Variable in class harpoon.Analysis.PointerAnalysis.ParIntGraph
The paralel thread map; it attaches to each thread node nT, an integer from the set {0,1,2} where 2 signifies the possibility that multiple instances of nT execute in parallel with the current thread.
temp - Variable in class harpoon.Analysis.PA2.Mutation.MLabel.Param
 
temp() - Method in class harpoon.Analysis.PA2.Mutation.ParamInfo
 
TEMP - Class in harpoon.IR.Tree
TEMP objects are expressions which stand for a value in a virtual register.
TEMP(TreeFactory, HCodeElement, int, Temp) - Constructor for class harpoon.IR.Tree.TEMP
Constructor.
temp - Variable in class harpoon.IR.Tree.TEMP
The Temp which this TEMP refers to.
TEMP - Static variable in class harpoon.IR.Tree.TreeKind
 
Temp - Class in harpoon.Temp
The Temp class represents a temporary variable.
Temp(TempFactory) - Constructor for class harpoon.Temp.Temp
Creates a unique temporary variable, using default prefix ("t").
Temp(Temp) - Constructor for class harpoon.Temp.Temp
Creates a new temp based on the name of an existing temp.
Temp(TempFactory, String) - Constructor for class harpoon.Temp.Temp
Creates a unique temporary with a suggested name.
TEMP - Static variable in class harpoon.Tools.PatMat.Sym
 
Temp_to_BitSetFactories - Variable in class harpoon.Analysis.ReachingDefsImpl
 
TempBuilder - Class in harpoon.Backend.Generic
TempBuilder defines an interface that general program transformations can call to generate data structures to represent Temps.
TempBuilder() - Constructor for class harpoon.Backend.Generic.TempBuilder
Creates a TempBuilder.
TempBuilder - Class in harpoon.Backend.MIPS
TempBuilder for MIPS.
TempBuilder() - Constructor for class harpoon.Backend.MIPS.TempBuilder
Creates a TempBuilder.
TempBuilder - Class in harpoon.Backend.Sparc
TempBuilder for creating Temps for the Sparc architecture, and providing an interface for querying whether these Temps require two words of storage or use floating point registers.
TempBuilder() - Constructor for class harpoon.Backend.Sparc.TempBuilder
 
TempBuilder - Class in harpoon.Backend.StrongARM
TempBuilder for StrongARM.
TempBuilder() - Constructor for class harpoon.Backend.StrongARM.TempBuilder
Creates a TempBuilder.
TempChain - Class in harpoon.IR.Quads
TempChain needs to be documented.
TempChain(TempFactory, String) - Constructor for class harpoon.IR.Quads.TempChain
Creates a TempChain.
TempChain(TempChain) - Constructor for class harpoon.IR.Quads.TempChain
 
tempCtoNodes(Collection, Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
tempFactory() - Method in class harpoon.Interpret.Tree.DefaultFrame
 
tempFactory() - Method in class harpoon.IR.Assem.InstrFactory
Returns the TempFactory to use for creating Temps which are used as arguments to Instrs generated by this factory.
tempFactory() - Method in class harpoon.IR.Quads.QuadFactory
Returns the TempFactory to use for Temp arguments to Quads generated by this factory.
tempFactory() - Method in class harpoon.IR.Tree.Code.TreeFactory
 
tempFactory() - Method in class harpoon.IR.Tree.Data.TreeFactory
No temp factory for Data
tempFactory() - Method in class harpoon.IR.Tree.TreeFactory
Returns the TempFactory to use for Temp arguments to Exps and Stms generated by this factory.
tempFactory() - Method in class harpoon.Temp.Temp
Returns the tempFactory of this temporary.
tempFactory(String) - Static method in class harpoon.Temp.Temp
Returns a new TempFactory with the given scope.
TempFactory - Class in harpoon.Temp
A TempFactory assigns unique identifiers to Temps within a given scope.
TempFactory() - Constructor for class harpoon.Temp.TempFactory
 
TempInfo - Class in harpoon.IR.Jasmin
TempInfo
TempInstrPair - Class in harpoon.Analysis.Instr
TempInstrPair is an immutable data structure that associates an Instr with a Temp.
TempInstrPair(Instr, Temp) - Constructor for class harpoon.Analysis.Instr.TempInstrPair
 
TempInstrPair(Temp, Instr) - Constructor for class harpoon.Analysis.Instr.TempInstrPair
 
TempList - Class in harpoon.Temp
A singly-linked list of temporary variables.
TempList(Temp, TempList) - Constructor for class harpoon.Temp.TempList
 
tempMap(Temp) - Method in class harpoon.Analysis.Instr.EqTempSets
 
tempMap(Temp) - Method in class harpoon.Analysis.LowQuad.Loop.LoopMap
 
tempMap(Temp) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
tempMap(Temp) - Method in class harpoon.Analysis.Quads.SSIToSSAMap
 
tempMap(Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.RegAlloc
A mapping of temporaries to registers.
tempMap() - Method in class harpoon.ClassFile.HCodeAndMaps
An immutable mapping from ancestor Temps to newly-cloned Temps.
tempMap() - Method in class harpoon.IR.Quads.RSSxToNoSSA
 
tempMap - Variable in class harpoon.IR.Quads.SSIRename
Map from old no-ssa temps to new ssi temps (incomplete).
tempMap - Variable in class harpoon.IR.Quads.SSIToSSA
Map from old ssi temps to new ssa temps.
tempMap(Temp) - Method in class harpoon.Temp.CloningTempMap
Return a Temp from the new_tf TempFactory that corresponds to the specified Temp t from the old_tf TempFactory, creating it if necessary.
TempMap - Interface in harpoon.Temp
A TempMap maps one Temp to another Temp.
tempMap(Temp) - Method in interface harpoon.Temp.TempMap
Rename a single Temp.
tempRef(DerivationGenerator, TreeFactory, Exp, Temp) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
t
tempToAllDefs - Variable in class harpoon.Analysis.ReachingDefsAltImpl
 
TempVisitor - Class in harpoon.Backend.MIPS
TempVisitor is an extension of TempVisitor for handling extensions of Temp local to the MIPS backend.
TempVisitor() - Constructor for class harpoon.Backend.MIPS.TempVisitor
 
TempVisitor - Class in harpoon.Backend.StrongARM
TempVisitor is an extension of TempVisitor for handling extensions of Temp local to the StrongARM backend.
TempVisitor() - Constructor for class harpoon.Backend.StrongARM.TempVisitor
 
test - Variable in class harpoon.IR.Quads.CJMP
 
test() - Method in class harpoon.IR.Quads.CJMP
Returns the Temp tested by this CJMP.
test - Variable in class harpoon.Tools.PatMat.Spec.StmCjump
Boolean expression that decides which direction we're jumping.
testOPER() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
testOPER gives the OPER containing the for loop test condition.
TestRun - Class in harpoon.Interpret.Tree
Run invokes the interpreter.
TestRun() - Constructor for class harpoon.Interpret.Tree.TestRun
 
testtype() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
testtype tells the type of test used.
TEXT - Static variable in class harpoon.IR.Tree.SEGMENT
Read-only memory (other than machine instructions)
tf - Variable in class harpoon.IR.Tree.Code
Tree factory.
tf - Variable in class harpoon.IR.Tree.Data
 
THIS - Static variable in class harpoon.Tools.Annotation.Sym
 
this_class - Variable in class harpoon.IR.RawClass.ClassFile
The value of the this_class item must be a valid index into the constant_pool table.
this_class() - Method in class harpoon.IR.RawClass.ClassFile
Return the CONSTANT_Class_info entry in the constant_pool corresponding to the value of this_class.
THIS_THREAD - Static variable in class harpoon.Analysis.PointerAnalysis.ActionRepository
Fake thread node that stands for the main thread of the analyzed scope.
THREAD_SENSITIVE - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Activates the full thread sensitivity.
ThreadInliner - Class in harpoon.IR.Quads
ThreadInliner
ThreadInliner() - Constructor for class harpoon.IR.Quads.ThreadInliner
 
threadInteraction(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Returns the parallel interaction graph for the end of the method hm.
THROW - Static variable in class harpoon.IR.Quads.QuadKind
 
THROW - Class in harpoon.IR.Quads
THROW represents a throw statement.
THROW(QuadFactory, HCodeElement, Temp) - Constructor for class harpoon.IR.Quads.THROW
Creates a THROW representing a exception throw statement.
THROW - Class in harpoon.IR.Tree
THROW objects are used to represent a thrown exception.
THROW(TreeFactory, HCodeElement, Exp, Exp) - Constructor for class harpoon.IR.Tree.THROW
Constructor
THROW - Static variable in class harpoon.IR.Tree.TreeKind
 
THROW - Static variable in class harpoon.Tools.Annotation.Sym
 
THROW - Static variable in class harpoon.Tools.PatMat.Sym
 
throwable - Variable in class harpoon.IR.Quads.THROW
 
throwable() - Method in class harpoon.IR.Quads.THROW
Returns the Temp containing the exception object to throw.
THROWS - Static variable in class harpoon.Tools.Annotation.Sym
 
TIME - Static variable in class harpoon.Analysis.Instr.RegAlloc
Flags whether timing information should be printed to System.out.
TIME - Static variable in class harpoon.Analysis.ReachingDefs
 
TIME_PREANALYSIS - Static variable in class harpoon.Analysis.PA2.Flags
If true, the whole-program analysis will eagerly execute and time all the pre-analysis: IR construction, call graph, etc.
timeElapsed() - Method in class harpoon.Util.Timer
Return the cumulative amount of time elapsed between starts and stops in milliseconds.
timePointerAnalysis(HMethod, Collection<HMethod>, PointerAnalysis, AnalysisPolicy, String) - Static method in class harpoon.Analysis.PA2.PAUtil
 
Timer - Class in harpoon.Util
Timer keeps track of how much time accumulates between successive calls to start and stop.
Timer() - Constructor for class harpoon.Util.Timer
Create a new Timer and initialize timeElapsed to 0.
TIMING - Static variable in class harpoon.Analysis.PointerAnalysis.InterThreadPA
Displays some time statistics.
TIMING - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Turns on the printing of some timing info.
TinyClassFieldMap - Class in harpoon.Backend.RuntimeTiny
TinyClassFieldMap is an extension of ClassFieldMap which lays out objects *attempting* to align them, but not forcing an alignment.
TinyClassFieldMap() - Constructor for class harpoon.Backend.RuntimeTiny.TinyClassFieldMap
Creates a TinyClassFieldMap.
TinyClassFieldMap(int) - Constructor for class harpoon.Backend.RuntimeTiny.TinyClassFieldMap
Creates a TinyClassFieldMap.
TinyPackedClassFieldMap - Class in harpoon.Backend.RuntimeTiny
PackedClassFieldMap is a FieldMap for non-static fields of a class which attempts to maximally fill holes in the data structure (even if this means commingling a subclass' fields with those of its superclass) in order to minimize the space required by objects.
TinyPackedClassFieldMap(Runtime) - Constructor for class harpoon.Backend.RuntimeTiny.TinyPackedClassFieldMap
Creates a PackedClassFieldMap.
tnode(Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.InterferenceGraph
 
tnode(Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.Liveness
 
to() - Method in interface harpoon.ClassFile.HCodeEdge
Returns the destination of the HCodeEdge.
to - Variable in class harpoon.IR.Assem.InstrEdge
 
to() - Method in class harpoon.IR.Assem.InstrEdge
 
to() - Method in class harpoon.IR.Properties.CFGEdge
Returns the destination of this HCodeEdge.
to() - Method in class harpoon.IR.Quads.Edge
Returns the destination vertex of this Edge.
to() - Method in class harpoon.Util.Collections.AbstractGraph.Edge
 
to() - Method in interface harpoon.Util.Collections.Graph.Edge
Returns the node this edges goes to.
toAssem(Instr) - Method in class harpoon.Backend.Generic.Code
Overrides superclass implementation of toAssem to return an empty string if instr can be safely eliminated from output.
toAssem(Instr) - Method in class harpoon.IR.Assem.Code
Produces an assembly code string for instr.
ToAsync - Class in harpoon.Analysis.EventDriven
ToAsync
ToAsync(CachingCodeFactory, HCode, ClassHierarchy, Linker, boolean, MetaCallGraph, boolean, Set) - Constructor for class harpoon.Analysis.EventDriven.ToAsync
Creates a ToAsync.
toBop() - Method in class harpoon.Tools.PatMat.Spec.Leaf
 
toBop() - Method in class harpoon.Tools.PatMat.Spec.LeafOp
 
ToCanonicalTree - Class in harpoon.IR.Tree
The ToCanonicalTree class translates tree code to canonical tree code (no ESEQ).
ToCanonicalTree(TreeFactory, Code) - Constructor for class harpoon.IR.Tree.ToCanonicalTree
Class constructor.
toDo - Variable in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
toExpList(List) - Static method in class harpoon.IR.Tree.ExpList
 
toList(LabelList) - Static method in class harpoon.Temp.LabelList
Deprecated. Converts a LabelList to a java.util.List.
toLongString() - Method in class harpoon.IR.Quads.Quad
Returns a string representation of this quad containing the source file and the line number info, in addition to the other information provided by the regulat toString().
ToNoSSA - Class in harpoon.IR.Quads
The ToNoSSA class implements the translation between SSA and No-SSA form.
ToNoSSA(QuadFactory, Code) - Constructor for class harpoon.IR.Quads.ToNoSSA
 
ToNoSSA(QuadFactory, Code, TypeMap) - Constructor for class harpoon.IR.Quads.ToNoSSA
 
ToNoSSA(QuadFactory, Code, Derivation) - Constructor for class harpoon.IR.Quads.ToNoSSA
 
TOP - Static variable in class harpoon.Analysis.PreciseGC.MRA.MRAToken
 
topDown() - Method in class harpoon.Analysis.SESE
Iterate through SESE regions, top-down.
TOPLAS_PAPER - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
 
topLevel - Variable in class harpoon.Analysis.SESE
Root of Region tree.
toRegExp() - Method in class harpoon.Analysis.PA2.Mutation.MutationNFA
 
toStm(List<Stm>) - Static method in class harpoon.IR.Tree.Stm
Returns a tree-based representation of list.
toString() - Method in class harpoon.Analysis.BasicBlock.Factory
 
toString() - Method in class harpoon.Analysis.BasicBlock
 
toString() - Method in class harpoon.Analysis.Context
 
toString() - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor.LiveVarInfo
 
toString() - Method in class harpoon.Analysis.FCFGBasicBlock
Returns a string identifying this FCFGBasicBlock.
toString() - Method in class harpoon.Analysis.GraphColoring.DefaultSparseNode
 
toString() - Method in class harpoon.Analysis.GraphColoring.Node
 
toString() - Method in class harpoon.Analysis.Instr.LocalCffRegAlloc.PreassignTemp
 
toString() - Method in class harpoon.Analysis.Instr.SpillHeuristics.SpillHeuristic
 
toString() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
toString method returns string describing contents of the class.
toString() - Method in class harpoon.Analysis.LowQuad.Loop.LoopAnalysis.ForLoopInfo
toString returns a string representation of the for loop.
toString() - Method in class harpoon.Analysis.Maps.Derivation.DList
Returns a human-readable description of this DList.
toString() - Method in class harpoon.Analysis.MemOpt.SSILiveness
 
toString() - Method in class harpoon.Analysis.MetaMethods.GenType
Pretty printer for debug purposes.
toString() - Method in class harpoon.Analysis.MetaMethods.MetaMethod
Pretty printer for debug purposes.
toString() - Method in class harpoon.Analysis.PA2.AnalysisPolicy
 
toString() - Method in class harpoon.Analysis.PA2.EVar
 
toString() - Method in class harpoon.Analysis.PA2.FVar
 
toString() - Method in class harpoon.Analysis.PA2.InterProcAnalysisResult
 
toString() - Method in class harpoon.Analysis.PA2.IVar
 
toString() - Method in class harpoon.Analysis.PA2.LVar
 
toString() - Method in class harpoon.Analysis.PA2.Mutation.MLabel.Field
 
toString() - Method in class harpoon.Analysis.PA2.Mutation.MLabel.Param
 
toString() - Method in class harpoon.Analysis.PA2.Mutation.MLabel.Reach
 
toString() - Method in class harpoon.Analysis.PA2.Mutation.MLabel.ReachFromStat
 
toString() - Method in class harpoon.Analysis.PA2.NodeRepository.INode
 
toString() - Method in class harpoon.Analysis.PA2.OVar
 
toString() - Method in class harpoon.Analysis.PA2.PAEdgeSet
 
toString() - Method in class harpoon.Analysis.PA2.WriteConstraint
 
toString() - Method in class harpoon.Analysis.PA2.WVar
 
toString() - Method in class harpoon.Analysis.Partition.WeightedGraph
 
toString() - Method in class harpoon.Analysis.Partition.WGNode
 
toString() - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
toString() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
toString() - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
Pretty-printer for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
String representation for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
 
toString() - Method in class harpoon.Analysis.PointerAnalysis.MyAP
Pretty printer for debug.
toString() - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Pretty-printer for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.PAEdge
String representation for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Pretty-print debug function.
toString() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Pretty-print function for debug purposes
toString() - Method in class harpoon.Analysis.PointerAnalysis.ParIntGraph
Pretty-print function for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.PASync
String representation for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.PAThreadMap
Pretty print function for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Pretty-print function for debug purposes.
toString() - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
Pretty-print function for debug.
toString() - Method in class harpoon.Analysis.PreciseGC.MRA.MRAToken
Returns a String representation of the Token.
toString() - Method in class harpoon.Analysis.Quads.DeepInliner.InlineChain
 
toString() - Method in class harpoon.Analysis.Quads.MustParamOracle
 
toString() - Method in class harpoon.Analysis.Quads.QuadClassHierarchy
Returns a human-readable representation of the hierarchy.
toString() - Method in class harpoon.Analysis.Quads.QuadCounter
Print a textual representation of this QuadCounter.
toString() - Method in class harpoon.Analysis.SESE.Region
 
toString() - Method in class harpoon.Analysis.Transactions.BitFieldNumbering.BitFieldTuple
 
toString() - Method in class harpoon.Analysis.Transformation.MethodSplitter.Token
Returns a human-readable representation of this token.
toString() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
toString() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
toString() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.IntegerValue
 
toString() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.KGroup
 
toString() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.NameDefPoint
 
toString() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.TempDefPoint
 
toString() - Method in class harpoon.Analysis.Tree.Simplification.Rule
Returns a human-readable name for this rule.
toString() - Method in class harpoon.Analysis.TypeInference.IntraProc
 
toString() - Method in class harpoon.Backend.CSAHack.Graph.Node
 
toString() - Method in class harpoon.ClassFile.HClass
Converts the object to a string.
toString() - Method in class harpoon.ClassFile.HCode
Returns a human-readable representation of this HCode.
toString() - Method in interface harpoon.ClassFile.HConstructor
Return a string describing this Constructor.
toString() - Method in interface harpoon.ClassFile.HField
Return a string describing this HField.
toString() - Method in interface harpoon.ClassFile.HMethod
Returns a string describing this HMethod.
toString() - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Returns a human-readable representation of this InterfaceListPointer.
toString() - Method in class harpoon.Interpret.Tree.StringPointer
 
toString() - Method in class harpoon.Interpret.Tree.UndefinedPointer
Returns a human-readable representation of this UndefinedPointer.
toString() - Method in class harpoon.IR.Assem.Instr
Returns a string representation of the Instr.
toString() - Method in class harpoon.IR.Assem.InstrEdge
 
toString() - Method in class harpoon.IR.Assem.InstrFactory
Returns a human-readable representation for this InstrFactory.
toString() - Method in class harpoon.IR.Assem.InstrGroup
 
toString() - Method in class harpoon.IR.Assem.InstrGroup.Type
 
toString() - Method in class harpoon.IR.Bytecode.Code.ExceptionEntry
 
toString() - Method in class harpoon.IR.Bytecode.InCti
Return human-readable instruction string.
toString() - Method in class harpoon.IR.Bytecode.InGen
Return human-readable instruction string.
toString() - Method in class harpoon.IR.Bytecode.InMerge
Return human-readable representation.
toString() - Method in class harpoon.IR.Bytecode.InRet
 
toString() - Method in class harpoon.IR.Bytecode.InSwitch
Return human-readable instruction string.
toString(byte) - Static method in class harpoon.IR.Bytecode.Op
Get the human-readable name of a given opcode.
toString() - Method in class harpoon.IR.Bytecode.OpClass
Return a human-readable string given the value of this object.
toString() - Method in class harpoon.IR.Bytecode.OpConstant
Return a human-readable representation of this OpConstant.
toString() - Method in class harpoon.IR.Bytecode.Operand
Return a human-readable representation of this Operand.
toString() - Method in class harpoon.IR.Bytecode.OpField
Return the canonical name of this field.
toString() - Method in class harpoon.IR.Bytecode.OpLocalVariable
Return a human-readable representation of this Operand.
toString() - Method in class harpoon.IR.Bytecode.OpMethod
Return the canonical name of the method referenced.
toString() - Method in class harpoon.IR.LowQuad.LowQuadFactory
 
toString(int) - Static method in class harpoon.IR.LowQuad.LQop
 
toString() - Method in class harpoon.IR.LowQuad.PAOFFSET
 
toString() - Method in class harpoon.IR.LowQuad.PARRAY
 
toString() - Method in class harpoon.IR.LowQuad.PCALL
 
toString() - Method in class harpoon.IR.LowQuad.PFCONST
 
toString() - Method in class harpoon.IR.LowQuad.PFIELD
 
toString() - Method in class harpoon.IR.LowQuad.PFOFFSET
 
toString() - Method in class harpoon.IR.LowQuad.PGET
 
toString() - Method in class harpoon.IR.LowQuad.PMCONST
 
toString() - Method in class harpoon.IR.LowQuad.PMETHOD
 
toString() - Method in class harpoon.IR.LowQuad.PMOFFSET
 
toString() - Method in class harpoon.IR.LowQuad.POPER
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.LowQuad.PSET
 
toString() - Method in class harpoon.IR.Quads.AGET
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.ALENGTH
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.ANEW
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.ARRAYINIT
Returns human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.ASET
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.CALL
Returns human-readable representation.
toString() - Method in class harpoon.IR.Quads.CJMP
Returns human-readable representation.
toString() - Method in class harpoon.IR.Quads.COMPONENTOF
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.CONST
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.DEBUG
Returns a human-readable version of the DEBUG quad.
toString() - Method in class harpoon.IR.Quads.Edge
Returns a human-readable representation of the Edge.
toString() - Method in class harpoon.IR.Quads.FOOTER
Returns human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.GET
Returns human-readable representation.
toString() - Method in class harpoon.IR.Quads.HANDLER
Returns human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.HEADER
Returns human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.INSTANCEOF
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.LABEL
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.METHOD
Returns human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.MONITORENTER
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.MONITOREXIT
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.MOVE
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.NEW
Returns a human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.NOP
Returns human-readable representation.
toString() - Method in class harpoon.IR.Quads.OPER
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.PHI
Returns a human-readable representation of this Quad.
toString(int) - Static method in class harpoon.IR.Quads.Qop
Converts the enumerated Qop value to a descriptive string.
toString() - Method in class harpoon.IR.Quads.Quad
Force everyone to reimplement toString()
toString() - Method in class harpoon.IR.Quads.QuadFactory
Returns a human-readable representation for this QuadFactory.
toString() - Method in class harpoon.IR.Quads.RETURN
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.SET
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.SIGMA
 
toString() - Method in class harpoon.IR.Quads.SWITCH
Returns human-readable representation of this quad.
toString() - Method in class harpoon.IR.Quads.THROW
Returns human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.TYPECAST
Returns a human-readable representation of this Quad.
toString() - Method in class harpoon.IR.Quads.TYPESWITCH
Returns human-readable representation of this quad.
toString() - Method in class harpoon.IR.RawClass.AccessFlags
Returns a string with the access flags in canonical order.
toString() - Method in class harpoon.IR.RawClass.Attribute
Create a human-readable representation for the Attribute.
toString() - Method in class harpoon.IR.RawClass.Constant
Create a human-readable representation for the Constant.
toString() - Method in class harpoon.IR.RawClass.ConstantClass
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantDouble
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantFieldref
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantFloat
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantInteger
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantInterfaceMethodref
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantLong
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantMethodref
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantNameAndType
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantString
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ConstantUtf8
Create a human-readable representation of this constant.
toString() - Method in class harpoon.IR.RawClass.ExceptionTable
Human-readable representation.
toString() - Method in class harpoon.IR.RawClass.InnerClass
Human-readable representation.
toString() - Method in class harpoon.IR.RawClass.LineNumberTable
Human-readable string:
toString() - Method in class harpoon.IR.Tree.ALIGN
 
toString() - Method in class harpoon.IR.Tree.BINOP
 
toString(int) - Static method in class harpoon.IR.Tree.Bop
Converts the enumerated Bop value to a human-readable string.
toString() - Method in class harpoon.IR.Tree.CALL
 
toString() - Method in class harpoon.IR.Tree.CJUMP
 
toString() - Method in class harpoon.IR.Tree.Code.TreeFactory
 
toString() - Method in class harpoon.IR.Tree.CONST
 
toString() - Method in class harpoon.IR.Tree.Data.TreeFactory
 
toString() - Method in class harpoon.IR.Tree.DATUM
 
toString() - Method in class harpoon.IR.Tree.ESEQ
 
toString() - Method in class harpoon.IR.Tree.ExpList
 
toString() - Method in class harpoon.IR.Tree.EXPR
 
toString() - Method in class harpoon.IR.Tree.JUMP
 
toString() - Method in class harpoon.IR.Tree.LABEL
 
toString() - Method in class harpoon.IR.Tree.MEM
 
toString() - Method in class harpoon.IR.Tree.METHOD
Returns human-readable representation of this Tree.
toString() - Method in class harpoon.IR.Tree.MOVE
 
toString() - Method in class harpoon.IR.Tree.NAME
 
toString() - Method in class harpoon.IR.Tree.NATIVECALL
 
toString() - Method in class harpoon.IR.Tree.RETURN
 
toString() - Method in class harpoon.IR.Tree.SEGMENT
 
toString() - Method in class harpoon.IR.Tree.SEQ
 
toString() - Method in class harpoon.IR.Tree.TEMP
 
toString() - Method in class harpoon.IR.Tree.THROW
 
toString() - Method in class harpoon.IR.Tree.TreeFactory
Returns a human-readable representation for this TreeFactory.
toString(int) - Static method in class harpoon.IR.Tree.Type
Return a string describing the given enumerated type.
toString(PreciselyTyped) - Static method in class harpoon.IR.Tree.Type
Return a string describing the type of a PreciselyTyped expression.
toString() - Method in class harpoon.IR.Tree.UNOP
 
toString(int) - Static method in class harpoon.IR.Tree.Uop
Converts the enumerated Uop value to a human-readable string.
toString() - Method in exception harpoon.Runtime.Transactions.TransactionAbortException
 
toString() - Method in class harpoon.Temp.Label
a printable representation of the label, for use in assembly language output.
toString() - Method in class harpoon.Temp.Temp
Returns a string representation of this temporary.
toString() - Method in class harpoon.Temp.TempFactory
Human-readable representation of TempFactory
toString() - Method in class harpoon.Temp.TempList
 
toString() - Method in class harpoon.Tools.Annotation.Lex.Identifier
 
toString() - Method in class harpoon.Tools.Annotation.Lex.LinePos
Human-readable representation.
toString() - Method in class harpoon.Tools.PatMat.Spec.DetailExtra
 
toString() - Method in class harpoon.Tools.PatMat.Spec.DetailList
 
toString() - Method in class harpoon.Tools.PatMat.Spec.DetailPredicate
 
toString() - Method in class harpoon.Tools.PatMat.Spec.DetailWeight
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpBinop
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpConst
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpId
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpList
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpMem
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpName
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpTemp
 
toString() - Method in class harpoon.Tools.PatMat.Spec.ExpUnop
 
toString() - Method in class harpoon.Tools.PatMat.Spec.IdList
 
toString() - Method in class harpoon.Tools.PatMat.Spec.LeafId
 
toString() - Method in class harpoon.Tools.PatMat.Spec.LeafNull
 
toString() - Method in class harpoon.Tools.PatMat.Spec.LeafNumber
 
toString() - Method in class harpoon.Tools.PatMat.Spec.LeafOp
 
toString() - Method in class harpoon.Tools.PatMat.Spec.LeafSegType
 
toString() - Method in class harpoon.Tools.PatMat.Spec.Rule
 
toString() - Method in class harpoon.Tools.PatMat.Spec.RuleExp
 
toString() - Method in class harpoon.Tools.PatMat.Spec.RuleList
 
toString() - Method in class harpoon.Tools.PatMat.Spec.RuleStm
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmAlign
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmCall
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmCjump
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmData
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmExp
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmJump
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmLabel
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmMethod
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmMove
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmNativeCall
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmReturn
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmSegment
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmSeq
 
toString() - Method in class harpoon.Tools.PatMat.Spec.StmThrow
 
toString() - Method in class harpoon.Tools.PatMat.Spec
 
toString() - Method in class harpoon.Tools.PatMat.Spec.TypeSet
 
toString() - Method in class harpoon.Util.BinHeapPriorityQueue
 
toString() - Method in class harpoon.Util.LightBasicBlocks.LightBasicBlock
String representation.
toString() - Method in class harpoon.Util.Options.Option
 
toString() - Method in exception harpoon.Util.ParseUtil.BadLineException
 
toString() - Method in class harpoon.Util.Timer
Return a string representing the current state of the timer.
toString() - Method in class harpoon.Util.Tuple
Returns a human-readable description of this Tuple.
toString() - Method in class harpoon.Util.TypeInference.ExactTemp
Pretty printer for debug.
totallockcount - Static variable in class harpoon.Analysis.Quads.CollectSyncStats
 
totalnewcount - Static variable in class harpoon.Analysis.Quads.CollectSyncStats
 
TOUGH_ON_NATIVES - Static variable in class harpoon.Analysis.MetaMethods.MetaCallGraphImpl
 
toUop() - Method in class harpoon.Tools.PatMat.Spec.Leaf
 
toUop() - Method in class harpoon.Tools.PatMat.Spec.LeafOp
 
toUTF8(String) - Static method in class harpoon.Backend.Runtime1.Data
Make a java-style UTF-8 encoded byte array for a string.
TransactionAbortException - Exception in harpoon.Runtime.Transactions
A TransactionAbortException is thrown to indicate the forced-suicide of a transaction.
TransactionAbortException(CommitRecord) - Constructor for exception harpoon.Runtime.Transactions.TransactionAbortException
Creates a TransactionAbortException that will abort all parent subtransactions up to that specified by abortUpTo.
Transactions - Class in harpoon.Main
Transactions
Transactions() - Constructor for class harpoon.Main.Transactions
 
Transactions.QuadPass - Class in harpoon.Main
 
Transactions.QuadPass() - Constructor for class harpoon.Main.Transactions.QuadPass
 
Transactions.TreePass - Class in harpoon.Main
 
Transactions.TreePass() - Constructor for class harpoon.Main.Transactions.TreePass
 
transfer(HCE, HCE2, TempMap, AllocationInformation<HCE2>) - Method in class harpoon.Analysis.AllocationInformationMap
Transfer allocation information from the oldallocsite to newallocsite using the specified TempMap and old AllocationInformation.
transfer(HCE, HCE2, Temp[], TempMap, Derivation<HCE2>) - Method in class harpoon.IR.LowQuad.DerivationMap
Transfer typings from one Derivation to another, using an appropriate TempMap.
transferHandlers(Quad, Quad) - Static method in class harpoon.IR.Quads.Quad
Update the handlers for newQ to match the handlers for oldQ, removing handlers from oldQ in the process.
transform() - Method in class harpoon.Analysis.EventDriven.ToAsync
 
TRANSIENT - Static variable in class harpoon.Tools.Annotation.Sym
 
translate(HCode) - Method in class harpoon.Backend.PreciseC.TreeToC
 
translate(HData) - Method in class harpoon.Backend.PreciseC.TreeToC
 
Translation - Class in harpoon.IR.Tree
Translation is an empty class wrapper for various special context-sensitive Tree.Exp wrappers.
Translation() - Constructor for class harpoon.IR.Tree.Translation
 
Translation.Cx - Class in harpoon.IR.Tree
The Translation.Cx abstract class specifies how to evaluate a conditional as an expression or as a side-effects-only statement.
Translation.Cx() - Constructor for class harpoon.IR.Tree.Translation.Cx
 
Translation.Ex - Class in harpoon.IR.Tree
The Translation.Ex class is a Translation.Exp representing a value expression.
Translation.Ex(Exp) - Constructor for class harpoon.IR.Tree.Translation.Ex
 
Translation.Exp - Class in harpoon.IR.Tree
The Translation.Exp class represents an expression that might be used in several different ways: as a value, as a branch condition, or as code to be executed for side-effects only.
Translation.Exp() - Constructor for class harpoon.IR.Tree.Translation.Exp
 
Translation.Nx - Class in harpoon.IR.Tree
The Translation.Nx class is a Translation.Exp representing a statement.
Translation.Nx(Stm) - Constructor for class harpoon.IR.Tree.Translation.Nx
 
transRoots() - Method in class harpoon.Analysis.Transactions.SyncTransformer
Export additional method roots after transactions transformation.
TREAT_CONST - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Controls whether the analysis models references to constant Strings by edges to the special node CONST, or simply ignores them.
TREAT_NULL - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Controls whether the analysis models the null references by edges to the special node NULL, or simply ignores them.
tree - Variable in class harpoon.IR.Tree.Code
The Tree Objects composing this code view.
Tree - Class in harpoon.IR.Tree
Tree is the base class for the tree representation.
Tree(TreeFactory, HCodeElement, int) - Constructor for class harpoon.IR.Tree.Tree
 
Tree.CloneCallback - Interface in harpoon.IR.Tree
Callback interface to tree cloning code to allow you to update type and other annotations as the tree is cloned.
TreeBuilder - Class in harpoon.Backend.Runtime1
Runtime1.TreeBuilder is an implementation of Generic.Runtime.TreeBuilder which creates accessor expressions for the Runtime1 runtime.
TreeBuilder(Runtime, Linker, AllocationStrategy, boolean, int) - Constructor for class harpoon.Backend.Runtime1.TreeBuilder
 
TreeBuilder - Class in harpoon.Backend.Runtime2
Runtime2.TreeBuilder is an implementation of Generic.Runtime.TreeBuilder which creates accessor expressions for the Runtime1 runtime.
TreeBuilder(Runtime, Linker, AllocationStrategy, boolean, int) - Constructor for class harpoon.Backend.Runtime2.TreeBuilder
 
TreeBuilder - Class in harpoon.Backend.RuntimeTiny
RuntimeTiny.TreeBuilder extends Runtime1.TreeBuilder to implement a more-compressed (but slower) object layout.
TreeBuilder(Runtime, Linker, AllocationStrategy, boolean) - Constructor for class harpoon.Backend.RuntimeTiny.TreeBuilder
 
TreeCode - Class in harpoon.IR.Tree
 
TreeCode(HMethod, Tree, Frame, TreeDerivation) - Constructor for class harpoon.IR.Tree.TreeCode
 
treeCodeFactory(Frame, HCodeFactory) - Static method in class harpoon.Analysis.DynamicSyncRemoval.SyncRemover
Return an HCodeFactory that will clean up the tree form of the transformed code by performing some optimizations which can't be represented in quad form.
treeCodeFactory(Frame, HCodeFactory) - Method in class harpoon.Analysis.PreciseGC.WriteBarrierPrePass
Return an HCodeFactory that will clean up the tree form of the transformed code by performing some optimizations which can't be represented in quad form.
treeCodeFactory(Frame, HCodeFactory) - Method in class harpoon.Analysis.Transactions.SyncTransformer
Return an HCodeFactory that will clean up the tree form of the transformed code by performing some optimizations which can't be represented in quad form.
TreeDataFilter - Class in harpoon.Analysis.Transactions
TreeDataFilter hacks through the field information tables emitted by Runtime1.DataReflection2 to add in additional information about the bitfield-numbering of fields.
TreeDataFilter(Frame, BitFieldNumbering, Set<HField>) - Constructor for class harpoon.Analysis.Transactions.TreeDataFilter
Creates a DataInitializers.
TreeDerivation - Interface in harpoon.IR.Tree
TreeDerivation provides a means to access type and derivation information for any Tree.Exp in a code representation.
TreeFactory - Class in harpoon.IR.Tree
A TreeFactory is responsible for assigning unique numbers to the Tree Exps and Stms in a method, and for maintaining method-wide information (a pointer to the parent HCode, a pointer to a harpoon.Backend.Generic.Frame, etc.).
TreeFactory() - Constructor for class harpoon.IR.Tree.TreeFactory
 
TreeFolding - Class in harpoon.Analysis.Tree
The TreeFolding class performs tree folding on a tree code in canonical form.
TreeFolding(Code) - Constructor for class harpoon.Analysis.Tree.TreeFolding
Constructs a new TreeFolding object for the code.
TreeKind - Class in harpoon.IR.Tree
TreeKind is an enumerated type for the various kinds of Trees.
TreeKind() - Constructor for class harpoon.IR.Tree.TreeKind
 
TreeSolver - Class in harpoon.Analysis.DataFlow
A blatant rip-off of Whaley's QuadSolver class, used to solve data flow equations (baby).
TreeSolver() - Constructor for class harpoon.Analysis.DataFlow.TreeSolver
 
TreeToC - Class in harpoon.Backend.PreciseC
TreeToC converts Tree form to C code (used as a "portable assembly language").
TreeToC(Writer) - Constructor for class harpoon.Backend.PreciseC.TreeToC
Creates a TreeToC.
TreeUseDefer - Class in harpoon.IR.Tree
TreeUseDefer implements the Properties.UseDefer interface for non-SEQ Stms of a tree.
TreeUseDefer(Code) - Constructor for class harpoon.IR.Tree.TreeUseDefer
Creates a UseDefer.
TreeVerifyingVisitor - Class in harpoon.IR.Tree
TreeVerifyingVisitor is a generic Tree Visitor for verifying particular properties about the Tree Intermediate Representation for a given Tree.
TreeVerifyingVisitor() - Constructor for class harpoon.IR.Tree.TreeVerifyingVisitor
Creates a TreeVerifyingVisitor.
TreeVerifyingVisitor.NoRepeats - Class in harpoon.IR.Tree
 
TreeVerifyingVisitor.NoRepeats() - Constructor for class harpoon.IR.Tree.TreeVerifyingVisitor.NoRepeats
 
TreeVisitor - Class in harpoon.IR.Tree
TreeVisitor is a Design Pattern, courtesy of Martin.
TreeVisitor() - Constructor for class harpoon.IR.Tree.TreeVisitor
 
trivialEscape(PANode) - Static method in class harpoon.Analysis.PA2.PAUtil
 
TRUST_EQUALS - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
Trust that a call to java.lang.Object.equals doesn't do anything interesting.
TRUST_HASHCODE - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
Trust that a call to java.lang.Object.hashCode doesn't do anything interesting.
TRUST_TOSTRING - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
Trust that a call to java.lang.Object.toString doesn't do anything interesting.
TRY - Static variable in class harpoon.Tools.Annotation.Sym
 
tSpecialize(Map, MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.ActionRepository
 
tSpecialize(MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the specialized node of this node for the thread body (ie the run() method) run.
tSpecialize(Map, MetaMethod) - Method in class harpoon.Analysis.PointerAnalysis.PASync
Does the thread-specialization of this action.
Tuple - Class in harpoon.Util
A Tuple is an ordered list of objects that works properly in Hashtables & etc.
Tuple(Object[]) - Constructor for class harpoon.Util.Tuple
Creates a Tuple.
Tuple(Object[], Comparator) - Constructor for class harpoon.Util.Tuple
Creates a Comparable Tuple which will use the specified Comparator to do object comparisons.
TwoWordTemp - Class in harpoon.Backend.StrongARM
TwoWordTemp
TwoWordTemp(TempFactory) - Constructor for class harpoon.Backend.StrongARM.TwoWordTemp
Creates a TwoWordTemp.
TwoWordTemp(TempFactory, Temp, Temp) - Constructor for class harpoon.Backend.StrongARM.TwoWordTemp
 
type - Variable in class harpoon.Analysis.Maps.ExactTypeMap.ExactType
 
type() - Method in class harpoon.Analysis.PA2.Mutation.ParamInfo
 
type - Variable in class harpoon.Analysis.PA2.PANode
Conservative approximation of the type of objects represented by this node.
type - Variable in class harpoon.Analysis.PointerAnalysis.PANode
The type of the node
type() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the type of the node.
type() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.DefPoint
 
type() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.NameDefPoint
 
type() - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.TempDefPoint
 
type() - Method in interface harpoon.Backend.Generic.Runtime.ObjectBuilder.Info
 
type - Variable in class harpoon.IR.LowQuad.PGET
The type of the object we are fetching.
type() - Method in class harpoon.IR.LowQuad.PGET
Returns the type of the field or array element we are fetching.
type - Variable in class harpoon.IR.LowQuad.PSET
The type of the object we are storing.
type() - Method in class harpoon.IR.LowQuad.PSET
Returns the type of the field or array element we are storing.
type - Variable in class harpoon.IR.Quads.AGET
The component type of the referenced array.
type() - Method in class harpoon.IR.Quads.AGET
Returns the component type of the referenced array.
type - Variable in class harpoon.IR.Quads.ARRAYINIT
The component type.
type() - Method in class harpoon.IR.Quads.ARRAYINIT
Returns the component type of the array to be initialized.
type - Variable in class harpoon.IR.Quads.ASET
The component type of the referenced array.
type() - Method in class harpoon.IR.Quads.ASET
Returns the component type of the referenced array.
type - Variable in class harpoon.IR.Quads.CONST
The type of the constant value.
type() - Method in class harpoon.IR.Quads.CONST
Returns the type of the constant value.
type() - Method in class harpoon.IR.Tree.BINOP
 
type - Variable in class harpoon.IR.Tree.CONST
The type of this CONST expression.
type() - Method in class harpoon.IR.Tree.CONST
 
type() - Method in class harpoon.IR.Tree.ESEQ
 
type() - Method in class harpoon.IR.Tree.Exp
Result type.
type - Variable in class harpoon.IR.Tree.MEM
The type of this memory reference expression.
type() - Method in class harpoon.IR.Tree.MEM
 
type() - Method in class harpoon.IR.Tree.MOVE
 
type() - Method in class harpoon.IR.Tree.NAME
 
type() - Method in class harpoon.IR.Tree.OPER
Return result type.
type() - Method in class harpoon.IR.Tree.RETURN
 
type - Variable in class harpoon.IR.Tree.TEMP
The type of this Temp expression.
type() - Method in class harpoon.IR.Tree.TEMP
 
type() - Method in class harpoon.IR.Tree.THROW
 
Type - Class in harpoon.IR.Tree
Type enumerates the possible Tree expression types.
Type() - Constructor for class harpoon.IR.Tree.Type
 
type() - Method in interface harpoon.IR.Tree.Typed
Returns enumerated constant (INT, LONG, FLOAT, DOUBLE, or POINTER) corresponding to the type of the expression.
type() - Method in class harpoon.IR.Tree.UNOP
Returns an int identifying the TYPE that this unary operation returns.
type - Variable in class harpoon.Tools.PatMat.Spec.DetailExtra
 
TYPECAST - Static variable in class harpoon.IR.Quads.QuadKind
 
TYPECAST - Class in harpoon.IR.Quads
TYPECAST performs a typecast on a given variable.
TYPECAST(QuadFactory, HCodeElement, Temp, HClass) - Constructor for class harpoon.IR.Quads.TYPECAST
Creates a TYPECAST representing a type cast.
Typed - Interface in harpoon.IR.Tree
The Typed interface allows access to type information for Exps (including TEMP, MEM, CONST, OPER, and UNOP) and the Stms THROW, RETURN, and MOVE.
TypeFilter - Class in harpoon.Analysis.PA2
TypeFilter
TypeFilter() - Constructor for class harpoon.Analysis.PA2.TypeFilter
 
TypeInference - Class in harpoon.Util.TypeInference
TypeInference is a very simple type inference module.
TypeInference(HMethod, HCode, Set) - Constructor for class harpoon.Util.TypeInference.TypeInference
Creates a TypeInference.
TypeInfo - Class in harpoon.Analysis.Quads
TypeInfo is a simple type analysis tool for quad-ssi form.
TypeInfo(Code, UseDefMap<Quad>) - Constructor for class harpoon.Analysis.Quads.TypeInfo
Creates a TypeInfo analyzer for the specified HCode, which must be in quad-ssi form.
TypeInfo(Code, UseDefMap<Quad>, boolean) - Constructor for class harpoon.Analysis.Quads.TypeInfo
Creates a TypeInfo analyzer for the specified HCode, which must be in quad-ssi form.
TypeInfo(Code) - Constructor for class harpoon.Analysis.Quads.TypeInfo
Creates a TypeInfo analyzer for the specified HCode, which must be in quad-ssi form.
typemap - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
typeMap(HCodeElement, Temp) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadNoSSA
 
typeMap(Quad, Temp) - Method in class harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
 
TypeMap<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
A TypeMap is a mapping from temporaries to their types.
typeMap(HCE, Temp) - Method in interface harpoon.Analysis.Maps.TypeMap
Return the type of a given temporary t, as defined at the definition point hce.
typeMap(HCE, Temp) - Method in class harpoon.Analysis.Maps.TypeMapProxy
 
typeMap(HCodeElement, Temp) - Method in class harpoon.Analysis.Quads.SCC.SCCAnalysis
Determine the static type of Temp t in HMethod m.
typeMap(Quad, Temp) - Method in class harpoon.Analysis.Quads.TypeInfo
 
typeMap(HCodeElement, Temp) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the static type of Temp t in HMethod m.
typeMap(HField) - Method in class harpoon.Analysis.SizeOpt.BitWidthAnalysis
Determine the static type of Temp t in HMethod m.
typeMap(HCodeElement, Temp) - Method in class harpoon.Backend.CSAHack.RegAlloc.DerivationGenerator
 
typeMap(HCE, Temp) - Method in class harpoon.IR.LowQuad.DerivationMap
 
typeMap - Variable in class harpoon.IR.Quads.QuadNoSSA
Type information for this code view.
typeMap() - Method in class harpoon.IR.Quads.QuadWithTry
Returns a TypeMap if there is one, or null otherwise
typeMap(Exp) - Method in class harpoon.IR.Tree.DerivationGenerator
 
typeMap(Exp) - Method in interface harpoon.IR.Tree.TreeDerivation
Returns the type of a given tree expression exp.
TypeMap.TypeNotKnownException - Exception in harpoon.Analysis.Maps
TypeNotKnownException is thrown to indicate that the TypeMap does not have type information for the specified Temp in the given HCodeElement.
TypeMap.TypeNotKnownException(HCodeElement, Temp) - Constructor for exception harpoon.Analysis.Maps.TypeMap.TypeNotKnownException
 
TypeMapProxy<HCE extends HCodeElement> - Class in harpoon.Analysis.Maps
A TypeMapProxy implements a TypeMap for a cloned HCode given the HCodeAndMaps which specifies its relationship to an HCode for which a TypeMap is known.
TypeMapProxy(HCodeAndMaps<HCE>, TypeMap<HCE>) - Constructor for class harpoon.Analysis.Maps.TypeMapProxy
Creates a TypeMapProxy.
types - Variable in class harpoon.Tools.PatMat.Spec.ExpBinop
Types of values that this operates on.
types - Variable in class harpoon.Tools.PatMat.Spec.ExpConst
The set of types that value may take.
types - Variable in class harpoon.Tools.PatMat.Spec.ExpMem
The set of types that the values at addr may be.
types - Variable in class harpoon.Tools.PatMat.Spec.ExpTemp
The set of types that this may take.
types - Variable in class harpoon.Tools.PatMat.Spec.ExpUnop
Set of Types that this operates on.
types - Variable in class harpoon.Tools.PatMat.Spec.StmMove
The set of Types that src and dst may be (they will always be the same type).
types - Variable in class harpoon.Tools.PatMat.Spec.StmReturn
The set of Types that retval may be.
TypesMain - Class in harpoon.Main
PrintTypes
TypesMain() - Constructor for class harpoon.Main.TypesMain
 
TYPESWITCH - Static variable in class harpoon.IR.Quads.QuadKind
 
TYPESWITCH - Class in harpoon.IR.Quads
TYPESWITCH represents a multiple-way branch dependent on the class type of the argument.
TYPESWITCH(QuadFactory, HCodeElement, Temp, HClass[], Temp[][], Temp[], boolean) - Constructor for class harpoon.IR.Quads.TYPESWITCH
Creates a TYPESWITCH operation.
TYPESWITCH(QuadFactory, HCodeElement, Temp, HClass[], Temp[], boolean) - Constructor for class harpoon.IR.Quads.TYPESWITCH
Creates a typeswitch with arity defined by the keys array.
TypeSwitchRemover - Class in harpoon.Analysis.Quads
TypeSwitchRemover converts TYPESWITCH quads into chains of INSTANCEOF and CJMP quads.
TypeSwitchRemover(HCodeFactory) - Constructor for class harpoon.Analysis.Quads.TypeSwitchRemover
Creates a TypeSwitchRemover.

U

uc - Static variable in class harpoon.Util.UComp
 
ucf - Variable in class harpoon.Analysis.ContBuilder.ContBuilder
 
ucf - Variable in class harpoon.Analysis.EnvBuilder.EnvBuilder
 
ucf - Variable in class harpoon.Analysis.EventDriven.EventDriven
 
ucf - Variable in class harpoon.Analysis.EventDriven.ToAsync
 
UComp - Class in harpoon.Util
UComp is an universal comparator, which compares any two objecs by simply compraing their string representation.
UComp() - Constructor for class harpoon.Util.UComp
 
ud - Variable in class harpoon.Analysis.DataFlow.LiveTemps
 
ud - Variable in class harpoon.Analysis.ReachingDefsAltImpl
 
ud - Variable in class harpoon.Analysis.ReachingDefsImpl
 
UnableToColorGraph - Class in harpoon.Analysis.GraphColoring
UnableToColorGraph is a control-flow construct for indicating the provided Graph Coloring algorithm failed to color a given graph.
UnableToColorGraph() - Constructor for class harpoon.Analysis.GraphColoring.UnableToColorGraph
Creates a UncolorableGraphException.
UnableToColorGraph(String) - Constructor for class harpoon.Analysis.GraphColoring.UnableToColorGraph
Creates a UncolorableGraphException.
UnboundedGraphColorer - Class in harpoon.Analysis.GraphColoring
UnboundedGraphColorer uses the graph coloring strategy provided by another GraphColorer to search for a near minimum number of colors required.
UnboundedGraphColorer(GraphColorer, ColorFactory) - Constructor for class harpoon.Analysis.GraphColoring.UnboundedGraphColorer
Creates a UnboundedGraphColorer.
uncheckedAddEdge(PANode, HField, PANode) - Method in class harpoon.Analysis.PA2.MapRelPAEdgeSet
 
uncheckedAddEdge(PANode, HField, PANode) - Method in class harpoon.Analysis.PA2.PAEdgeSet
Adds an hf-labeled edge between n1 and n2 UNDER ALL CIRCUMSTANCES (regardless of the type filtering, etc.).
unCx(TreeFactory, Label, Label) - Method in class harpoon.IR.Tree.Translation.Exp
 
unCxImpl(TreeFactory, Label, Label) - Method in class harpoon.IR.Tree.Translation.Ex
 
unCxImpl(TreeFactory, Label, Label) - Method in class harpoon.IR.Tree.Translation.Exp
 
unCxImpl(TreeFactory, Label, Label) - Method in class harpoon.IR.Tree.Translation.Nx
 
UndefinedPointer - Class in harpoon.Interpret.Tree
The UndefinedPointer class represents a pointer to a value for which the type is not known.
UndefinedPointer(UndefinedRef, long) - Constructor for class harpoon.Interpret.Tree.UndefinedPointer
Class constructor
UndefinedRef - Class in harpoon.Interpret.Tree
UndefinedRef is a reference of an unknown type
UndefinedRef(StaticState) - Constructor for class harpoon.Interpret.Tree.UndefinedRef
Class constructor.
UndefinedRef(StaticState, Integer, Integer, ClazPointer) - Constructor for class harpoon.Interpret.Tree.UndefinedRef
Class constructor.
unEx(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Exp
 
unExImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Cx
 
unExImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Ex
 
unExImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Exp
 
unExImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Nx
 
unFreshen(InterProcAnalysisResult) - Static method in class harpoon.Analysis.PA2.GraphOptimizations
 
uninline(CALL) - Method in class harpoon.Analysis.Quads.MethodInliningCodeFactory
Marks a call site to not be inlined when code is generated.
union(Temp, Temp) - Method in class harpoon.Analysis.Instr.EqTempSets
Unifies t1 and t2.
union(PAEdgeSet, Set) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
union(PAEdgeSet) - Method in class harpoon.Analysis.PointerAnalysis.AbstrPAEdgeSet
 
union(Relation) - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
union(PAEdgeSet, Set) - Method in class harpoon.Analysis.PointerAnalysis.LightPAEdgeSet
 
union(PAEdgeSet, Set) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
Add all the edges from edges2 to this PAEdgeSet.
union(PAEdgeSet) - Method in interface harpoon.Analysis.PointerAnalysis.PAEdgeSet
Convenient version of union, equivalent to union(edges2, null).
union(PAEscapeFunc) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
 
union(PAEscapeFunc, Set) - Method in class harpoon.Analysis.PointerAnalysis.PAEscapeFunc
Computes the union of this PAEscapeFunc with e2.
union(Relation) - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Combines this relation with relation rel.
union(Relation) - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
union(Set, Set) - Method in class harpoon.Backend.Generic.RuntimeInformation
Convenience method to union two sets, either or both of which may be unmodifiable.
uniqueClassName(String, Linker) - Static method in class harpoon.ClassFile.UniqueName
Make a unique class name from a given suggestion.
uniqueFieldName(String, HClass) - Static method in class harpoon.ClassFile.UniqueName
Make a unique field name from a given suggestion.
uniqueMethodName(String, HClass) - Static method in class harpoon.ClassFile.UniqueName
Make a unique method name from a given suggestion.
UniqueName - Class in harpoon.ClassFile
UniqueName contains methods to create unique class, field, or method names.
UniqueName() - Constructor for class harpoon.ClassFile.UniqueName
 
UNKNOWN_DC - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_E5 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_E6 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_E7 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_E8 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_E9 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_EA - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_EB - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_EC - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_ED - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_EE - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_EF - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F0 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F1 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F2 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F3 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F4 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F5 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F6 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F7 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F8 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_F9 - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_FA - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_FB - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_FC - Static variable in class harpoon.IR.Bytecode.Op
 
UNKNOWN_FD - Static variable in class harpoon.IR.Bytecode.Op
 
UnknownAllocationSiteError - Error in harpoon.Instrumentation.AllocationStatistics
Error thrown if one tries to obtain the unique allocID for a site that AllocationNUmbering doesn't know about.
UnknownAllocationSiteError(String) - Constructor for error harpoon.Instrumentation.AllocationStatistics.UnknownAllocationSiteError
Creates an UnknownAllocationSiteError.
unlink() - Method in class harpoon.IR.Tree.Tree
Make this a root-level tree, unlinking it from its parent.
unmodifiable() - Method in class harpoon.Temp.CloningTempMap
Provide access to an unmodifiable version of this TempMapunNx(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Exp
 
unNxImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Cx
 
unNxImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Ex
 
unNxImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Exp
 
unNxImpl(TreeFactory) - Method in class harpoon.IR.Tree.Translation.Nx
 
UNOP - Static variable in class harpoon.IR.Tree.TreeKind
 
UNOP - Class in harpoon.IR.Tree
UNOP objects are expressions which stand for result of applying some unary operator o to a subexpression.
UNOP(TreeFactory, HCodeElement, int, int, Exp) - Constructor for class harpoon.IR.Tree.UNOP
Constructor.
UNOP - Static variable in class harpoon.Tools.PatMat.Sym
 
Unreachable - Class in harpoon.Analysis.Quads
Unreachable gets rid of unreachable code.
Unreachable() - Constructor for class harpoon.Analysis.Quads.Unreachable
 
unsetColor(Object) - Method in interface harpoon.Analysis.GraphColoring.ColorableGraph
Removes n from the Node -> Color mapping.
unsetColor(Object) - Method in class harpoon.Analysis.GraphColoring.SparseGraph
 
uoh - Variable in class harpoon.Analysis.PointerAnalysis.MyAP
 
Uop - Class in harpoon.IR.Tree
Uop is an enumerated type for UNOPs.
Uop() - Constructor for class harpoon.IR.Tree.Uop
 
UPDATE(DerivationGenerator, Exp, Exp) - Static method in class harpoon.Analysis.Realtime.HeapCheckAdder
 
update(HCE, Temp, HCE, Temp) - Method in class harpoon.IR.LowQuad.DerivationMap
Transfer typing from one place to another.
update(Exp, Exp) - Method in class harpoon.IR.Tree.DerivationGenerator
Transfer typing from one exp to another.
updateNode2Code(PANode, HCodeElement) - Method in class harpoon.Analysis.PointerAnalysis.NodeRepository
Modify the node2code mapping such that now node is associated with hce.
updateRoots(Set, Linker) - Static method in class harpoon.Analysis.MemOpt.PreallocOpt
Adds to the set of roots the classes/methods that are called by the runtime when the preallocation optimization is used.
updateValue(Object) - Method in class harpoon.Interpret.Tree.InterfaceListPointer
Throws an error, as the program is not supposed to modify static class data
updateValue(Object) - Method in class harpoon.Interpret.Tree.StringPointer
Throws an error, as StringPointers are constant.
URSHIFT - Static variable in class harpoon.Tools.Annotation.Sym
 
URSHIFTEQ - Static variable in class harpoon.Tools.Annotation.Sym
 
usage(String) - Static method in class harpoon.Main.Lint
 
use - Variable in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor.LiveVarInfo
 
use(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.AssemFlowGraph
 
use(Node) - Method in class harpoon.Backend.CSAHack.FlowGraph.FlowGraph
The set of temporaries used by this instruction or block
use() - Method in class harpoon.IR.Assem.Instr
Returns the Temps used by this Instr.
use() - Method in class harpoon.IR.LowQuad.PAOFFSET
 
use() - Method in class harpoon.IR.LowQuad.PCALL
 
use() - Method in class harpoon.IR.LowQuad.PGET
 
use() - Method in class harpoon.IR.LowQuad.PPTR
 
use() - Method in class harpoon.IR.LowQuad.PSET
 
use() - Method in interface harpoon.IR.Properties.UseDefable
Return all the Temps used by this HCodeElement.
use(HCE) - Method in class harpoon.IR.Properties.UseDefer
Return all the Temps used by hce.
use() - Method in class harpoon.IR.Quads.AGET
Returns all the Temps used by this quad.
use() - Method in class harpoon.IR.Quads.ALENGTH
Returns the Temp used by this Quad.
use() - Method in class harpoon.IR.Quads.ANEW
Returns the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.ARRAYINIT
Returns the Temp used by this Quad.
use() - Method in class harpoon.IR.Quads.ASET
Returns all the Temps used by this quad.
use() - Method in class harpoon.IR.Quads.CALL
Returns all the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.CJMP
Returns all the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.COMPONENTOF
Returns the Temps used by this quad.
use() - Method in class harpoon.IR.Quads.GET
Returns the Temp used by this Quad.
use() - Method in class harpoon.IR.Quads.INSTANCEOF
Returns the Temps used by this quad.
use() - Method in class harpoon.IR.Quads.MONITORENTER
Returns the Temp used by this Quad.
use() - Method in class harpoon.IR.Quads.MONITOREXIT
Returns the Temp used by this Quad.
use() - Method in class harpoon.IR.Quads.MOVE
Returns the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.OPER
Returns the Temps used by this OPER.
use() - Method in class harpoon.IR.Quads.PHI
Returns all the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.Quad
Return all the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.RETURN
Returns all the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.SET
Returns the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.SIGMA
 
use() - Method in class harpoon.IR.Quads.SWITCH
Returns the Temp used by this quad.
use() - Method in class harpoon.IR.Quads.THROW
Returns all the Temps used by this Quad.
use() - Method in class harpoon.IR.Quads.TYPECAST
Returns the Temps used by this quad.
use() - Method in class harpoon.IR.Quads.TYPESWITCH
Returns the Temp used by this quad.
USE_ANANIAN_HEURISTIC - Static variable in class harpoon.Analysis.Instr.SpillHeuristics
 
USE_CHAITIN_HEURISTIC - Static variable in class harpoon.Analysis.Instr.SpillHeuristics
 
USE_INTER_THREAD - Variable in class harpoon.Analysis.PointerAnalysis.MAInfo.MAInfoOptions
Use the interthread analysis inside MAInfo.
USE_LOW_BIT - Static variable in class harpoon.Analysis.Realtime.HeapCheckAdder
Should I use the low bit or the high bit?
USE_PINTER_HEURISTICS - Static variable in class harpoon.Analysis.Instr.SpillHeuristics
 
useC(HCodeElement) - Method in class harpoon.Analysis.Instr.BasePointerPreservingUseDefer
 
useC(HCodeElement) - Method in class harpoon.Analysis.Instr.IgnoreSpillUseDefer
 
useC(HCodeElement) - Method in class harpoon.Backend.Generic.RegUseDefer
 
useC() - Method in class harpoon.IR.Assem.Instr
 
useC() - Method in interface harpoon.IR.Properties.UseDefable
Returns a Collection of all the Temps read in this HCodeElement.
useC(HCE) - Method in class harpoon.IR.Properties.UseDefer
Returns a Collection of all the Temps that may be read by hce.
useC() - Method in class harpoon.IR.Quads.Quad
 
useC(Tree) - Method in class harpoon.IR.Tree.TreeUseDefer
Returns a collection of Temps which are used by the statement/expression subtree rooted at hce.
useCN(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
useCT(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
usedef(Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
UseDef<HCE extends HCodeElement> - Class in harpoon.Analysis
UseDef objects map Temps to the HCodeElements which use or define them.
UseDef() - Constructor for class harpoon.Analysis.UseDef
Creates a new, empty UseDef.
UseDefable - Interface in harpoon.IR.Properties
UseDefable defines an interface for intermediate representations that keep use/def information.
UseDefChecker - Class in harpoon.Analysis
UseDefChecker verifies that all variables are defined before they are used.
UseDefChecker(HCodeFactory, UseDefChecker.ReachingDefsFactory) - Constructor for class harpoon.Analysis.UseDefChecker
Creates a UseDefChecker from a ReachingDefsFactory.
UseDefChecker(HCodeFactory, String) - Constructor for class harpoon.Analysis.UseDefChecker
Creates a UseDefChecker using the named class as the ReachingDefs implementation.
UseDefChecker.ReachingDefsFactory - Class in harpoon.Analysis
The UseDefChecker constructor takes a ReachingDefsFactory argument to specify which ReachingDefs implementation it should use.
UseDefChecker.ReachingDefsFactory() - Constructor for class harpoon.Analysis.UseDefChecker.ReachingDefsFactory
 
USEDEFER - Static variable in class harpoon.Analysis.Instr.IgnoreSpillUseDefer
 
UseDefer<HCE extends HCodeElement> - Class in harpoon.IR.Properties
UseDefer provides a means to externally associate use and def information with elements of an intermediate representation.
UseDefer() - Constructor for class harpoon.IR.Properties.UseDefer
 
UseDefMap<HCE extends HCodeElement> - Interface in harpoon.Analysis.Maps
A UseDefMap is a mapping from temporaries to the HCodeElements that define them.
usedRegisterTemps() - Method in interface harpoon.Analysis.Instr.RegAlloc.IntermediateCode
 
useMap(HCode<HCE>, Temp) - Method in interface harpoon.Analysis.Maps.UseDefMap
Return an array of HCodeElements that use Temp t.
useMap(HCode<HCE>, Temp) - Method in class harpoon.Analysis.UseDef
Return the HCodeElements which use a given Temp.
user_info - Variable in class harpoon.Util.LightBasicBlocks.LightBasicBlock
Deprecated.  
uses - Variable in class harpoon.Analysis.Quads.SSIStats
How many variable definitions are in this code.
USHR - Static variable in class harpoon.IR.Tree.Bop
Right unsigned bit-wise shift; long/integer only.
USHR - Static variable in class harpoon.Tools.PatMat.Sym
 
Util - Class in harpoon.Analysis.MemOpt
Util
Util() - Constructor for class harpoon.Analysis.MemOpt.Util
 
Util - Class in harpoon.Util
Miscellaneous static utility functions.
Util() - Constructor for class harpoon.Util.Util
 

V

val - Variable in class gnu.getopt.LongOpt
The value to store in "flag" if flag is not null, otherwise the equivalent short option character for this long option.
val() - Method in class harpoon.Analysis.Tree.DominatingMemoryAccess.daNum
 
val(TreeFactory, DerivationGenerator, Stm, Temp) - Static method in class harpoon.Backend.Analysis.GCTraceStore
 
val - Variable in class harpoon.IR.RawClass.ConstantDouble
The value of the double constant.
val - Variable in class harpoon.IR.RawClass.ConstantFloat
The value of the float constant.
val - Variable in class harpoon.IR.RawClass.ConstantInteger
The value of the int constant.
val - Variable in class harpoon.IR.RawClass.ConstantLong
The value of the long constant.
val - Variable in class harpoon.IR.RawClass.ConstantUtf8
The value of the string constant
value() - Method in class harpoon.IR.Bytecode.OpClass
Return the class referenced.
value() - Method in class harpoon.IR.Bytecode.OpField
Return the field referenced by this operand.
value() - Method in class harpoon.IR.Bytecode.OpMethod
Return the method referenced by this operand.
value - Variable in class harpoon.IR.Quads.ARRAYINIT
The array initializers.
value() - Method in class harpoon.IR.Quads.ARRAYINIT
Returns the array initializers.
value - Variable in class harpoon.IR.Quads.CONST
An object representing the constant value.
value() - Method in class harpoon.IR.Quads.CONST
Returns the object representing the constant value.
value() - Method in class harpoon.IR.RawClass.ConstantClass
 
value() - Method in class harpoon.IR.RawClass.ConstantDouble
Returns the value of this constant, wrapped as a java.lang.Double.
value() - Method in class harpoon.IR.RawClass.ConstantFloat
Returns the value of this constant, wrapped as a java.lang.Float.
value() - Method in class harpoon.IR.RawClass.ConstantInteger
Returns the value of this constant, wrapped as a java.lang.Integer.
value() - Method in class harpoon.IR.RawClass.ConstantLong
Returns the value of this constant, wrapped as a java.lang.Long.
value() - Method in class harpoon.IR.RawClass.ConstantString
Returns the value of this constant, wrapped as a java.lang.String.
value() - Method in class harpoon.IR.RawClass.ConstantValue
 
value - Variable in class harpoon.IR.Tree.CONST
The constant value of this CONST expression.
value() - Method in class harpoon.IR.Tree.CONST
Return the constant value of this CONST expression.
value - Variable in class harpoon.Tools.PatMat.Spec.DetailWeight
The weight associated with name.
value - Variable in class harpoon.Tools.PatMat.Spec.ExpConst
The constant value associated with this.
valueDefAt(Temp, Stm) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis
 
valueOf(String) - Static method in enum harpoon.Analysis.PA2.PANode.Kind
Returns the enum constant of this type with the specified name.
valueOf(Exp, Stm) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis
 
valueOf(String) - Static method in enum harpoon.Main.Settings.StdLib
Returns the enum constant of this type with the specified name.
values() - Static method in enum harpoon.Analysis.PA2.PANode.Kind
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Method in class harpoon.Analysis.PointerAnalysis.AbstrRelation
 
values() - Method in class harpoon.Analysis.PointerAnalysis.LightMap
Returns an unmodifiable collection view of the values from this map.
values() - Method in interface harpoon.Analysis.PointerAnalysis.Relation
Returns all the values appearing in this relation.
values() - Method in class harpoon.Analysis.PointerAnalysis.RelationImpl
 
values() - Static method in enum harpoon.Main.Settings.StdLib
Returns an array containing the constants of this enum type, in the order they are declared.
valueUseAt(Temp, Stm) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis
 
variable() - Method in class harpoon.Analysis.LowQuad.Loop.Induction
The variable Temp stores the basic induction variable.
vars - Variable in class harpoon.Analysis.Quads.SSIStats
How many variables are in this code.
VERBOSE - Static variable in class harpoon.Analysis.PA2.AllocSync.ASFlags
 
VERBOSE - Static variable in class harpoon.ClassFile.Loader
 
VERBOSE_BYTECODE_METHOD_CREATION - Static variable in class harpoon.IR.Bytecode.Code
If turned on, we print a short message each time the bytecode representation for a method is created.
VERBOSE_STATISTICS - Static variable in class harpoon.Analysis.MemOpt.IncompatibilityAnalysis
If true, and SHOW_STATISTICS is also true, printStatistics will show A LOT OF statistics when it finishes.
VERSION - Static variable in class harpoon.Main.Purity
Version number for the Purity tool.
VERY_NEW_MAPPINGS - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
 
VERY_NEW_MAPPINGS - Static variable in class harpoon.Analysis.PointerAnalysis.InterThreadPA
 
VERY_VERBOSE - Static variable in class harpoon.Analysis.PA2.AllocSync.ASFlags
 
Virtualize - Class in harpoon.Analysis.Quads
Virtualize makes any non-virtual invocations of uncallable methods non-virtual, so that they don't lead to link errors later.
Virtualize(HCodeFactory, ClassHierarchy) - Constructor for class harpoon.Analysis.Quads.Virtualize
Creates a Virtualize code factory using the given ClassHierarchy.
visit(BasicBlockInterf) - Method in class harpoon.Analysis.BasicBlockInterfVisitor
 
visit(BasicBlock) - Method in class harpoon.Analysis.BasicBlockInterfVisitor
Visit a normal basic block.
visit(FCFGBasicBlock) - Method in class harpoon.Analysis.BasicBlockInterfVisitor
Visit a Factored CFG basic block.
visit(BasicBlock) - Method in class harpoon.Analysis.DataFlow.DataFlowBasicBlockVisitor
Performs some transfer function on a basic block b.
visit(BasicBlockInterf) - Method in class harpoon.Analysis.DataFlow.DataFlowBasicBlockVisitor
Performs some transfer function on a basic block b.
visit(BasicBlock) - Method in class harpoon.Analysis.DataFlow.LiveVars.BBVisitor
Visit (Transfer) function.
visit(RETURN) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(THROW) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(Quad) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(NEW) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(ANEW) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(PHI) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(CALL) - Method in class harpoon.Analysis.EventDriven.CloningVisitor
 
visit(PANode) - Method in interface harpoon.Analysis.PointerAnalysis.PANodeVisitor
Visits a PANode.
visit(Object, Object) - Method in interface harpoon.Analysis.PointerAnalysis.RelationEntryVisitor
Visits a <key,value> entry of a relation.
visit(CALL) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
visit(FOOTER) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
visit(MOVE) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
visit(PHI) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
visit(Quad) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
visit(SIGMA) - Method in class harpoon.Analysis.PreciseGC.PointsToQuadVisitor
 
visit(BasicBlock) - Method in class harpoon.Analysis.Tree.TreeFolding
Visit (Transfer) function.
visit(Temp) - Method in class harpoon.Backend.StrongARM.TempVisitor
 
visit(TwoWordTemp) - Method in class harpoon.Backend.StrongARM.TempVisitor
 
visit(Instr) - Method in class harpoon.IR.Assem.InstrVisitor
Visit an Instr i.
visit(InstrDIRECTIVE) - Method in class harpoon.IR.Assem.InstrVisitor
 
visit(InstrJUMP) - Method in class harpoon.IR.Assem.InstrVisitor
 
visit(InstrLABEL) - Method in class harpoon.IR.Assem.InstrVisitor
 
visit(InstrMEM) - Method in class harpoon.IR.Assem.InstrVisitor
 
visit(InstrMOVE) - Method in class harpoon.IR.Assem.InstrVisitor
 
visit(InstrCALL) - Method in class harpoon.IR.Assem.InstrVisitor
 
visit(AGET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
AGET is disallowed in LowQuad form.
visit(ASET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
ASET is disallowed in LowQuad form.
visit(CALL) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
CALL is disallowed in LowQuad form.
visit(GET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
GET is disallowed in LowQuad form.
visit(HANDLER) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
HANDLER is disallowed in LowQuad form.
visit(OPER) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
OPER is disallowed in LowQuad form.
visit(SET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
SET is disallowed in LowQuad form.
visit(LowQuad) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(POPER) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PCALL) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PGET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PSET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PPTR) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PARRAY) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PFIELD) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PMETHOD) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PCONST) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PAOFFSET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PFOFFSET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PMOFFSET) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PFCONST) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(PMCONST) - Method in class harpoon.IR.LowQuad.LowQuadValueVisitor
 
visit(AGET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
AGET is disallowed in LowQuad form.
visit(ASET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
ASET is disallowed in LowQuad form.
visit(CALL) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
CALL is disallowed in LowQuad form.
visit(GET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
GET is disallowed in LowQuad form.
visit(HANDLER) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
HANDLER is disallowed in LowQuad form.
visit(OPER) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
OPER is disallowed in LowQuad form.
visit(SET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
SET is disallowed in LowQuad form.
visit(LowQuad) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(POPER) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PCALL) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PGET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PSET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PPTR) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PARRAY) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PFIELD) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PMETHOD) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PCONST) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PAOFFSET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PFOFFSET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PMOFFSET) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PFCONST) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(PMCONST) - Method in class harpoon.IR.LowQuad.LowQuadVisitor
 
visit(Quad) - Method in class harpoon.IR.Quads.QuadValueVisitor
Visit a quad q.
visit(AGET) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(ALENGTH) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(ANEW) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(ARRAYINIT) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(ASET) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(CALL) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(CJMP) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(COMPONENTOF) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(CONST) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(DEBUG) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(FOOTER) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(GET) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(HEADER) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(INSTANCEOF) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(LABEL) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(HANDLER) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(METHOD) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(MONITORENTER) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(MONITOREXIT) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(MOVE) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(NEW) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(NOP) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(OPER) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(PHI) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(RETURN) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(SET) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(SIGMA) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(SWITCH) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(THROW) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(TYPECAST) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(TYPESWITCH) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(XI) - Method in class harpoon.IR.Quads.QuadValueVisitor
 
visit(Quad) - Method in class harpoon.IR.Quads.QuadVisitor
Visit a quad q.
visit(AGET) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(ALENGTH) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(ANEW) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(ARRAYINIT) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(ASET) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(CALL) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(CJMP) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(COMPONENTOF) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(CONST) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(DEBUG) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(FOOTER) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(GET) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(HEADER) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(INSTANCEOF) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(LABEL) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(HANDLER) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(METHOD) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(MONITORENTER) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(MONITOREXIT) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(MOVE) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(NEW) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(NOP) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(OPER) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(PHI) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(RETURN) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(SET) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(SIGMA) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(SWITCH) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(THROW) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(TYPECAST) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(TYPESWITCH) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(XI) - Method in class harpoon.IR.Quads.QuadVisitor
 
visit(Tree) - Method in class harpoon.IR.Tree.TreeVerifyingVisitor.NoRepeats
 
visit(SEQ) - Method in class harpoon.IR.Tree.TreeVerifyingVisitor.NoRepeats
 
visit(ESEQ) - Method in class harpoon.IR.Tree.TreeVerifyingVisitor.NoRepeats
 
visit(Tree) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(ALIGN) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(BINOP) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(CALL) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(CJUMP) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(CONST) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(DATUM) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(ESEQ) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(Exp) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(EXPR) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(INVOCATION) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(JUMP) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(LABEL) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(MEM) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(METHOD) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(MOVE) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(NAME) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(NATIVECALL) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(OPER) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(RETURN) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(SEGMENT) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(SEQ) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(Stm) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(TEMP) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(THROW) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(UNOP) - Method in class harpoon.IR.Tree.TreeVisitor
 
visit(Spec.Detail) - Method in class harpoon.Tools.PatMat.Spec.DetailVisitor
 
visit(Spec.DetailExtra) - Method in class harpoon.Tools.PatMat.Spec.DetailVisitor
 
visit(Spec.DetailPredicate) - Method in class harpoon.Tools.PatMat.Spec.DetailVisitor
 
visit(Spec.DetailWeight) - Method in class harpoon.Tools.PatMat.Spec.DetailVisitor
 
visit(Spec.DetailList) - Method in class harpoon.Tools.PatMat.Spec.DetailVisitor
Visits elements of l.
visit(Spec.Exp) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpBinop) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpConst) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpId) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpMem) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpName) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpTemp) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.ExpUnop) - Method in class harpoon.Tools.PatMat.Spec.ExpVisitor
 
visit(Spec.Leaf) - Method in class harpoon.Tools.PatMat.Spec.LeafVisitor
 
visit(Spec.LeafId) - Method in class harpoon.Tools.PatMat.Spec.LeafVisitor
 
visit(Spec.LeafOp) - Method in class harpoon.Tools.PatMat.Spec.LeafVisitor
 
visit(Spec.LeafNull) - Method in class harpoon.Tools.PatMat.Spec.LeafVisitor
 
visit(Spec.LeafNumber) - Method in class harpoon.Tools.PatMat.Spec.LeafVisitor
 
visit(Spec.LeafSegType) - Method in class harpoon.Tools.PatMat.Spec.LeafVisitor
 
visit(Spec.Rule) - Method in class harpoon.Tools.PatMat.Spec.RuleVisitor
 
visit(Spec.RuleExp) - Method in class harpoon.Tools.PatMat.Spec.RuleVisitor
 
visit(Spec.RuleStm) - Method in class harpoon.Tools.PatMat.Spec.RuleVisitor
 
visit(Spec.RuleList) - Method in class harpoon.Tools.PatMat.Spec.RuleVisitor
Visits elements of l.
visit(Spec.Stm) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmAlign) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmCall) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmCjump) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmData) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmExp) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmJump) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmLabel) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmMethod) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmMove) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmNativeCall) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmReturn) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmSegment) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmSeq) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit(Spec.StmThrow) - Method in class harpoon.Tools.PatMat.Spec.StmVisitor
 
visit_acmpeq(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_d2f(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_d2i(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_d2l(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_dadd(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_dcmpeq(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_dcmpge(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_dcmpgt(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ddiv(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_default(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_dmul(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_dneg(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_drem(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_f2d(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_f2i(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_f2l(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fadd(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fcmpeq(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fcmpge(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fcmpgt(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fdiv(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fmul(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_fneg(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_frem(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_i2b(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_i2c(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_i2d(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_i2f(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_i2l(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_i2s(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_iadd(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_iand(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_icmpeq(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_icmpgt(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_idiv(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_imul(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ineg(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ior(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_irem(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ishl(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ishr(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_iushr(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ixor(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_l2d(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_l2f(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_l2i(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ladd(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_land(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lcmpeq(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lcmpgt(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_ldiv(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lmul(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lneg(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lor(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lrem(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lshl(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lshr(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lushr(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_lxor(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
visit_unknown(OPER) - Method in class harpoon.IR.Quads.OperVisitor
 
Void - Static variable in class harpoon.ClassFile.HClass
The HClass object representing the primitive type void.
VOID - Static variable in class harpoon.Tools.Annotation.Sym
 
VOLATILE - Static variable in class harpoon.Tools.Annotation.Sym
 

W

WAITING - Static variable in class harpoon.Runtime.Transactions.CommitRecord
 
WARNINGS - Static variable in class harpoon.Analysis.PointerAnalysis.InterProcPA
Displays some warnings, eg for the call sites with 0 callees.
wasBefore(PAEdge, PAEdge) - Method in class harpoon.Analysis.PointerAnalysis.EdgeOrdering
Checks whether the inside edge ei could have been created before the outside edge eo is read.
WEAKLY_THREAD_SENSITIVE - Static variable in class harpoon.Analysis.PointerAnalysis.PointerAnalysis
Activates the weak thread sensitivity.
webFor(Temp, Instr) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
webToRegAssignment(AppelRegAllocClasses.Web) - Method in class harpoon.Analysis.Instr.AppelRegAlloc
 
WeightedGraph - Class in harpoon.Analysis.Partition
 
WeightedGraph() - Constructor for class harpoon.Analysis.Partition.WeightedGraph
 
WeightedGraph(WeightedGraph) - Constructor for class harpoon.Analysis.Partition.WeightedGraph
 
WGNode - Class in harpoon.Analysis.Partition
 
WGNode(String, Object) - Constructor for class harpoon.Analysis.Partition.WGNode
 
WGNode(WGNode) - Constructor for class harpoon.Analysis.Partition.WGNode
 
which_pred() - Method in class harpoon.IR.Quads.Edge
Returns the predecessor index of this Edge in to.
which_succ() - Method in class harpoon.IR.Quads.Edge
Returns the successor index of this Edge in from.
whichMustParam(Temp) - Method in class harpoon.Analysis.Quads.MustParamOracle
Returns the parameter which the given Temp *must* contain the value of.
WHILE - Static variable in class harpoon.Tools.Annotation.Sym
 
whose_tag_check(MEM) - Method in class harpoon.Analysis.Tree.CacheEquivalence
Returns the MEM operation which should have stored the necessary tag information for this MEM operation.
WIDE - Static variable in class harpoon.IR.Bytecode.Op
 
willEscape(PANode) - Method in class harpoon.Analysis.PointerAnalysis.PointsToGraph
Checks whether node node will escape because it is returned or because it is reachable from a returned node.
WORD_SIZE - Variable in class harpoon.Backend.Runtime1.TreeBuilder
 
wordsize() - Method in class harpoon.Interpret.Tree.InterpreterOffsetMap
 
Worklist<E> - Interface in harpoon.Util
A Worklist is a unique set.
worklist_solver(BasicBlock, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.TreeSolver
 
worklist_solver(Iterator, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.TreeSolver
 
worklistSolve(Iterator, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.Solver
Performs dataflow analysis on a set of BasicBlocks.
worklistSolver(BasicBlock, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.InstrSolver
Performs dataflow analysis on a set of BasicBlocks.
worklistSolver(Iterator, DataFlowBasicBlockVisitor) - Static method in class harpoon.Analysis.DataFlow.InstrSolver
Performs dataflow analysis on a set of BasicBlocks.
WorkSet<E> - Class in harpoon.Util.Collections
A WorkSet is a Set offering constant-time access to the first/last element inserted, and an iterator whose speed is not dependent on the total capacity of the underlying hashtable.
WorkSet() - Constructor for class harpoon.Util.Collections.WorkSet
 
WorkSet(int) - Constructor for class harpoon.Util.Collections.WorkSet
Constructs a new, empty WorkSet with the specified initial capacity and default load factor.
WorkSet(int, float) - Constructor for class harpoon.Util.Collections.WorkSet
Constructs a new, empty WorkSet with the specified initial capacity and the specified load factor.
WorkSet(Collection<? extends E>) - Constructor for class harpoon.Util.Collections.WorkSet
Constructs a new WorkSet with the contents of the specified Collection.
WPAllocSyncCompStage - Class in harpoon.Analysis.PA2.AllocSync
WPAllocSyncCompStage
WPAllocSyncCompStage(BoolMCell) - Constructor for class harpoon.Analysis.PA2.AllocSync.WPAllocSyncCompStage
 
WPMutationAnalysisCompStage - Class in harpoon.Analysis.PA2.Mutation
WPMutationAnalysisCompStage
WPMutationAnalysisCompStage(BoolMCell) - Constructor for class harpoon.Analysis.PA2.Mutation.WPMutationAnalysisCompStage
 
WPPointerAnalysis - Class in harpoon.Analysis.PA2
WPPointerAnalysis is a whole-program pointer analysis.
WPPointerAnalysis(CachingCodeFactory, CallGraph, Linker, ClassHierarchy, Collection<HMethod>, int) - Constructor for class harpoon.Analysis.PA2.WPPointerAnalysis
 
WPPointerAnalysisCompStage - Class in harpoon.Analysis.PA2
WPPointerAnalysisCompStage
WPPointerAnalysisCompStage() - Constructor for class harpoon.Analysis.PA2.WPPointerAnalysisCompStage
 
WPPointerAnalysisCompStage(BoolMCell) - Constructor for class harpoon.Analysis.PA2.WPPointerAnalysisCompStage
 
WritableTempMap - Interface in harpoon.Temp
WritableTempMap is a mutable instance of a TempMap.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AccessFlags
Write to bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.Attribute
Write Attribute to bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeCode
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeConstantValue
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeExceptions
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeInnerClasses
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeLineNumberTable
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeLocalVariableTable
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeSignature
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeSourceFile
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeSynthetic
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.AttributeUnknown
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ClassFile
Write a class file object out to a java bytecode file.
write(OutputStream) - Method in class harpoon.IR.RawClass.ClassFile
Write a class file object out to a java bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.Constant
Write a single constant pool item to a class bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantClass
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantDouble
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantFieldref
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantFloat
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantInteger
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantInterfaceMethodref
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantLong
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantMethodref
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantNameAndType
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantString
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ConstantUtf8
Write to a bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.ExceptionTable
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.FieldInfo
Writes a FieldInfo item out to a class bytecode file.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.InnerClass
Write to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.LineNumberTable
Writes to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.LocalVariableTable
Writes to bytecode stream.
write(ClassDataOutputStream) - Method in class harpoon.IR.RawClass.MethodInfo
Writes a MethodInfo item out to a class bytecode file.
write_u1(int) - Method in class harpoon.IR.RawClass.ClassDataOutputStream
Write an unsigned one-byte quantity, high byte first.
write_u2(int) - Method in class harpoon.IR.RawClass.ClassDataOutputStream
Write an unsigned two-byte quantity, high byte first.
write_u4(long) - Method in class harpoon.IR.RawClass.ClassDataOutputStream
Write an unsigned four-byte quantity, high byte first.
WriteBarrier - Class in harpoon.Runtime.PreciseGC
WriteBarrier is an abstract class that provides a dummy write-barrier for generational garbage collection.
WriteBarrier() - Constructor for class harpoon.Runtime.PreciseGC.WriteBarrier
 
WriteBarrierConstElim - Class in harpoon.Analysis.PreciseGC
WriteBarrierConstElim operates on Tree form.
WriteBarrierInserter - Class in harpoon.Analysis.PreciseGC
WriteBarrierInserter takes code in Quad form and inserts write barriers for generational garbage collection.
WriteBarrierInserter(HCodeFactory, Linker, WriteBarrierInserter.WriteBarrierAnalysis) - Constructor for class harpoon.Analysis.PreciseGC.WriteBarrierInserter
Creates a WriteBarrierInserter.
WriteBarrierInserter(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.PreciseGC.WriteBarrierInserter
Creates a WriteBarrierInserter using a default no-analysis WriteBarrierAnalysis.
WriteBarrierInserter.DefaultWriteBarrierAnalysis - Class in harpoon.Analysis.PreciseGC
DefaultWriteBarrierAnalysis returns a no- analysis WriteBarrierAnalysis Object that assumes write barriers are needed for all SET and ASETs of object fields.
WriteBarrierInserter.WriteBarrierAnalysis - Interface in harpoon.Analysis.PreciseGC
A WriteBarrierAnalysis maps Codes to Sets of Quads for which write barriers have been deemed unnecessary.
WriteBarrierPostPass - Class in harpoon.Analysis.PreciseGC
WriteBarrierPostPass performs some low-level transformations to the output of WriteBarrierPrePass which cannot be done in the quad form on which WriteBarrierPrePass operates.
WriteBarrierPrePass - Class in harpoon.Analysis.PreciseGC
WriteBarrierPrePass takes code in LowQuad form and inserts a fake call to a write barrier that is later replaced with a real implementation in WriteBarrierPostPass.
WriteBarrierPrePass(HCodeFactory, Linker) - Constructor for class harpoon.Analysis.PreciseGC.WriteBarrierPrePass
Creates a WriteBarrierPrePass.
WriteBarrierQuadPass - Class in harpoon.Analysis.PreciseGC
WriteBarrierQuadPass takes code in Quad form and inserts a fake call to a write barrier that is later replaced with a real implementation in WriteBarrierTreePass.
WriteBarrierQuadPass(ClassHierarchy, HCodeFactory, Linker, String, int) - Constructor for class harpoon.Analysis.PreciseGC.WriteBarrierQuadPass
Creates a WriteBarrierQuadPass.
WriteBarriers - Class in harpoon.Main
WriteBarriers
WriteBarriers() - Constructor for class harpoon.Main.WriteBarriers
 
WriteBarriers.DynamicWBQuadPass - Class in harpoon.Main
 
WriteBarriers.DynamicWBQuadPass() - Constructor for class harpoon.Main.WriteBarriers.DynamicWBQuadPass
 
WriteBarriers.WBDynamicWBTreePass - Class in harpoon.Main
 
WriteBarriers.WBDynamicWBTreePass() - Constructor for class harpoon.Main.WriteBarriers.WBDynamicWBTreePass
 
WriteBarriers.WBQuadPass - Class in harpoon.Main
 
WriteBarriers.WBQuadPass() - Constructor for class harpoon.Main.WriteBarriers.WBQuadPass
 
WriteBarrierStats - Class in harpoon.Analysis.PreciseGC
WriteBarrierStats emits data needed for gathering write barrier statistics.
WriteBarrierStats(Frame, HCodeFactory, ClassHierarchy, PrintStream, Linker) - Constructor for class harpoon.Analysis.PreciseGC.WriteBarrierStats
Creates a WriteBarrierStats, and performs conversion on all callable methods.
WriteBarrierTreePass - Class in harpoon.Analysis.PreciseGC
WriteBarrierTreePass performs some low-level transformations to the output of WriteBarrierQuadPass which cannot be done in the quad form on which WriteBarrierQuadPass operates.
WriteConstraint - Class in harpoon.Analysis.PA2
WriteConstraint
WriteConstraint(LVar, HField, WVar) - Constructor for class harpoon.Analysis.PA2.WriteConstraint
 
writeToFile(AllocationNumbering, String, Linker) - Static method in class harpoon.Instrumentation.AllocationStatistics.AllocationNumberingStub
Write into a file a simplified version of an AllocationNumbering object.
WrongNodeTypeException - Exception in harpoon.Analysis.GraphColoring
WrongNodeTypeException
WrongNodeTypeException() - Constructor for exception harpoon.Analysis.GraphColoring.WrongNodeTypeException
Creates a WrongNodeTypeException.
WrongNodeTypeException(String) - Constructor for exception harpoon.Analysis.GraphColoring.WrongNodeTypeException
Creates a WrongNodeTypeException.
wtspec_run - Variable in class harpoon.Analysis.PointerAnalysis.PASync
If this action is the thread specialization of another action, this is the run method of the thread which does this action.
wtSpecialize() - Method in class harpoon.Analysis.PointerAnalysis.PANode
Returns the thread specialization of this node.
WVar - Class in harpoon.Analysis.PA2
WVar
WVar() - Constructor for class harpoon.Analysis.PA2.WVar
 

X

XI - Static variable in class harpoon.IR.Quads.QuadKind
 
XOR - Static variable in class harpoon.IR.Tree.Bop
Bit-wise XOR; long/integer only.
XOR - Static variable in class harpoon.Tools.Annotation.Sym
 
XOR - Static variable in class harpoon.Tools.PatMat.Sym
 
XOREQ - Static variable in class harpoon.Tools.Annotation.Sym
 
XXXUNUSEDXXX - Static variable in class harpoon.IR.Bytecode.Op
 

Z

ZERO_DATA - Static variable in class harpoon.IR.Tree.SEGMENT
R/W memory initialized at load time to be 0
zeroCheck(Quad, Temp, boolean, QuadWithTry, UseDef) - Static method in class harpoon.IR.Quads.Pattern
 

_

_2D - Static variable in class harpoon.IR.Tree.Uop
Converts to double.
_2D - Static variable in class harpoon.Tools.PatMat.Sym
 
_2F - Static variable in class harpoon.IR.Tree.Uop
Converts to float.
_2F - Static variable in class harpoon.Tools.PatMat.Sym
 
_2I - Static variable in class harpoon.IR.Tree.Uop
Converts to int.
_2I - Static variable in class harpoon.Tools.PatMat.Sym
 
_2L - Static variable in class harpoon.IR.Tree.Uop
Converts to long.
_2L - Static variable in class harpoon.Tools.PatMat.Sym
 
_acceptStates() - Method in class harpoon.Analysis.PA2.Mutation.MutationNFA
 
_action_table - Static variable in class harpoon.Tools.Annotation.Java12
parse action table
_action_table - Static variable in class harpoon.Tools.PatMat.Parser
parse action table
_add(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
_add(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
_add(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.IntegerValue
 
_add(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Value
 
_ADD - Static variable in class harpoon.Analysis.Tree.Simplification
 
_ALIGN - Static variable in class harpoon.Analysis.Tree.Simplification
 
_AND - Static variable in class harpoon.Analysis.Tree.Simplification
 
_bgcolor - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
_binding - Variable in class harpoon.Analysis.Partition.WGNode
 
_BINOP - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CALL - Static variable in class harpoon.Analysis.Tree.Simplification
 
_call_FNI_Monitor(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, boolean) - Method in class harpoon.Backend.Runtime1.TreeBuilder
wrap objectref and then call FNI_Monitor{Enter|Exit}()
_call_FNI_Monitor(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp, boolean) - Method in class harpoon.Backend.Runtime2.TreeBuilder
 
_CJUMP - Static variable in class harpoon.Analysis.Tree.Simplification
 
_claz_(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.Runtime1.TreeBuilder
Returns a pointer to the claz structure associated with the given objectref.
_claz_(TreeFactory, HCodeElement, DerivationGenerator, Translation.Exp) - Method in class harpoon.Backend.RuntimeTiny.TreeBuilder
 
_CMPEQ - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CMPGE - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CMPGT - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CMPLE - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CMPLT - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CMPNE - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CONST - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CONST0 - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CONST1 - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CONSTm1 - Static variable in class harpoon.Analysis.Tree.Simplification
 
_CONSTNULL - Static variable in class harpoon.Analysis.Tree.Simplification
 
_d - Variable in class harpoon.Analysis.Partition.WGNode
 
_DATUM - Static variable in class harpoon.Analysis.Tree.Simplification
 
_DATUM(Exp) - Method in class harpoon.Backend.Runtime1.Data
 
_DATUM(Label) - Method in class harpoon.Backend.Runtime1.Data
 
_DIV - Static variable in class harpoon.Analysis.Tree.Simplification
 
_dummy - Variable in class harpoon.Analysis.Partition.WGNode
 
_edgecolor - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
_edges - Variable in class harpoon.Analysis.Partition.WGNode
 
_ESEQ - Static variable in class harpoon.Analysis.Tree.Simplification
 
_EXPR - Static variable in class harpoon.Analysis.Tree.Simplification
 
_JUMP - Static variable in class harpoon.Analysis.Tree.Simplification
 
_KIND(Tree) - Static method in class harpoon.Analysis.Tree.Simplification
 
_LABEL - Static variable in class harpoon.Analysis.Tree.Simplification
 
_MEM - Static variable in class harpoon.Analysis.Tree.Simplification
 
_METHOD - Static variable in class harpoon.Analysis.Tree.Simplification
 
_methodPrologue_(InstrFactory) - Method in class harpoon.Backend.Generic.MaxMunchCG
 
_MOVE - Static variable in class harpoon.Analysis.Tree.Simplification
 
_mul(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.BaseAndOffset
 
_mul(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Constant
 
_mul(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.ConstantModuloN
 
_mul(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.IntegerValue
 
_mul(AlignmentAnalysis.Value) - Method in class harpoon.Analysis.Tree.AlignmentAnalysis.Value
 
_MUL - Static variable in class harpoon.Analysis.Tree.Simplification
 
_name - Variable in class harpoon.Analysis.Partition.WGNode
 
_NAME - Static variable in class harpoon.Analysis.Tree.Simplification
 
_NATIVECALL - Static variable in class harpoon.Analysis.Tree.Simplification
 
_nextToken() - Method in class harpoon.Tools.Annotation.Lex.Lexer
 
_nodecolors - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
_OP(int) - Static method in class harpoon.Analysis.Tree.Simplification
 
_OR - Static variable in class harpoon.Analysis.Tree.Simplification
 
_PACK_CS() - Method in class harpoon.Main.CompilerStageEZ
 
_production_table - Static variable in class harpoon.Tools.Annotation.Java12
production table
_production_table - Static variable in class harpoon.Tools.PatMat.Parser
production table
_reduce_table - Static variable in class harpoon.Tools.Annotation.Java12
reduce_goto table
_reduce_table - Static variable in class harpoon.Tools.PatMat.Parser
reduce_goto table
_REM - Static variable in class harpoon.Analysis.Tree.Simplification
 
_RETURN - Static variable in class harpoon.Analysis.Tree.Simplification
 
_SEGMENT - Static variable in class harpoon.Analysis.Tree.Simplification
 
_SEQ - Static variable in class harpoon.Analysis.Tree.Simplification
 
_SHL - Static variable in class harpoon.Analysis.Tree.Simplification
 
_SHR - Static variable in class harpoon.Analysis.Tree.Simplification
 
_TEMP - Static variable in class harpoon.Analysis.Tree.Simplification
 
_textcolor - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
_textfont - Static variable in class harpoon.Analysis.Partition.PartitionGraphViewer
 
_THROW - Static variable in class harpoon.Analysis.Tree.Simplification
 
_UNOP - Static variable in class harpoon.Analysis.Tree.Simplification
 
_UNPACK_CS(CompilerState) - Method in class harpoon.Main.CompilerStageEZ
 
_USHR - Static variable in class harpoon.Analysis.Tree.Simplification
 
_value - Variable in class harpoon.Analysis.Partition.WGNode
 
_weights - Variable in class harpoon.Analysis.Partition.WGNode
 
_XOR - Static variable in class harpoon.Analysis.Tree.Simplification
 

A B C D E F G H I J K L M N O P Q R S T U V W X Z _