aboutsummaryrefslogtreecommitdiff
path: root/vm/compiler/codegen/arm/CodegenDriver.cpp
diff options
context:
space:
mode:
authorbuzbee <buzbee@google.com>2011-05-23 10:59:33 -0700
committerbuzbee <buzbee@google.com>2011-05-23 10:59:33 -0700
commit97b22b8d41742fa84812f46d1125e9735420782a (patch)
tree4a864196cd01441032b709a7510ae8f2e48539d1 /vm/compiler/codegen/arm/CodegenDriver.cpp
parentfe108f779db4fb3bc720a92e69e58177983088c1 (diff)
Fix alt handling for Jumbo ops
The mterp alt mechanism allows us to break out of the fast interpreter loop to handle debugging, JIT trace selection and other non-standard behavior. It does this by replacing the base pointer to the instruction handlers with an alternate base that references a set of dummy handlers that first call out the dvmCheckBefore() to handle special actions before routing control to the real handlers. This mechanism was slightly broken for the Jumbo ops - which have a first opcode byte of 0xFF (Dispatch), followed by the Jumbo opcode byte. In short, when the altHandlerBase was active dvmCheckBefore() was getting called for both the dispatch opcode byte and the Jumbo byte. This change adds special ALT_OP_DISPATCH_FF handlers which skip the dvmCheckBefore() call. Change-Id: If57c298a33404cdaca7456bc8fe1159c70240bea
Diffstat (limited to 'vm/compiler/codegen/arm/CodegenDriver.cpp')
0 files changed, 0 insertions, 0 deletions