Байт-коды dalvik расширенной ширины отсутствуют на Jellybean


Когда появились микросхемы, было введено несколько новых байткодов расширенной ширины. Большинство из них предназначались для инструкций по поддержке Jumbo ID. Вот некоторые из этих новых инструкций, взятых из моего ics / dalvik/opcode-gen / bytecode.txt:

#
# Extended-width opcodes
#

op 00ff const-class/jumbo           41c  y type-ref      continue|throw
op 01ff check-cast/jumbo            41c  n type-ref      continue|throw
op 02ff instance-of/jumbo           52c  y type-ref      continue|throw
op 03ff new-instance/jumbo          41c  y type-ref      continue|throw
op 04ff new-array/jumbo             52c  y type-ref      continue|throw
op 05ff filled-new-array/jumbo      5rc  n type-ref      continue|throw
op 06ff iget/jumbo                  52c  y field-ref     continue|throw
...
Однако в коде JB я не могу найти никаких ссылок на эти новые байт-коды. В моей желеобразной версии байт-кодов.txt, последний код операции заканчивается на 0xfe:
op   fc +iput-object-volatile       22c  n field-ref     optimized|continue|throw
op   fd +sget-object-volatile       21c  y field-ref     optimized|continue|throw
op   fe +sput-object-volatile       21c  n field-ref     optimized|continue|throw

# unused: op ff

Разве эти новые инструкции не поддерживаются на JellyBean?

Кроме того, я даже не могу найти оригинальную документацию по байт-коду dalvik в jellybean. Это список dir моей папки dalvik / docs:
$ ls -a dalvik/docs | cat
.
..
dalvik-constraints.css
dalvik-constraints.html
debugger.html
debugmon.html
dexopt.html
embedded-vm-control.html
heap-profiling.html
hello-world.html
java-bytecode.css
java-bytecode.html
java-constraints.css
java-constraints.html
porting-guide.html
porting-proto.c.txt
prettify.css
prettify.js
verifier.html

Или, может быть, я просто скачал не из той ветки? Я использую ветку jb-4.1.1_r4.

1 3

1 ответ:

Я реализовал dx часть этих новых инструкций перед тем, как покинуть Google, но во время выполнения их еще не было сделано. Я думаю, что никто никогда не заканчивал работу, но оставил спекулянтов в покое.