Uses of Class
org.jruby.ir.instructions.Instr
Packages that use Instr
Package
Description
-
Uses of Instr in org.jruby.ir
Methods in org.jruby.ir with parameters of type InstrModifier and TypeMethodDescriptionvoid
void
Method parameters in org.jruby.ir with type arguments of type InstrModifier and TypeMethodDescriptionIRClosure.allocateInterpreterContext
(Supplier<List<Instr>> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) IRClosure.allocateInterpreterContext
(List<Instr> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) IRScope.allocateInterpreterContext
(Supplier<List<Instr>> instructions, int tempVariableCount, EnumSet<IRFlags> flags) Make version specific to scope which needs it (e.g.IRScope.allocateInterpreterContext
(List<Instr> instructions, int tempVariableCount, EnumSet<IRFlags> flags) Make version specific to scope which needs it (e.g. -
Uses of Instr in org.jruby.ir.builder
Fields in org.jruby.ir.builder with type parameters of type InstrMethods in org.jruby.ir.builder that return InstrModifier and TypeMethodDescriptionstatic Instr
IRBuilder.createBranch
(Operand v1, Operand v2, Label jmpTarget) Methods in org.jruby.ir.builder with parameters of type InstrModifier and TypeMethodDescriptionvoid
void
IRBuilder.addInstrAtBeginning
(Instr instr) protected static void
IRBuilder.extractCallOperands
(List<Operand> callArgs, List<KeyValuePair<Operand, Operand>> keywordArgs, Instr instr) Method parameters in org.jruby.ir.builder with type arguments of type Instr -
Uses of Instr in org.jruby.ir.dataflow
Methods in org.jruby.ir.dataflow with parameters of type InstrModifier and TypeMethodDescriptionabstract void
FlowGraphNode.applyTransferFunction
(Instr i) Apply transfer function to the instructionabstract void
FlowGraphNode.buildDataFlowVars
(Instr i) Builds the data-flow variables (or facts) for a particular instruction. -
Uses of Instr in org.jruby.ir.dataflow.analyses
Methods in org.jruby.ir.dataflow.analyses with parameters of type InstrModifier and TypeMethodDescriptionvoid
DefinedVariableNode.applyTransferFunction
(Instr i) void
LiveVariableNode.applyTransferFunction
(Instr i) void
LoadLocalVarPlacementNode.applyTransferFunction
(Instr i) void
StoreLocalVarPlacementNode.applyTransferFunction
(Instr i) void
UnboxableOpsAnalysisNode.applyTransferFunction
(Instr i) void
DefinedVariableNode.buildDataFlowVars
(Instr i) void
LiveVariableNode.buildDataFlowVars
(Instr i) void
LoadLocalVarPlacementNode.buildDataFlowVars
(Instr i) void
StoreLocalVarPlacementNode.buildDataFlowVars
(Instr i) void
UnboxableOpsAnalysisNode.buildDataFlowVars
(Instr i) Method parameters in org.jruby.ir.dataflow.analyses with type arguments of type InstrModifier and TypeMethodDescriptionvoid
UnboxableOpsAnalysisNode.boxVar
(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisNode.UnboxState state, Class reqdType, Map<Variable, TemporaryLocalVariable> unboxMap, Variable v, List<Instr> newInstrs) void
UnboxableOpsAnalysisNode.unboxVar
(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisNode.UnboxState state, Class reqdType, Map<Variable, TemporaryLocalVariable> unboxMap, Variable v, List<Instr> newInstrs) -
Uses of Instr in org.jruby.ir.instructions
Subclasses of Instr in org.jruby.ir.instructionsModifier and TypeClassDescriptionclass
class
Instruction representing Ruby code of the form: "a['str']" which is equivalent to: a.[]('str').class
class
class
class
class
class
A call to block_given? which can be optimized like defined?(yield) or a regular call.class
Represents a defined?(yield) check, which works like a call to block_given? without requiring special access to the caller's frame.class
class
class
class
class
Represents a multiple-target jump instruction based on a switch-like tableclass
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
This is only used for active debugging and should never end up showing up in real executed code.class
class
class
class
class
class
class
class
class
A call to __method__ or __callee__ which can be optimized to use the frame method name directly.class
class
class
class
class
class
class
class
class
This represents a linenumber instr that has been inlined into another method/closure.class
class
class
class
class
class
class
Load the block passed to this scope via the on-heap frame (or similar cross-call structure).class
Load the block passed to this scope via the on-heap frame (or similar cross-call structure).class
Load the "implicit" closure for this scope.class
class
class
This instruction will be generated whenever speculative optimizations are performed based on assuming that an object's metaclass is C (as determined by the version number of C -- where the version number changes every time C's class structure changes).class
class
class
class
An instr with no Operandsclass
result instr with no operandsclass
For Instrs with an arbitrary number of Operands.class
Created by enebo on 7/28/15.class
class
class
class
Created by enebo on 7/27/15.class
Result Instr with one operand.class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
class
Gets the keyword arg (or representation of what might be holding keyword args).class
class
This represents a required arg that shows up after optional/rest args in a method/block parameter list.class
class
class
class
class
class
class
class
class
class
class
For most instrs that have a result this is their base class.class
class
class
class
class
class
class
Search for a constant within the current module.class
class
class
class
class
class
This instruction toggles a single per thread field which specifies whether an exception being thrown needs to generate backtrace info.class
Instrumented trace.class
class
Instr for two operands.class
Result Instr with two operands.class
class
class
class
class
Methods in org.jruby.ir.instructions that return InstrModifier and TypeMethodDescriptionabstract Instr
Clone the instruction for use in an inlining context (either when a scope is inlined into another scope, or when a block has to be cloned because its associated call belongs to an inlined scope).BFalseInstr.simplifyInstr
(IRManager manager) BNEInstr.simplifyInstr
(IRManager manager) BNilInstr.simplifyInstr
(IRManager manager) BTrueInstr.simplifyInstr
(IRManager manager) BuildCompoundStringInstr.simplifyInstr
(IRManager manager) This will make an attempt to combine multiple pieces when they are contiguout frozen strings OR immutable literals.BUndefInstr.simplifyInstr
(IRManager manager) Instr.simplifyInstr
(IRManager manager) -
Uses of Instr in org.jruby.ir.instructions.boxing
Subclasses of Instr in org.jruby.ir.instructions.boxingModifier and TypeClassDescriptionclass
class
class
class
class
class
class
class
class
Methods in org.jruby.ir.instructions.boxing that return InstrModifier and TypeMethodDescription -
Uses of Instr in org.jruby.ir.instructions.defined
Subclasses of Instr in org.jruby.ir.instructions.definedMethods in org.jruby.ir.instructions.defined that return Instr -
Uses of Instr in org.jruby.ir.instructions.specialized
Subclasses of Instr in org.jruby.ir.instructions.specializedModifier and TypeClassDescriptionclass
class
class
class
class
class
class
class
Methods in org.jruby.ir.instructions.specialized that return InstrModifier and TypeMethodDescription -
Uses of Instr in org.jruby.ir.interpreter
Fields in org.jruby.ir.interpreter declared as InstrFields in org.jruby.ir.interpreter with type parameters of type InstrMethods in org.jruby.ir.interpreter that return InstrMethods in org.jruby.ir.interpreter with parameters of type InstrModifier and TypeMethodDescriptionprotected static void
InterpreterEngine.extractToMethodToAvoidC2Crash
(Instr instr, Throwable t) protected static void
InterpreterEngine.processBookKeepingOp
(ThreadContext context, Block block, Instr instr, Operation operation, String name, IRubyObject[] args, IRubyObject self, Block blockArg, RubyModule implClass, DynamicScope currDynScope, Object[] temp, StaticScope currScope) protected static void
InterpreterEngine.processCall
(ThreadContext context, Instr instr, Operation operation, DynamicScope currDynScope, StaticScope currScope, Object[] temp, IRubyObject self, String name) protected static void
ExitableInterpreterEngine.processOtherOp
(ThreadContext context, Block block, Instr instr, Operation operation, DynamicScope currDynScope, StaticScope currScope, Object[] temp, IRubyObject self) protected static void
InterpreterEngine.processOtherOp
(ThreadContext context, Block block, Instr instr, Operation operation, DynamicScope currDynScope, StaticScope currScope, Object[] temp, IRubyObject self, double[] floats, long[] fixnums, boolean[] booleans) protected static void
StartupInterpreterEngine.processOtherOp
(ThreadContext context, Block block, Instr instr, Operation operation, DynamicScope currDynScope, StaticScope currScope, Object[] temp, IRubyObject self) protected static IRubyObject
InterpreterEngine.processReturnOp
(ThreadContext context, Block block, Instr instr, Operation operation, DynamicScope currDynScope, Object[] temp, IRubyObject self, StaticScope currScope) protected static void
InterpreterEngine.receiveArg
(ThreadContext context, Instr i, Operation operation, IRubyObject self, IRubyObject[] args, boolean ruby2Keywords, StaticScope currScope, DynamicScope currDynScope, Object[] temp, Object exception, Block blockArg) protected static void
InterpreterEngine.setResult
(Object[] temp, DynamicScope currDynScope, Instr instr, Object result) static void
Profiler.updateCallSite
(Instr instr, IRScope scope, Integer scopeVersion) Constructors in org.jruby.ir.interpreter with parameters of type InstrModifierConstructorDescriptionFullInterpreterContext
(IRScope scope, Instr[] instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) Constructor parameters in org.jruby.ir.interpreter with type arguments of type InstrModifierConstructorDescriptionClosureInterpreterContext
(IRClosure scope, Supplier<List<Instr>> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) ClosureInterpreterContext
(IRClosure scope, List<Instr> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) InterpreterContext
(IRScope scope, Supplier<List<Instr>> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) InterpreterContext
(IRScope scope, List<Instr> instructions, int temporaryVariableCount, EnumSet<IRFlags> flags) -
Uses of Instr in org.jruby.ir.listeners
Methods in org.jruby.ir.listeners that return InstrModifier and TypeMethodDescriptionInstructionsListenerDecorator.get
(int index) InstructionsListenerDecorator.remove
(int index) Methods in org.jruby.ir.listeners that return types with arguments of type InstrModifier and TypeMethodDescriptionInstructionsListenerDecorator.iterator()
InstructionsListenerDecorator.listIterator()
InstructionsListenerDecorator.listIterator
(int index) InstructionsListenerDecorator.subList
(int fromIndex, int toIndex) Methods in org.jruby.ir.listeners with parameters of type InstrModifier and TypeMethodDescriptionvoid
boolean
void
IRScopeListener.addedInstr
(IRScope scope, Instr instr, int index) void
InstructionsListener.instrChanged
(BasicBlock basicBlock, Instr oldInstr, Instr newInstr, int index, InstructionsListener.OperationType op) listen to a change of a list of instructions, right before the change going to take placeMethod parameters in org.jruby.ir.listeners with type arguments of type InstrModifier and TypeMethodDescriptionboolean
InstructionsListenerDecorator.addAll
(int index, Collection<? extends Instr> c) boolean
InstructionsListenerDecorator.addAll
(Collection<? extends Instr> c) Constructor parameters in org.jruby.ir.listeners with type arguments of type InstrModifierConstructorDescriptionInstructionsListenerDecorator
(BasicBlock basicBlock, List<Instr> instrs, InstructionsListener listener) -
Uses of Instr in org.jruby.ir.passes
Methods in org.jruby.ir.passes that return InstrModifier and TypeMethodDescriptionstatic Instr
LocalOptimizationPass.optInstr
(FullInterpreterContext fic, Instr instr, Map<Operand, Operand> valueMap, Map<Variable, List<Variable>> simplificationMap) Methods in org.jruby.ir.passes with parameters of type InstrModifier and TypeMethodDescriptionstatic Instr
LocalOptimizationPass.optInstr
(FullInterpreterContext fic, Instr instr, Map<Operand, Operand> valueMap, Map<Variable, List<Variable>> simplificationMap) static void
LocalOptimizationPass.runLocalOptsOnInstrArray
(FullInterpreterContext fic, Instr[] instrs) -
Uses of Instr in org.jruby.ir.persistence
Methods in org.jruby.ir.persistence that return InstrMethods in org.jruby.ir.persistence that return types with arguments of type InstrModifier and TypeMethodDescriptionIRReaderDecoder.decodeInstructionsAt
(IRScope scope, int poolOffset, int instructionOffset) IRReaderStream.decodeInstructionsAt
(IRScope scope, int poolOffset, int offset) Methods in org.jruby.ir.persistence with parameters of type Instr -
Uses of Instr in org.jruby.ir.representations
Methods in org.jruby.ir.representations that return InstrMethods in org.jruby.ir.representations that return types with arguments of type InstrMethods in org.jruby.ir.representations with parameters of type InstrModifier and TypeMethodDescriptionvoid
org.jruby.dirgra.DirectedGraph
<BasicBlock, CFG.EdgeType> Build the Control Flow Graphvoid
BasicBlock.insertInstr
(int index, Instr i) void
BasicBlock.insertInstr
(Instr i) int
boolean
BasicBlock.removeInstr
(Instr i) Method parameters in org.jruby.ir.representations with type arguments of type Instr -
Uses of Instr in org.jruby.ir.targets
Methods in org.jruby.ir.targets with parameters of type Instr -
Uses of Instr in org.jruby.ir.util
Methods in org.jruby.ir.util that return types with arguments of type InstrModifier and TypeMethodDescriptionIGVInstrListener.getRemovedEdges()
IGVInstrListener.getRemovedEdges()
IGVInstrListener.removedList
(BasicBlock basicBlock) Methods in org.jruby.ir.util with parameters of type InstrModifier and TypeMethodDescriptionvoid
IGVInstrListener.instrChanged
(BasicBlock basicBlock, Instr oldInstr, Instr newInstr, int index, InstructionsListener.OperationType op)