| Modifier and Type | Field and Description |
|---|---|
| private Insn | insn
|
| Access | Constructor and Description |
|---|---|
| pack-priv | NormalSsaInsn(final Insn
Rop insn to wrap insn, final SsaBasicBlock block that contains this insn block)Creates an instance. |
| Modifier and Type | Method and Description |
|---|---|
| public void | accept(SsaInsn.
non-null the visitorImplements abstract org. |
| public boolean | |
| public final void | changeOneSource(int
>=0; index of source to changespec for new source newSpec)Changes one of the insn's sources. |
| public NormalSsaInsn | clone()
Overrides org. |
| public RegisterSpec | getLocalAssignment()
Overrides org. |
| public Rop | Returns: the Rop opcode for this insnImplements abstract org. |
| public Insn | getOriginalRopInsn()
Implements abstract org. |
| public RegisterSpecList | Returns: null-ok; sources listImplements abstract org. |
| public boolean | hasSideEffect()
Implements abstract org. Todo Increase the scope of this. |
| public boolean | |
| public boolean | Returns: true if this is a move (but not a move-operand) instructionOverrides org. |
| public boolean | |
| public final void | mapSourceRegisters(RegisterMapper
new mapping mapper)Implements abstract org. |
| public final void | setNewSources(RegisterSpecList
non-null new sources list. newSources)Changes the source list of the insn. |
| public String | toHuman()
Implements org. |
| public Insn | toRopInsn()
Implements abstract org. |
| public void |
| insn | back to summary |
|---|---|
| private Insn insn
| |
| NormalSsaInsn | back to summary |
|---|---|
| pack-priv NormalSsaInsn(final Insn insn, final SsaBasicBlock block) Creates an instance.
| |
| accept | back to summary |
|---|---|
| public void accept(SsaInsn. Implements abstract org. Doc from org. Accepts a visitor. | |
| canThrow | back to summary |
|---|---|
| public boolean canThrow() Implements abstract org.
| |
| changeOneSource | back to summary |
|---|---|
| public final void changeOneSource(int index, RegisterSpec newSpec) Changes one of the insn's sources. New source should be of same type and category.
| |
| clone | back to summary |
|---|---|
| public NormalSsaInsn clone() Overrides org. Doc from org. Creates and returns a copy of this object. The precise meaning
of "copy" may depend on the class of the object. The general
intent is that, for any object will be true, and that the expression:x.clone() != x will bex.clone().getClass() == x.getClass() true, but these are not absolute requirements.
While it is typically the case that:
will bex.clone().equals(x) true, this is not an absolute requirement.
By convention, the returned object should be obtained by calling
By convention, the object returned by this method should be independent
of this object (which is being cloned). To achieve this independence,
it may be necessary to modify one or more fields of the object returned
by
| |
| getLocalAssignment | back to summary |
|---|---|
| public RegisterSpec getLocalAssignment() Overrides org. Doc from org. Gets the spec of a local variable assignment that occurs at this
instruction, or null if no local variable assignment occurs. This
may be the result register, or for
| |
| getOpcode | back to summary |
|---|---|
| public Rop getOpcode() Implements abstract org. Doc from org. Returns the Rop opcode for this insn, or null if this is a phi insn. Todo Move this up into NormalSsaInsn. | |
| getOriginalRopInsn | back to summary |
|---|---|
| public Insn getOriginalRopInsn() Implements abstract org. Doc from org. Returns the original Rop insn for this insn, or null if this is a phi insn. Todo Move this up into NormalSsaInsn. | |
| getSources | back to summary |
|---|---|
| public RegisterSpecList getSources() Implements abstract org. Like rop.Insn.getSources().
| |
| hasSideEffect | back to summary |
|---|---|
| public boolean hasSideEffect() Implements abstract org. Doc from org. Returns true if this insn is considered to have a side effect beyond that of assigning to the result reg. Todo Increase the scope of this.
| |
| isMoveException | back to summary |
|---|---|
| public boolean isMoveException() Overrides org.
| |
| isNormalMoveInsn | back to summary |
|---|---|
| public boolean isNormalMoveInsn() Overrides org.
| |
| isPhiOrMove | back to summary |
|---|---|
| public boolean isPhiOrMove() Implements abstract org.
| |
| mapSourceRegisters | back to summary |
|---|---|
| public final void mapSourceRegisters(RegisterMapper mapper) Implements abstract org. Doc from org. Maps only source registers.
| |
| setNewSources | back to summary |
|---|---|
| public final void setNewSources(RegisterSpecList newSources) Changes the source list of the insn. New source list should be the same size and consist of sources of identical types.
| |
| toHuman | back to summary |
|---|---|
| public String toHuman() Implements org. Doc from org. Return the "human" string form of this instance. This is
generally less "debuggy" than
| |
| toRopInsn | back to summary |
|---|---|
| public Insn toRopInsn() Implements abstract org. Doc from org. Transform back to ROP form. Todo Move this up into NormalSsaInsn. | |
| upgradeToLiteral | back to summary |
|---|---|
| public void upgradeToLiteral() Upgrades this insn to a version that represents the constant source literally. If the upgrade is not possible, this does nothing.
| |