SsaInsn.Visitor| Modifier and Type | Method and Description |
|---|---|
void |
accept(SsaInsn.Visitor v)
Accepts a visitor.
|
boolean |
canThrow() |
void |
changeOneSource(int index,
RegisterSpec newSpec)
Changes one of the insn's sources.
|
NormalSsaInsn |
clone() |
RegisterSpec |
getLocalAssignment()
Gets the spec of a local variable assignment that occurs at this
instruction, or null if no local variable assignment occurs.
|
Rop |
getOpcode()
Returns the Rop opcode for this insn, or null if this is a phi insn.
|
Insn |
getOriginalRopInsn()
Returns the original Rop insn for this insn, or null if this is
a phi insn.
|
RegisterSpecList |
getSources()
Like rop.Insn.getSources().
|
boolean |
hasSideEffect()
Returns true if this insn is considered to have a side effect beyond
that of assigning to the result reg.
|
boolean |
isMoveException() |
boolean |
isNormalMoveInsn() |
boolean |
isPhiOrMove() |
void |
mapSourceRegisters(RegisterMapper mapper)
Maps only source registers.
|
void |
setNewSources(RegisterSpecList newSources)
Changes the source list of the insn.
|
java.lang.String |
toHuman()
Return the "human" string form of this instance.
|
Insn |
toRopInsn()
Transform back to ROP form.
|
void |
upgradeToLiteral()
Upgrades this insn to a version that represents the constant source
literally.
|
changeResultReg, getBlock, getResult, isRegASource, isResultReg, makeFromRop, mapRegisters, setResult, setResultLocalpublic final void mapSourceRegisters(RegisterMapper mapper)
mapSourceRegisters in class SsaInsnmapper - new mappingpublic final void changeOneSource(int index,
RegisterSpec newSpec)
index - >=0; index of source to changenewSpec - spec for new sourcepublic final void setNewSources(RegisterSpecList newSources)
newSources - non-null new sources list.public NormalSsaInsn clone()
public RegisterSpecList getSources()
getSources in class SsaInsnnull-ok; sources listpublic java.lang.String toHuman()
toString().public Insn toRopInsn()
public Rop getOpcode()
SsaInsnpublic Insn getOriginalRopInsn()
getOriginalRopInsn in class SsaInsnnull-ok; Rop insn if there is one.public RegisterSpec getLocalAssignment()
mark-local insns
it may be the source.getLocalAssignment in class SsaInsnnull-ok; a local-associated register spec or nullInsn.getLocalAssignment()public void upgradeToLiteral()
Insn.withSourceLiteral()public boolean isNormalMoveInsn()
isNormalMoveInsn in class SsaInsnpublic boolean isMoveException()
isMoveException in class SsaInsnpublic boolean canThrow()
public void accept(SsaInsn.Visitor v)
public boolean isPhiOrMove()
isPhiOrMove in class SsaInsnpublic boolean hasSideEffect()
hasSideEffect in class SsaInsnCopyright © 2020. All Rights Reserved.