ARM architecture v6 with Jazelle technology executes variable length Java bytecodes. Java bytecodes fall into two classes:
- Hardware execution
Bytecodes that perform stack-based operations.
- Software execution
Bytecodes that are too complex to execute directly in hardware are executed in software. An ARM register is used to access a table of exception handlers to handle these particular bytecodes.
A complete list of the ARM1136JF-S processor-supported Java bytecodes and their corresponding hardware or software instructions is in the Jazelle V1 Architecture Reference Manual.