OSDN Git Service

Add more "extended opcode" structure to libdex.
authorDan Bornstein <danfuzz@android.com>
Wed, 1 Dec 2010 20:30:21 +0000 (12:30 -0800)
committerDan Bornstein <danfuzz@android.com>
Wed, 1 Dec 2010 20:47:45 +0000 (12:47 -0800)
commit111221644c5b7b1d4f426d02786aeebf1addc8f6
tree31115dc6d484bd9b4877ed41e5ad3c5eb380605b
parentfe9382b46660cb240a99efb7ac772db7b2f4ab21
Add more "extended opcode" structure to libdex.

Although we don't yet generate any of the extended opcodes, this
change makes it a bit easier to add them.

In particular, we now differentiate between the raw opcode in a code
unit and an associated "packed opcode number." The packed opcode space
is densely populated in the range 0x000-0x1ff (though there will still
be a few unused slots), whereas the raw opcode values are sparse
throughout the range 0x0000-0xffff.

The OpCode enum is redefined/clarified to have packed, not sparse,
opcode values.

Change-Id: Ie3208a258648fbf044d344646f66c49ad24c31b2
dexdump/DexDump.c
libdex/DexInlines.c
libdex/InstrUtils.c
libdex/OpCode.h
opcode-gen/opcode-gen
vm/compiler/Frontend.c