java.lang.Object |
↳ |
com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.compiler.EPatternMatcher |
Class Overview
IR pattern search and replace.
Current limitation: matching is limited by basic block boundaries.
Summary
[Expand]
Inherited Methods |
From class
java.lang.Object
Object
|
clone()
|
boolean
|
equals(Object arg0)
|
void
|
finalize()
|
final
Class<?>
|
getClass()
|
int
|
hashCode()
|
final
void
|
notify()
|
final
void
|
notifyAll()
|
String
|
toString()
|
final
void
|
wait(long arg0, int arg1)
|
final
void
|
wait(long arg0)
|
final
void
|
wait()
|
|
Public Constructors
Public Methods
public
Map<IEGeneric, Integer>
getIRDepthsMap
()
public
boolean
isAllowDeepAssociativity
()
public
int
searchAndReplaceAll
(Result[] aresult)
Parameters
aresult |
(optional) last successful search-and-replace |
public
int
searchAndReplaceAll
()
public
void
setAllowDeepAssociativity
(boolean allowDeepAssociativity)
Allow to modify inner expression to check alternative associativity. For example, matching
V0 * (#1 + $2)
on r0 * ((r1 + 4) + r2)
will attempt any
associativity, matching on
V0 = r0
#1 = 4
$2 = (r1 + r2)
even if (r1 + r2)
does not exists in inner expression.
public
void
setIRDepthsMap
(Map<IEGeneric, Integer> iRDepthsMap)
public
String
toString
()