All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type |
Method |
Description |
void |
addSource(Op02WithProcessedDataAndRefs node) |
|
void |
addTarget(Op02WithProcessedDataAndRefs node) |
|
private static Op02WithProcessedDataAndRefs |
adjustOrdering(java.util.Map<InstrIndex,java.util.List<Op02WithProcessedDataAndRefs.ExceptionTempStatement>> insertions,
Op02WithProcessedDataAndRefs infrontOf,
ExceptionGroup exceptionGroup,
Op02WithProcessedDataAndRefs newNode) |
|
private static java.util.NavigableMap<java.lang.Integer,JavaTypeInstance> |
assignIdentsAndGetMissingMap(SSAIdentifierFactory<Slot,StackType> ssaIdentifierFactory,
Method method,
java.util.List<Op02WithProcessedDataAndRefs> statements,
BytecodeMeta bytecodeMeta,
boolean useProtoArgs) |
|
private static void |
assignSSAIdentifiers(SSAIdentifierFactory<Slot,StackType> ssaIdentifierFactory,
Method method,
DecompilerComments comments,
java.util.List<Op02WithProcessedDataAndRefs> statements,
BytecodeMeta bytecodeMeta) |
|
private static void |
assignSSAIdentifiersInner(SSAIdentifierFactory<Slot,StackType> ssaIdentifierFactory,
Method method,
java.util.List<Op02WithProcessedDataAndRefs> statements,
BytecodeMeta bytecodeMeta,
boolean useProtoArgs) |
|
private Statement |
buildInvoke(Method thisCallerMethod) |
|
private java.util.List<Expression> |
buildInvokeBootstrapArgs(MethodPrototype prototype,
MethodPrototype dynamicPrototype,
MethodHandleBehaviour bootstrapBehaviour,
BootstrapMethodInfo bootstrapMethodInfo,
ConstantPoolEntryMethodRef methodRef,
boolean showBoilerArgs,
ClassFile classFile,
DCCommonState state,
DecompilerComments comments) |
|
private Statement |
buildInvokeDynamic(ClassFile classFile,
DCCommonState dcCommonState,
java.lang.String name,
MethodPrototype dynamicPrototype,
int idx,
boolean showBoilerArgs,
DecompilerComments comments) |
|
private Statement |
buildInvokeDynamic(Method method,
DCCommonState dcCommonState,
DecompilerComments comments) |
|
private java.util.List<Expression> |
buildInvokeDynamicAltMetaFactoryArgs(MethodPrototype prototype,
MethodPrototype dynamicPrototype,
MethodHandleBehaviour bootstrapBehaviour,
BootstrapMethodInfo bootstrapMethodInfo,
ConstantPoolEntryMethodRef methodRef,
java.util.List<JavaTypeInstance> markerTypes) |
|
private java.util.List<Expression> |
buildInvokeDynamicMetaFactoryArgs(MethodPrototype prototype,
MethodPrototype dynamicPrototype,
MethodHandleBehaviour bootstrapBehaviour,
BootstrapMethodInfo bootstrapMethodInfo,
ConstantPoolEntryMethodRef methodRef) |
|
private void |
collectLocallyMutatedVariables(SSAIdentifierFactory<Slot,StackType> ssaIdentifierFactory) |
|
static java.util.List<Op03SimpleStatement> |
convertToOp03List(java.util.List<Op02WithProcessedDataAndRefs> op2list,
Method method,
VariableFactory variableFactory,
BlockIdentifierFactory blockIdentifierFactory,
DCCommonState dcCommonState,
DecompilerComments comments,
TypeHintRecovery typeHintRecovery) |
|
private static java.util.List<Op02WithProcessedDataAndRefs> |
copyBlock(java.util.List<Op02WithProcessedDataAndRefs> orig,
InstrIndex afterThis) |
|
private static java.util.Map<SSAIdent,java.util.Set<SSAIdent>> |
createReverseMap(java.util.Map<SSAIdent,java.util.Set<SSAIdent>> downMap) |
|
private Statement |
createStatement(Method method,
DecompilerComments comments,
VariableFactory variableFactory,
BlockIdentifierFactory blockIdentifierFactory,
DCCommonState dcCommonState,
TypeHintRecovery typeHintRecovery) |
|
private JavaTypeInstance |
determineDynamicGeneric(JavaTypeInstance callsiteReturn,
MethodPrototype proto,
Expression instantiated,
DCCommonState dcCommonState) |
|
static void |
discoverStorageLiveness(Method method,
DecompilerComments comments,
java.util.List<Op02WithProcessedDataAndRefs> op2list,
BytecodeMeta bytecodeMeta) |
|
Dumper |
dump(Dumper d) |
|
private static Expression |
ensureNonBool(Expression e) |
|
private static Op02WithProcessedDataAndRefs |
followNopGoto(Op02WithProcessedDataAndRefs op) |
|
private static TypedLiteral |
getBootstrapArg(ConstantPoolEntry[] bootstrapArguments,
int x,
ConstantPool cp) |
|
BytecodeLoc |
getBytecodeLoc() |
|
java.util.List<BlockIdentifier> |
getContainedInTheseBlocks() |
|
ConstantPool |
getCp() |
|
ConstantPoolEntry[] |
getCpEntries() |
|
private Expression |
getDynamicLiteral(Method method,
ConstantPoolEntryDynamicInfo cpe,
DecompilerComments comments) |
|
Pair<java.lang.Integer,java.lang.Integer> |
getIincInfo() |
|
InstrIndex |
getIndex() |
|
JVMInstr |
getInstr() |
|
private int |
getInstrArgByte(int index) |
|
private int |
getInstrArgShort(int index) |
|
private int |
getInstrArgU1(int index) |
|
private static java.util.Map<Op02WithProcessedDataAndRefs,java.util.List<Op02WithProcessedDataAndRefs>> |
getJsrsWithCommonTarget(java.util.List<Op02WithProcessedDataAndRefs> jsrs) |
|
private static int |
getLastIndex(java.util.Map<java.lang.Integer,java.lang.Integer> lutByOffset,
int op2count,
long codeLength,
int offset) |
|
private Expression |
getLiteralConstantPoolEntry(Method m,
ConstantPoolEntry cpe,
DecompilerComments comments) |
|
private Expression |
getMethodHandleLiteral(ConstantPoolEntryMethodHandle cpe) |
|
private Expression |
getMethodTypeLiteral(ConstantPoolEntryMethodType cpe) |
|
private java.util.List<Expression> |
getNStackRValuesAsExpressions(int count) |
|
private static java.util.List<java.lang.Boolean> |
getNullsByType(java.util.List<Expression> expressions) |
|
int |
getOriginalRawOffset() |
|
Pair<JavaTypeInstance,java.lang.Integer> |
getRetrieveType() |
|
private ExceptionGroup |
getSingleExceptionGroup() |
|
java.util.List<Op02WithProcessedDataAndRefs> |
getSources() |
|
private LValue |
getStackLValue(int idx) |
|
private StackValue |
getStackRValue(int idx) |
|
Pair<JavaTypeInstance,java.lang.Integer> |
getStorageType() |
|
java.util.List<Op02WithProcessedDataAndRefs> |
getTargets() |
|
private java.util.List<Expression> |
getVarArgs(JavaTypeInstance last,
ConstantPoolEntry[] bootstrapArguments) |
|
private static void |
inlineJSR(Op02WithProcessedDataAndRefs start,
java.util.Set<Op02WithProcessedDataAndRefs> nodes,
java.util.List<Op02WithProcessedDataAndRefs> ops) |
|
private static void |
inlineReplaceJSR(Op02WithProcessedDataAndRefs jsrCall,
java.util.List<Op02WithProcessedDataAndRefs> ops) |
|
static java.util.List<Op02WithProcessedDataAndRefs> |
insertExceptionBlocks(java.util.List<Op02WithProcessedDataAndRefs> op2list,
ExceptionAggregator exceptions,
java.util.Map<java.lang.Integer,java.lang.Integer> lutByOffset,
ConstantPool cp,
long codeLength,
Options options) |
|
private static boolean |
isJSR(Op02WithProcessedDataAndRefs op) |
|
private static boolean |
isRET(Op02WithProcessedDataAndRefs op) |
|
private static java.util.List<Op02WithProcessedDataAndRefs> |
justJSRs(java.util.List<Op02WithProcessedDataAndRefs> ops) |
|
private void |
mapSSASlots(java.util.Map<Pair<Slot,SSAIdent>,Ident> identmap) |
|
private Statement |
mkAssign(VariableFactory variableFactory) |
|
private Statement |
mkRetrieve(VariableFactory variableFactory) |
|
void |
nop() |
|
static DecompilerComment |
populateStackInfo(java.util.List<Op02WithProcessedDataAndRefs> op2list,
Method method) |
|
private void |
populateStackInfo(StackSim stackSim,
Method method,
java.util.Set<DecompilerComment> comments,
java.util.LinkedList<Pair<StackSim,Op02WithProcessedDataAndRefs>> next) |
|
static boolean |
processJSR(java.util.List<Op02WithProcessedDataAndRefs> ops) |
|
private static void |
processJSRs(java.util.List<Op02WithProcessedDataAndRefs> jsrs,
java.util.List<Op02WithProcessedDataAndRefs> ops) |
|
void |
removeSource(Op02WithProcessedDataAndRefs oldSource) |
|
private void |
removeTarget(Op02WithProcessedDataAndRefs node) |
|
private static void |
removeUnusedSSAIdentifiers(SSAIdentifierFactory<Slot,StackType> ssaIdentifierFactory,
Method method,
java.util.List<Op02WithProcessedDataAndRefs> op2list) |
|
static void |
replace(Op02WithProcessedDataAndRefs oldOp,
Op02WithProcessedDataAndRefs newOp) |
|
void |
replaceInstr(JVMInstr newInstr) |
|
void |
replaceSource(Op02WithProcessedDataAndRefs oldSource,
Op02WithProcessedDataAndRefs newSource) |
|
void |
replaceTarget(Op02WithProcessedDataAndRefs oldTarget,
Op02WithProcessedDataAndRefs newTarget) |
|
private void |
resetStackInfo() |
|
void |
setIndex(InstrIndex index) |
|
private static boolean |
SimulateJSR(Op02WithProcessedDataAndRefs start,
java.util.List<Op02WithProcessedDataAndRefs> ops) |
|
private static void |
tidyMultipleInsertionIdentifiers(java.util.Collection<java.util.List<Op02WithProcessedDataAndRefs.ExceptionTempStatement>> etsList) |
|
private static void |
tieUpRelations(java.util.List<Op02WithProcessedDataAndRefs> out,
java.util.List<Op02WithProcessedDataAndRefs> in,
java.util.Map<Op02WithProcessedDataAndRefs,Op02WithProcessedDataAndRefs> map) |
|
java.lang.String |
toString() |
|
static void |
unlinkUnreachable(java.util.List<Op02WithProcessedDataAndRefs> op2list) |
|