| Package | Description |
|---|---|
| com.android.dx.cf.code |
Implementation of classes having to do with Java simulation, such as
is needed for verification or stack-to-register conversion.
|
| com.android.dx.rop.code |
Classes relating to a register-based opcode system.
|
| com.android.dx.rop.cst |
Interfaces and implementation of things related to the constant pool.
|
| com.android.dx.rop.type |
Implementation of classes that represent types (classes or primitives).
|
| com.android.dx.ssa |
| Modifier and Type | Class and Description |
|---|---|
class |
ReturnAddress
Representation of a subroutine return address.
|
| Modifier and Type | Method and Description |
|---|---|
protected TypeBearer |
BaseMachine.arg(int n)
Gets the
nth primary argument. |
TypeBearer |
LocalsArraySet.get(int idx)
Gets the type stored at the given local index, only succeeding if
the given local contains a valid type (though it is allowed to
be an uninitialized instance).
|
abstract TypeBearer |
LocalsArray.get(int idx)
Gets the type stored at the given local index, only succeeding if
the given local contains a valid type (though it is allowed to
be an uninitialized instance).
|
TypeBearer |
OneLocalsArray.get(int idx)
Gets the type stored at the given local index, only succeeding if
the given local contains a valid type (though it is allowed to
be an uninitialized instance).
|
TypeBearer |
LocalsArraySet.getCategory1(int idx)
Gets the type stored at the given local index, which is expected
to be an initialized category-1 value.
|
abstract TypeBearer |
LocalsArray.getCategory1(int idx)
Gets the type stored at the given local index, which is expected
to be an initialized category-1 value.
|
TypeBearer |
OneLocalsArray.getCategory1(int idx)
Gets the type stored at the given local index, which is expected
to be an initialized category-1 value.
|
TypeBearer |
LocalsArraySet.getCategory2(int idx)
Gets the type stored at the given local index, which is expected
to be a category-2 value.
|
abstract TypeBearer |
LocalsArray.getCategory2(int idx)
Gets the type stored at the given local index, which is expected
to be a category-2 value.
|
TypeBearer |
OneLocalsArray.getCategory2(int idx)
Gets the type stored at the given local index, which is expected
to be a category-2 value.
|
TypeBearer |
ReturnAddress.getFrameType()
Gets the frame type corresponding to this type.
|
TypeBearer |
LocalsArraySet.getOrNull(int idx)
Gets the type stored at the given local index, or
null
if the given local is uninitialized / invalid. |
abstract TypeBearer |
LocalsArray.getOrNull(int idx)
Gets the type stored at the given local index, or
null
if the given local is uninitialized / invalid. |
TypeBearer |
OneLocalsArray.getOrNull(int idx)
Gets the type stored at the given local index, or
null
if the given local is uninitialized / invalid. |
static TypeBearer |
Merger.mergeType(TypeBearer ft1,
TypeBearer ft2)
Merges two frame types.
|
TypeBearer |
ExecutionStack.peek(int n)
Peeks at the
nth element down from the top of the stack. |
TypeBearer |
ExecutionStack.pop()
Pops the top element off of the stack.
|
protected TypeBearer |
BaseMachine.result(int n)
Gets the
nth result value. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
BaseMachine.addResult(TypeBearer result)
Adds an additional element to the list of results.
|
void |
ExecutionStack.change(int n,
TypeBearer type)
Changes an element already on a stack.
|
static boolean |
Merger.isPossiblyAssignableFrom(TypeBearer supertypeBearer,
TypeBearer subtypeBearer)
Returns whether the given supertype is possibly assignable from
the given subtype.
|
static TypeBearer |
Merger.mergeType(TypeBearer ft1,
TypeBearer ft2)
Merges two frame types.
|
void |
ExecutionStack.push(TypeBearer type)
Pushes a value of the given type onto the stack.
|
void |
LocalsArraySet.set(int idx,
TypeBearer type)
Sets the type stored at the given local index.
|
abstract void |
LocalsArray.set(int idx,
TypeBearer type)
Sets the type stored at the given local index.
|
void |
OneLocalsArray.set(int idx,
TypeBearer type)
Sets the type stored at the given local index.
|
protected void |
BaseMachine.setResult(TypeBearer result)
Sets the results list to be the given single value.
|
static void |
BaseMachine.throwLocalMismatch(TypeBearer found,
TypeBearer local)
Throws an exception that indicates a mismatch in local variable
types.
|
| Modifier and Type | Class and Description |
|---|---|
class |
RegisterSpec
Combination of a register number and a type, used as the sources and
destinations of register-based operations.
|
| Modifier and Type | Method and Description |
|---|---|
TypeBearer |
RegisterSpec.getFrameType()
Gets the frame type corresponding to this type.
|
TypeBearer |
RegisterSpec.getTypeBearer()
Gets the type (or actual value) which is loaded from or stored
to the register associated with this instance.
|
| Modifier and Type | Method and Description |
|---|---|
static RegisterSpec |
RegisterSpec.make(int reg,
TypeBearer type)
Returns an instance for the given register number and type, with
no variable info.
|
static RegisterSpec |
RegisterSpec.make(int reg,
TypeBearer type,
LocalItem local)
Returns an instance for the given register number, type, and
variable info.
|
static RegisterSpec |
RegisterSpec.makeLocalOptional(int reg,
TypeBearer type,
LocalItem local)
Returns an instance for the given register number, type, and
variable info.
|
static Rop |
Rops.opAget(TypeBearer type)
Returns the appropriate
aget rop for the given type. |
static Rop |
Rops.opAput(TypeBearer type)
Returns the appropriate
aput rop for the given type. |
static Rop |
Rops.opCmpg(TypeBearer type)
Returns the appropriate
cmpg rop for the given type. |
static Rop |
Rops.opCmpl(TypeBearer type)
Returns the appropriate
cmpl rop for the given type. |
static Rop |
Rops.opConst(TypeBearer type)
Returns the appropriate
const rop for the given
type. |
static Rop |
Rops.opConv(TypeBearer dest,
TypeBearer source)
Returns the appropriate
conv rop for the given types. |
static Rop |
Rops.opFilledNewArray(TypeBearer arrayType,
int count)
Returns the appropriate
filled-new-array rop for the given
type. |
static Rop |
Rops.opGetField(TypeBearer type)
Returns the appropriate
get-field rop for the given
type. |
static Rop |
Rops.opGetStatic(TypeBearer type)
Returns the appropriate
get-static rop for the given
type. |
static Rop |
Rops.opMarkLocal(TypeBearer type)
Returns the appropriate
mark-local rop for the given type. |
static Rop |
Rops.opMove(TypeBearer type)
Returns the appropriate
move rop for the given type. |
static Rop |
Rops.opMoveException(TypeBearer type)
Returns the appropriate
move-exception rop for the
given type. |
static Rop |
Rops.opMoveParam(TypeBearer type)
Returns the appropriate
move-param rop for the
given type. |
static Rop |
Rops.opMoveResult(TypeBearer type)
Returns the appropriate
move-result rop for the
given type. |
static Rop |
Rops.opMoveResultPseudo(TypeBearer type)
Returns the appropriate
move-result-pseudo rop for the
given type. |
static Rop |
Rops.opNeg(TypeBearer type)
Returns the appropriate
neg rop for the given type. |
static Rop |
Rops.opNewArray(TypeBearer arrayType)
Returns the appropriate
new-array rop for the given
type. |
static Rop |
Rops.opNot(TypeBearer type)
Returns the appropriate
not rop for the given type. |
static Rop |
Rops.opPutField(TypeBearer type)
Returns the appropriate
put-field rop for the given
type. |
static Rop |
Rops.opPutStatic(TypeBearer type)
Returns the appropriate
put-static rop for the given
type. |
static Rop |
Rops.opReturn(TypeBearer type)
Returns the appropriate
return rop for the given type. |
static Rop |
Rops.ropFor(int opcode,
TypeBearer dest,
TypeList sources,
Constant cst)
Returns the appropriate rop for the given opcode, destination,
and sources.
|
RegisterSpec |
RegisterSpec.withType(TypeBearer newType)
Returns an instance that is identical to this one, except that
the type is replaced by the given one.
|
| Modifier and Type | Class and Description |
|---|---|
class |
CstBaseMethodRef
Base class for constants of "methodish" type.
|
class |
CstBoolean
Constants of type
boolean. |
class |
CstByte
Constants of type
byte. |
class |
CstChar
Constants of type
char. |
class |
CstDouble
Constants of type
CONSTANT_Double_info. |
class |
CstEnumRef
Constant type to represent a reference to a particular constant
value of an enumerated type.
|
class |
CstFieldRef
Constants of type
CONSTANT_Fieldref_info. |
class |
CstFloat
Constants of type
CONSTANT_Float_info. |
class |
CstInteger
Constants of type
CONSTANT_Integer_info. |
class |
CstInterfaceMethodRef
Constants of type
CONSTANT_InterfaceMethodref_info. |
class |
CstKnownNull
Constant type to represent a known-
null value. |
class |
CstLiteral32
Constants which are literal 32-bit values of some sort.
|
class |
CstLiteral64
Constants which are literal 64-bit values of some sort.
|
class |
CstLiteralBits
Constants which are literal bitwise values of some sort.
|
class |
CstLong
Constants of type
CONSTANT_Long_info. |
class |
CstMemberRef
Constants of type
CONSTANT_*ref_info. |
class |
CstMethodHandle
Constants of type
MethodHandle. |
class |
CstMethodRef
Constants of type
CONSTANT_Methodref_info. |
class |
CstProtoRef
Prototype reference.
|
class |
CstShort
Constants of type
short. |
class |
CstString
Constants of type
CONSTANT_Utf8_info or CONSTANT_String_info. |
class |
CstType
Constants that represent an arbitrary type (reference or primitive).
|
class |
TypedConstant
Base class for constants which implement
TypeBearer. |
| Modifier and Type | Method and Description |
|---|---|
TypeBearer |
TypedConstant.getFrameType()
Gets the frame type corresponding to this type.
|
| Modifier and Type | Class and Description |
|---|---|
class |
Type
Representation of a value type, such as may appear in a field, in a
local, on a stack, or in a method descriptor.
|
| Modifier and Type | Method and Description |
|---|---|
TypeBearer |
TypeBearer.getFrameType()
Gets the frame type corresponding to this type.
|
| Modifier and Type | Method and Description |
|---|---|
void |
PhiInsn.changeResultType(TypeBearer type,
LocalItem local)
Changes the result type.
|
Copyright © 2020. All Rights Reserved.