| Modifier and Type | Field and Description |
|---|---|
| private static final EnumSet | |
| protected final transient int | |
| protected final transient CallSite | |
| public static long | |
| public transient long | |
| private final CallType | |
| private transient boolean | |
| private transient boolean | |
| private final int | |
| private transient boolean | |
| private transient Set | |
| private transient Set | |
| protected final transient boolean | |
| protected final RubySymbol | |
| private final boolean | |
| private static final int | |
| private transient boolean[] | |
| private transient boolean | |
| private transient boolean |
| Access | Constructor and Description |
|---|---|
| protected | |
| protected |
| Modifier and Type | Method and Description |
|---|---|
| private static Operand[] | |
| public void | |
| private int | |
| public boolean | |
| private void | captureFrameReadsAndWrites()
Determine based on the method name what frame fields it is likely to need. |
| public Operand[] | |
| private boolean | |
| private void | |
| private boolean | |
| private boolean | |
| public boolean | computeScopeFlags(IRScope scope, EnumSet<IRFlags> flags)
Overrides org. Does this instruction do anything the scope is interested in? |
| public static boolean | |
| public void | |
| public Operand | |
| public int | |
| public Operand[] | |
| public CallSite | |
| protected static CallSite | getCallSiteFor(IRScope scope, CallType callType, String name, long callsiteId, boolean hasLiteralClosure, boolean potentiallyRefined)
|
| public long | |
| public CallType | |
| public Operand | getClosureArg()
Implements org. From interface ClosureAcceptingInstr |
| public Operand | |
| public int | |
| public String | |
| public RubySymbol | |
| public Operand | |
| public abstract Variable | |
| public boolean | |
| public boolean | |
| public Object | interpret(ThreadContext context, StaticScope currScope, DynamicScope dynamicScope, IRubyObject self, Object[] temp)
Overrides org.
|
| public static boolean | |
| public static boolean | |
| public boolean | |
| private static boolean | |
| public IRubyObject[] | prepareArguments(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope dynamicScope, Object[] temp)
|
| protected IRubyObject[] | prepareArgumentsComplex(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp)
|
| protected IRubyObject[] | prepareArgumentsSimple(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp)
|
| public Block | prepareBlock(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp)
|
| public void | |
| private boolean | |
| protected void | simplifyOperands(Map<Operand, Operand> valueMap, boolean force)
Overrides org. This method takes as input a map of operands to their values, and outputs If the value map provides a value for any of the instruction's operands this method is expected to replace the original operands with the simplified values. |
| public boolean[] | |
| public boolean | |
| public boolean | |
| public String[] |
| ALL | back to summary |
|---|---|
| private static final EnumSet<FrameField> ALL | |
| argsCount | back to summary |
|---|---|
| protected final transient int argsCount | |
| callSite | back to summary |
|---|---|
| protected final transient CallSite callSite | |
| callSiteCounter | back to summary |
|---|---|
| public static long callSiteCounter | |
| callSiteId | back to summary |
|---|---|
| public transient long callSiteId | |
| callType | back to summary |
|---|---|
| private final CallType callType | |
| canBeEval | back to summary |
|---|---|
| private transient boolean canBeEval | |
| dontInline | back to summary |
|---|---|
| private transient boolean dontInline | |
| flags | back to summary |
|---|---|
| private final int flags | |
| flagsComputed | back to summary |
|---|---|
| private transient boolean flagsComputed | |
| frameReads | back to summary |
|---|---|
| private transient Set<FrameField> frameReads | |
| frameWrites | back to summary |
|---|---|
| private transient Set<FrameField> frameWrites | |
| hasClosure | back to summary |
|---|---|
| protected final transient boolean hasClosure | |
| name | back to summary |
|---|---|
| protected final RubySymbol name | |
| potentiallyRefined | back to summary |
|---|---|
| private final boolean potentiallyRefined | |
| REQUIRED_OPERANDS | back to summary |
|---|---|
| private static final int REQUIRED_OPERANDS | |
| splatMap | back to summary |
|---|---|
| private transient boolean[] splatMap | |
| targetRequiresCallersBinding | back to summary |
|---|---|
| private transient boolean targetRequiresCallersBinding | |
| targetRequiresCallersFrame | back to summary |
|---|---|
| private transient boolean targetRequiresCallersFrame | |
| CallBase | back to summary |
|---|---|
| protected CallBase(IRScope scope, Operation op, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean potentiallyRefined) | |
| CallBase | back to summary |
|---|---|
| protected CallBase(IRScope scope, Operation op, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean potentiallyRefined, CallSite callSite, long callSiteId) | |
| arrayifyOperands | back to summary |
|---|---|
| private static Operand[] arrayifyOperands(Operand receiver, Operand[] callArgs, Operand closure) | |
| blockInlining | back to summary |
|---|---|
| public void blockInlining() | |
| calculateArity | back to summary |
|---|---|
| private int calculateArity() | |
| canBeEval | back to summary |
|---|---|
| public boolean canBeEval() | |
| captureFrameReadsAndWrites | back to summary |
|---|---|
| private void captureFrameReadsAndWrites() Determine based on the method name what frame fields it is likely to need. | |
| cloneCallArgs | back to summary |
|---|---|
| public Operand[] cloneCallArgs(CloneInfo ii) | |
| computeEvalFlag | back to summary |
|---|---|
| private boolean computeEvalFlag() | |
| computeFlags | back to summary |
|---|---|
| private void computeFlags() | |
| computeRequiresCallersBindingFlag | back to summary |
|---|---|
| private boolean computeRequiresCallersBindingFlag() | |
| computeRequiresCallersFrameFlag | back to summary |
|---|---|
| private boolean computeRequiresCallersFrameFlag() | |
| computeScopeFlags | back to summary |
|---|---|
| public boolean computeScopeFlags(IRScope scope, EnumSet<IRFlags> flags) Overrides org. Doc from org. Does this instruction do anything the scope is interested in?
| |
| containsArgSplat | back to summary |
|---|---|
| public static boolean containsArgSplat(Operand[] arguments) | |
| encode | back to summary |
|---|---|
| public void encode(IRWriterEncoder e) Overrides org.
| |
| getArg1 | back to summary |
|---|---|
| public Operand getArg1() This getter is potentially unsafe if you do not know you have >=1 arguments to the call. It may return null of the closure argument from operands. | |
| getArgsCount | back to summary |
|---|---|
| public int getArgsCount() | |
| getCallArgs | back to summary |
|---|---|
| public Operand[] getCallArgs() | |
| getCallSite | back to summary |
|---|---|
| public CallSite getCallSite() | |
| getCallSiteFor | back to summary |
|---|---|
| protected static CallSite getCallSiteFor(IRScope scope, CallType callType, String name, long callsiteId, boolean hasLiteralClosure, boolean potentiallyRefined) | |
| getCallSiteId | back to summary |
|---|---|
| public long getCallSiteId() Implements org. | |
| getCallType | back to summary |
|---|---|
| public CallType getCallType() | |
| getClosureArg | back to summary |
|---|---|
| public Operand getClosureArg() Implements org. From interface ClosureAcceptingInstr | |
| getClosureArg | back to summary |
|---|---|
| public Operand getClosureArg(Operand ifUnspecified) | |
| getFlags | back to summary |
|---|---|
| public int getFlags() | |
| getId | back to summary |
|---|---|
| public String getId() raw identifier string (used by method table). | |
| getName | back to summary |
|---|---|
| public RubySymbol getName() | |
| getReceiver | back to summary |
|---|---|
| public Operand getReceiver() | |
| getResult | back to summary |
|---|---|
| public abstract Variable getResult() | |
| hasLiteralClosure | back to summary |
|---|---|
| public boolean hasLiteralClosure() Implements org. | |
| inliningBlocked | back to summary |
|---|---|
| public boolean inliningBlocked() | |
| interpret | back to summary |
|---|---|
| public Object interpret(ThreadContext context, StaticScope currScope, DynamicScope dynamicScope, IRubyObject self, Object[] temp) Overrides org.
| |
| isAllFixnums | back to summary |
|---|---|
| public static boolean isAllFixnums(Operand[] args) | |
| isAllFloats | back to summary |
|---|---|
| public static boolean isAllFloats(Operand[] args) | |
| isPotentiallyRefined | back to summary |
|---|---|
| public boolean isPotentiallyRefined() | |
| potentiallySend | back to summary |
|---|---|
| private static boolean potentiallySend(String name, int argsCount) | |
| prepareArguments | back to summary |
|---|---|
| public IRubyObject[] prepareArguments(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope dynamicScope, Object[] temp) | |
| prepareArgumentsComplex | back to summary |
|---|---|
| protected IRubyObject[] prepareArgumentsComplex(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp) | |
| prepareArgumentsSimple | back to summary |
|---|---|
| protected IRubyObject[] prepareArgumentsSimple(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp) | |
| prepareBlock | back to summary |
|---|---|
| public Block prepareBlock(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp) | |
| setCallSiteId | back to summary |
|---|---|
| public void setCallSiteId(long callSiteId) Implements org. | |
| setIRFlagsFromFrameFields | back to summary |
|---|---|
| private boolean setIRFlagsFromFrameFields(EnumSet<IRFlags> flags, Set<FrameField> frameFields) | |
| simplifyOperands | back to summary |
|---|---|
| protected void simplifyOperands(Map<Operand, Operand> valueMap, boolean force) Overrides org. Doc from org. This method takes as input a map of operands to their values, and outputs If the value map provides a value for any of the instruction's operands this method is expected to replace the original operands with the simplified values. It is not required that it do so -- code correctness is not compromised by failure to simplify
| |
| splatMap | back to summary |
|---|---|
| public boolean[] splatMap() | |
| targetRequiresCallersBinding | back to summary |
|---|---|
| public boolean targetRequiresCallersBinding() | |
| targetRequiresCallersFrame | back to summary |
|---|---|
| public boolean targetRequiresCallersFrame() | |
| toStringNonOperandArgs | back to summary |
|---|---|
| public String[] toStringNonOperandArgs() Overrides org.
| |