summaryrefslogtreecommitdiffstats
path: root/vm/mterp
diff options
context:
space:
mode:
authorLalit Maganti <lalitmaganti@gmail.com>2012-07-12 00:40:26 -0700
committerSteve Kondik <shade@chemlab.org>2013-07-24 12:59:40 -0700
commit1a081c433c08eadcac738e03c04c75c4a028a29a (patch)
treed27faa991f43497c461a4149b4444deabe76106e /vm/mterp
parent2a2b9973cbcc3e186aae16f91cf7637c0ccc0b28 (diff)
downloadandroid_dalvik-1a081c433c08eadcac738e03c04c75c4a028a29a.tar.gz
android_dalvik-1a081c433c08eadcac738e03c04c75c4a028a29a.tar.bz2
android_dalvik-1a081c433c08eadcac738e03c04c75c4a028a29a.zip
dalvik: Update ARMv6 code to compile and bring in line with ARMv5
Change-Id: I2764002422ade74db602cc2292108ed67241f0be
Diffstat (limited to 'vm/mterp')
-rw-r--r--vm/mterp/config-armv6-vfp2
-rw-r--r--vm/mterp/config-armv6j1
-rw-r--r--vm/mterp/out/InterpAsm-armv6-vfp.S10622
-rw-r--r--vm/mterp/out/InterpAsm-armv6j.S10622
-rw-r--r--vm/mterp/out/InterpC-armv6-vfp.cpp139
-rw-r--r--vm/mterp/out/InterpC-armv6j.cpp139
6 files changed, 50 insertions, 21475 deletions
diff --git a/vm/mterp/config-armv6-vfp b/vm/mterp/config-armv6-vfp
index 2cdcc31e9..d47b9e50d 100644
--- a/vm/mterp/config-armv6-vfp
+++ b/vm/mterp/config-armv6-vfp
@@ -74,8 +74,6 @@ op-start armv5te
op OP_SUB_FLOAT arm-vfp
op OP_SUB_FLOAT_2ADDR arm-vfp
- alt OP_DISPATCH_FF armv5te
-
# use trivial integer operation
#op OP_NEG_DOUBLE armv5te
#op OP_NEG_FLOAT armv5te
diff --git a/vm/mterp/config-armv6j b/vm/mterp/config-armv6j
index 3718c0aa6..621578022 100644
--- a/vm/mterp/config-armv6j
+++ b/vm/mterp/config-armv6j
@@ -44,7 +44,6 @@ import armv5te/entry.S
# opcode list; argument to op-start is default directory
op-start armv5te
#op OP_FILL_ARRAY_DATA c
- alt OP_DISPATCH_FF armv5te
# use trivial integer operation
op OP_NEG_DOUBLE armv5te
diff --git a/vm/mterp/out/InterpAsm-armv6-vfp.S b/vm/mterp/out/InterpAsm-armv6-vfp.S
index 6847f28c4..1cd22409a 100644
--- a/vm/mterp/out/InterpAsm-armv6-vfp.S
+++ b/vm/mterp/out/InterpAsm-armv6-vfp.S
@@ -7700,3126 +7700,12 @@ dalvik_inst:
/* ------------------------------ */
.balign 64
-.L_OP_DISPATCH_FF: /* 0xff */
-/* File: armv5te/OP_DISPATCH_FF.S */
- mov ip, rINST, lsr #8 @ ip<- extended opcode
- add ip, ip, #256 @ add offset for extended opcodes
- GOTO_OPCODE(ip) @ go to proper extended handler
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_CONST_CLASS_JUMBO: /* 0x100 */
-/* File: armv5te/OP_CONST_CLASS_JUMBO.S */
- /* const-class/jumbo vBBBB, Class@AAAAAAAA */
- FETCH(r0, 1) @ r0<- aaaa (lo)
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<-self>methodClassDex
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResClasses] @ r2<- dvmDex->pResClasses
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- FETCH(r9, 3) @ r9<- BBBB
- ldr r0, [r2, r1, lsl #2] @ r0<- pResClasses[AAAAaaaa]
- cmp r0, #0 @ not yet resolved?
- beq .LOP_CONST_CLASS_JUMBO_resolve
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_CHECK_CAST_JUMBO: /* 0x101 */
-/* File: armv5te/OP_CHECK_CAST_JUMBO.S */
- /*
- * Check to see if a cast from one class to another is allowed.
- */
- /* check-cast/jumbo vBBBB, class@AAAAAAAA */
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r3, 3) @ r3<- BBBB
- orr r2, r0, r2, lsl #16 @ r2<- AAAAaaaa
- GET_VREG(r9, r3) @ r9<- object
- ldr r0, [rSELF, #offThread_methodClassDex] @ r0<- pDvmDex
- cmp r9, #0 @ is object null?
- ldr r0, [r0, #offDvmDex_pResClasses] @ r0<- pDvmDex->pResClasses
- beq .LOP_CHECK_CAST_JUMBO_okay @ null obj, cast always succeeds
- ldr r1, [r0, r2, lsl #2] @ r1<- resolved class
- ldr r0, [r9, #offObject_clazz] @ r0<- obj->clazz
- cmp r1, #0 @ have we resolved this before?
- beq .LOP_CHECK_CAST_JUMBO_resolve @ not resolved, do it now
-.LOP_CHECK_CAST_JUMBO_resolved:
- cmp r0, r1 @ same class (trivial success)?
- bne .LOP_CHECK_CAST_JUMBO_fullcheck @ no, do full check
- b .LOP_CHECK_CAST_JUMBO_okay @ yes, finish up
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INSTANCE_OF_JUMBO: /* 0x102 */
-/* File: armv5te/OP_INSTANCE_OF_JUMBO.S */
- /*
- * Check to see if an object reference is an instance of a class.
- *
- * Most common situation is a non-null object, being compared against
- * an already-resolved class.
- *
- * TODO: convert most of this into a common subroutine, shared with
- * OP_INSTANCE_OF.S.
- */
- /* instance-of/jumbo vBBBB, vCCCC, class@AAAAAAAA */
- FETCH(r3, 4) @ r3<- vCCCC
- FETCH(r9, 3) @ r9<- vBBBB
- GET_VREG(r0, r3) @ r0<- vCCCC (object)
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- pDvmDex
- cmp r0, #0 @ is object null?
- beq .LOP_INSTANCE_OF_JUMBO_store @ null obj, not an instance, store r0
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r3, 2) @ r3<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResClasses] @ r2<- pDvmDex->pResClasses
- orr r3, r1, r3, lsl #16 @ r3<- AAAAaaaa
- ldr r1, [r2, r3, lsl #2] @ r1<- resolved class
- ldr r0, [r0, #offObject_clazz] @ r0<- obj->clazz
- cmp r1, #0 @ have we resolved this before?
- beq .LOP_INSTANCE_OF_JUMBO_resolve @ not resolved, do it now
- b .LOP_INSTANCE_OF_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_NEW_INSTANCE_JUMBO: /* 0x103 */
-/* File: armv5te/OP_NEW_INSTANCE_JUMBO.S */
- /*
- * Create a new instance of a class.
- */
- /* new-instance/jumbo vBBBB, class@AAAAAAAA */
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
-#if defined(WITH_JIT)
- add r10, r3, r1, lsl #2 @ r10<- &resolved_class
-#endif
- EXPORT_PC() @ req'd for init, resolve, alloc
- cmp r0, #0 @ already resolved?
- beq .LOP_NEW_INSTANCE_JUMBO_resolve @ no, resolve it now
-.LOP_NEW_INSTANCE_JUMBO_resolved: @ r0=class
- ldrb r1, [r0, #offClassObject_status] @ r1<- ClassStatus enum
- cmp r1, #CLASS_INITIALIZED @ has class been initialized?
- bne .LOP_NEW_INSTANCE_JUMBO_needinit @ no, init class now
-.LOP_NEW_INSTANCE_JUMBO_initialized: @ r0=class
- mov r1, #ALLOC_DONT_TRACK @ flags for alloc call
- bl dvmAllocObject @ r0<- new object
- b .LOP_NEW_INSTANCE_JUMBO_finish @ continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_NEW_ARRAY_JUMBO: /* 0x104 */
-/* File: armv5te/OP_NEW_ARRAY_JUMBO.S */
- /*
- * Allocate an array of objects, specified with the array class
- * and a count.
- *
- * The verifier guarantees that this is an array class, so we don't
- * check for it here.
- */
- /* new-array/jumbo vBBBB, vCCCC, class@AAAAAAAA */
- FETCH(r2, 1) @ r2<- aaaa (lo)
- FETCH(r3, 2) @ r3<- AAAA (hi)
- FETCH(r0, 4) @ r0<- vCCCC
- orr r2, r2, r3, lsl #16 @ r2<- AAAAaaaa
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- GET_VREG(r1, r0) @ r1<- vCCCC (array length)
- ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
- cmp r1, #0 @ check length
- ldr r0, [r3, r2, lsl #2] @ r0<- resolved class
- bmi common_errNegativeArraySize @ negative length, bail - len in r1
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ req'd for resolve, alloc
- bne .LOP_NEW_ARRAY_JUMBO_finish @ resolved, continue
- b .LOP_NEW_ARRAY_JUMBO_resolve @ do resolve now
-
-/* ------------------------------ */
- .balign 64
-.L_OP_FILLED_NEW_ARRAY_JUMBO: /* 0x105 */
-/* File: armv5te/OP_FILLED_NEW_ARRAY_JUMBO.S */
- /*
- * Create a new array with elements filled from registers.
- *
- * TODO: convert most of this into a common subroutine, shared with
- * OP_FILLED_NEW_ARRAY.S.
- */
- /* filled-new-array/jumbo {vCCCC..v(CCCC+BBBB-1)}, type@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
- EXPORT_PC() @ need for resolve and alloc
- cmp r0, #0 @ already resolved?
- bne .LOP_FILLED_NEW_ARRAY_JUMBO_continue @ yes, continue on
-8: ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- call(clazz, ref)
- cmp r0, #0 @ got null?
- beq common_exceptionThrown @ yes, handle exception
- b .LOP_FILLED_NEW_ARRAY_JUMBO_continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_JUMBO: /* 0x106 */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_WIDE_JUMBO: /* 0x107 */
-/* File: armv5te/OP_IGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit instance field get.
- */
- /* iget-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_WIDE_JUMBO_finish @ no, already resolved
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_WIDE_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_OBJECT_JUMBO: /* 0x108 */
-/* File: armv5te/OP_IGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_OBJECT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_OBJECT_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_BOOLEAN_JUMBO: /* 0x109 */
-/* File: armv5te/OP_IGET_BOOLEAN_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrb", "sqnum":"1" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_BOOLEAN_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_BOOLEAN_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_BYTE_JUMBO: /* 0x10a */
-/* File: armv5te/OP_IGET_BYTE_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrsb", "sqnum":"2" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_BYTE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_BYTE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_CHAR_JUMBO: /* 0x10b */
-/* File: armv5te/OP_IGET_CHAR_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrh", "sqnum":"3" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_CHAR_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_CHAR_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_SHORT_JUMBO: /* 0x10c */
-/* File: armv5te/OP_IGET_SHORT_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrsh", "sqnum":"4" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_SHORT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_SHORT_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_JUMBO: /* 0x10d */
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_WIDE_JUMBO: /* 0x10e */
-/* File: armv5te/OP_IPUT_WIDE_JUMBO.S */
- /* iput-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[B], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_WIDE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_WIDE_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_OBJECT_JUMBO: /* 0x10f */
-/* File: armv5te/OP_IPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- */
- /* iput-object/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_OBJECT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_OBJECT_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_BOOLEAN_JUMBO: /* 0x110 */
-/* File: armv5te/OP_IPUT_BOOLEAN_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strb", "sqnum":"1" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_BOOLEAN_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_BOOLEAN_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_BYTE_JUMBO: /* 0x111 */
-/* File: armv5te/OP_IPUT_BYTE_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strb", "sqnum":"2" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_BYTE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_BYTE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_CHAR_JUMBO: /* 0x112 */
-/* File: armv5te/OP_IPUT_CHAR_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strh", "sqnum":"3" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_CHAR_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_CHAR_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_SHORT_JUMBO: /* 0x113 */
-/* File: armv5te/OP_IPUT_SHORT_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strh", "sqnum":"4" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_SHORT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_SHORT_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_JUMBO: /* 0x114 */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_WIDE_JUMBO: /* 0x115 */
-/* File: armv5te/OP_SGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SGET handler.
- */
- /* sget-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResFields] @ r2<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_WIDE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_WIDE_JUMBO_finish:
- FETCH(r9, 3) @ r9<- BBBB
- .if 0
- add r0, r0, #offStaticField_value @ r0<- pointer to data
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r0, #offStaticField_value] @ r0/r1<- field value (aligned)
- .endif
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- stmia r9, {r0-r1} @ vBBBB/vBBBB+1<- r0/r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_OBJECT_JUMBO: /* 0x116 */
-/* File: armv5te/OP_SGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_OBJECT_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_OBJECT_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_BOOLEAN_JUMBO: /* 0x117 */
-/* File: armv5te/OP_SGET_BOOLEAN_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_BOOLEAN_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_BOOLEAN_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_BYTE_JUMBO: /* 0x118 */
-/* File: armv5te/OP_SGET_BYTE_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_BYTE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_BYTE_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_CHAR_JUMBO: /* 0x119 */
-/* File: armv5te/OP_SGET_CHAR_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_CHAR_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_CHAR_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_SHORT_JUMBO: /* 0x11a */
-/* File: armv5te/OP_SGET_SHORT_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_SHORT_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_SHORT_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_JUMBO: /* 0x11b */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_WIDE_JUMBO: /* 0x11c */
-/* File: armv5te/OP_SPUT_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SPUT handler.
- */
- /* sput-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r0, [rSELF, #offThread_methodClassDex] @ r0<- DvmDex
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- ldr r10, [r0, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- FETCH(r9, 3) @ r9<- BBBB
- ldr r2, [r10, r1, lsl #2] @ r2<- resolved StaticField ptr
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- cmp r2, #0 @ is resolved entry null?
- beq .LOP_SPUT_WIDE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_WIDE_JUMBO_finish: @ field ptr in r2, BBBB in r9
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- ldmia r9, {r0-r1} @ r0/r1<- vBBBB/vBBBB+1
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 0
- add r2, r2, #offStaticField_value @ r2<- pointer to data
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r2, #offStaticField_value] @ field<- vBBBB/vBBBB+1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_OBJECT_JUMBO: /* 0x11d */
-/* File: armv5te/OP_SPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler for objects
- */
- /* sput-object/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_OBJECT_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_OBJECT_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- ldr r9, [r0, #offField_clazz] @ r9<- field->clazz
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- b .LOP_SPUT_OBJECT_JUMBO_end
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_BOOLEAN_JUMBO: /* 0x11e */
-/* File: armv5te/OP_SPUT_BOOLEAN_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_BOOLEAN_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_BOOLEAN_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_BYTE_JUMBO: /* 0x11f */
-/* File: armv5te/OP_SPUT_BYTE_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_BYTE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_BYTE_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_CHAR_JUMBO: /* 0x120 */
-/* File: armv5te/OP_SPUT_CHAR_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_CHAR_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_CHAR_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_SHORT_JUMBO: /* 0x121 */
-/* File: armv5te/OP_SPUT_SHORT_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_SHORT_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_SHORT_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_VIRTUAL_JUMBO: /* 0x122 */
-/* File: armv5te/OP_INVOKE_VIRTUAL_JUMBO.S */
- /*
- * Handle a virtual method call.
- */
- /* invoke-virtual/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ must export for invoke
- bne .LOP_INVOKE_VIRTUAL_JUMBO_continue @ yes, continue on
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- mov r2, #METHOD_VIRTUAL @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
- bne .LOP_INVOKE_VIRTUAL_JUMBO_continue @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_SUPER_JUMBO: /* 0x123 */
-/* File: armv5te/OP_INVOKE_SUPER_JUMBO.S */
- /*
- * Handle a "super" method call.
- */
- /* invoke-super/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- FETCH(r10, 4) @ r10<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- GET_VREG(r9, r10) @ r9<- "this" ptr
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
- cmp r9, #0 @ null "this"?
- ldr r10, [rSELF, #offThread_method] @ r10<- current method
- beq common_errNullObject @ null "this", throw exception
- cmp r0, #0 @ already resolved?
- ldr r10, [r10, #offMethod_clazz] @ r10<- method->clazz
- EXPORT_PC() @ must export for invoke
- bne .LOP_INVOKE_SUPER_JUMBO_continue @ resolved, continue on
- b .LOP_INVOKE_SUPER_JUMBO_resolve @ do resolve now
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_DIRECT_JUMBO: /* 0x124 */
-/* File: armv5te/OP_INVOKE_DIRECT_JUMBO.S */
- /*
- * Handle a direct method call.
- *
- * (We could defer the "is 'this' pointer null" test to the common
- * method invocation code, and use a flag to indicate that static
- * calls don't count. If we do this as part of copying the arguments
- * out we could avoiding loading the first arg twice.)
- *
- */
- /* invoke-direct/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- FETCH(r10, 4) @ r10<- CCCC
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ must export for invoke
- GET_VREG(r9, r10) @ r9<- "this" ptr
- beq .LOP_INVOKE_DIRECT_JUMBO_resolve @ not resolved, do it now
-.LOP_INVOKE_DIRECT_JUMBO_finish:
- cmp r9, #0 @ null "this" ref?
- bne common_invokeMethodJumbo @ (r0=method, r9="this")
- b common_errNullObject @ yes, throw exception
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_STATIC_JUMBO: /* 0x125 */
-/* File: armv5te/OP_INVOKE_STATIC_JUMBO.S */
- /*
- * Handle a static method call.
- */
- /* invoke-static/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
-#if defined(WITH_JIT)
- add r10, r3, r1, lsl #2 @ r10<- &resolved_methodToCall
-#endif
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ must export for invoke
- bne common_invokeMethodJumboNoThis @ (r0=method)
- b .LOP_INVOKE_STATIC_JUMBO_resolve
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_INTERFACE_JUMBO: /* 0x126 */
-/* File: armv5te/OP_INVOKE_INTERFACE_JUMBO.S */
- /*
- * Handle an interface method call.
- */
- /* invoke-interface/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- FETCH(r2, 4) @ r2<- CCCC
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- EXPORT_PC() @ must export for invoke
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- GET_VREG(r9, r2) @ r9<- first arg ("this")
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- methodClassDex
- cmp r9, #0 @ null obj?
- ldr r2, [rSELF, #offThread_method] @ r2<- method
- beq common_errNullObject @ yes, fail
- ldr r0, [r9, #offObject_clazz] @ r0<- thisPtr->clazz
- bl dvmFindInterfaceMethodInCache @ r0<- call(class, ref, method, dex)
- cmp r0, #0 @ failed?
- beq common_exceptionThrown @ yes, handle exception
- b common_invokeMethodJumbo @ (r0=method, r9="this")
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_27FF: /* 0x127 */
-/* File: armv5te/OP_UNUSED_27FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_28FF: /* 0x128 */
-/* File: armv5te/OP_UNUSED_28FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_29FF: /* 0x129 */
-/* File: armv5te/OP_UNUSED_29FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2AFF: /* 0x12a */
-/* File: armv5te/OP_UNUSED_2AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2BFF: /* 0x12b */
-/* File: armv5te/OP_UNUSED_2BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2CFF: /* 0x12c */
-/* File: armv5te/OP_UNUSED_2CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2DFF: /* 0x12d */
-/* File: armv5te/OP_UNUSED_2DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2EFF: /* 0x12e */
-/* File: armv5te/OP_UNUSED_2EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2FFF: /* 0x12f */
-/* File: armv5te/OP_UNUSED_2FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_30FF: /* 0x130 */
-/* File: armv5te/OP_UNUSED_30FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_31FF: /* 0x131 */
-/* File: armv5te/OP_UNUSED_31FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_32FF: /* 0x132 */
-/* File: armv5te/OP_UNUSED_32FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_33FF: /* 0x133 */
-/* File: armv5te/OP_UNUSED_33FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_34FF: /* 0x134 */
-/* File: armv5te/OP_UNUSED_34FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_35FF: /* 0x135 */
-/* File: armv5te/OP_UNUSED_35FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_36FF: /* 0x136 */
-/* File: armv5te/OP_UNUSED_36FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_37FF: /* 0x137 */
-/* File: armv5te/OP_UNUSED_37FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_38FF: /* 0x138 */
-/* File: armv5te/OP_UNUSED_38FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_39FF: /* 0x139 */
-/* File: armv5te/OP_UNUSED_39FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3AFF: /* 0x13a */
-/* File: armv5te/OP_UNUSED_3AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3BFF: /* 0x13b */
-/* File: armv5te/OP_UNUSED_3BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3CFF: /* 0x13c */
-/* File: armv5te/OP_UNUSED_3CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3DFF: /* 0x13d */
-/* File: armv5te/OP_UNUSED_3DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3EFF: /* 0x13e */
-/* File: armv5te/OP_UNUSED_3EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3FFF: /* 0x13f */
-/* File: armv5te/OP_UNUSED_3FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_40FF: /* 0x140 */
-/* File: armv5te/OP_UNUSED_40FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_41FF: /* 0x141 */
-/* File: armv5te/OP_UNUSED_41FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_42FF: /* 0x142 */
-/* File: armv5te/OP_UNUSED_42FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_43FF: /* 0x143 */
-/* File: armv5te/OP_UNUSED_43FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_44FF: /* 0x144 */
-/* File: armv5te/OP_UNUSED_44FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_45FF: /* 0x145 */
-/* File: armv5te/OP_UNUSED_45FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_46FF: /* 0x146 */
-/* File: armv5te/OP_UNUSED_46FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_47FF: /* 0x147 */
-/* File: armv5te/OP_UNUSED_47FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_48FF: /* 0x148 */
-/* File: armv5te/OP_UNUSED_48FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_49FF: /* 0x149 */
-/* File: armv5te/OP_UNUSED_49FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4AFF: /* 0x14a */
-/* File: armv5te/OP_UNUSED_4AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4BFF: /* 0x14b */
-/* File: armv5te/OP_UNUSED_4BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4CFF: /* 0x14c */
-/* File: armv5te/OP_UNUSED_4CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4DFF: /* 0x14d */
-/* File: armv5te/OP_UNUSED_4DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4EFF: /* 0x14e */
-/* File: armv5te/OP_UNUSED_4EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4FFF: /* 0x14f */
-/* File: armv5te/OP_UNUSED_4FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_50FF: /* 0x150 */
-/* File: armv5te/OP_UNUSED_50FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_51FF: /* 0x151 */
-/* File: armv5te/OP_UNUSED_51FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_52FF: /* 0x152 */
-/* File: armv5te/OP_UNUSED_52FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_53FF: /* 0x153 */
-/* File: armv5te/OP_UNUSED_53FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_54FF: /* 0x154 */
-/* File: armv5te/OP_UNUSED_54FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_55FF: /* 0x155 */
-/* File: armv5te/OP_UNUSED_55FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_56FF: /* 0x156 */
-/* File: armv5te/OP_UNUSED_56FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_57FF: /* 0x157 */
-/* File: armv5te/OP_UNUSED_57FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_58FF: /* 0x158 */
-/* File: armv5te/OP_UNUSED_58FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_59FF: /* 0x159 */
-/* File: armv5te/OP_UNUSED_59FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5AFF: /* 0x15a */
-/* File: armv5te/OP_UNUSED_5AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5BFF: /* 0x15b */
-/* File: armv5te/OP_UNUSED_5BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5CFF: /* 0x15c */
-/* File: armv5te/OP_UNUSED_5CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5DFF: /* 0x15d */
-/* File: armv5te/OP_UNUSED_5DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5EFF: /* 0x15e */
-/* File: armv5te/OP_UNUSED_5EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5FFF: /* 0x15f */
-/* File: armv5te/OP_UNUSED_5FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_60FF: /* 0x160 */
-/* File: armv5te/OP_UNUSED_60FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_61FF: /* 0x161 */
-/* File: armv5te/OP_UNUSED_61FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_62FF: /* 0x162 */
-/* File: armv5te/OP_UNUSED_62FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_63FF: /* 0x163 */
-/* File: armv5te/OP_UNUSED_63FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_64FF: /* 0x164 */
-/* File: armv5te/OP_UNUSED_64FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_65FF: /* 0x165 */
-/* File: armv5te/OP_UNUSED_65FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_66FF: /* 0x166 */
-/* File: armv5te/OP_UNUSED_66FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_67FF: /* 0x167 */
-/* File: armv5te/OP_UNUSED_67FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_68FF: /* 0x168 */
-/* File: armv5te/OP_UNUSED_68FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_69FF: /* 0x169 */
-/* File: armv5te/OP_UNUSED_69FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6AFF: /* 0x16a */
-/* File: armv5te/OP_UNUSED_6AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6BFF: /* 0x16b */
-/* File: armv5te/OP_UNUSED_6BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6CFF: /* 0x16c */
-/* File: armv5te/OP_UNUSED_6CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6DFF: /* 0x16d */
-/* File: armv5te/OP_UNUSED_6DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6EFF: /* 0x16e */
-/* File: armv5te/OP_UNUSED_6EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6FFF: /* 0x16f */
-/* File: armv5te/OP_UNUSED_6FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_70FF: /* 0x170 */
-/* File: armv5te/OP_UNUSED_70FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_71FF: /* 0x171 */
-/* File: armv5te/OP_UNUSED_71FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_72FF: /* 0x172 */
-/* File: armv5te/OP_UNUSED_72FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_73FF: /* 0x173 */
-/* File: armv5te/OP_UNUSED_73FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_74FF: /* 0x174 */
-/* File: armv5te/OP_UNUSED_74FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_75FF: /* 0x175 */
-/* File: armv5te/OP_UNUSED_75FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_76FF: /* 0x176 */
-/* File: armv5te/OP_UNUSED_76FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_77FF: /* 0x177 */
-/* File: armv5te/OP_UNUSED_77FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_78FF: /* 0x178 */
-/* File: armv5te/OP_UNUSED_78FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_79FF: /* 0x179 */
-/* File: armv5te/OP_UNUSED_79FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7AFF: /* 0x17a */
-/* File: armv5te/OP_UNUSED_7AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7BFF: /* 0x17b */
-/* File: armv5te/OP_UNUSED_7BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7CFF: /* 0x17c */
-/* File: armv5te/OP_UNUSED_7CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7DFF: /* 0x17d */
-/* File: armv5te/OP_UNUSED_7DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7EFF: /* 0x17e */
-/* File: armv5te/OP_UNUSED_7EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7FFF: /* 0x17f */
-/* File: armv5te/OP_UNUSED_7FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_80FF: /* 0x180 */
-/* File: armv5te/OP_UNUSED_80FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_81FF: /* 0x181 */
-/* File: armv5te/OP_UNUSED_81FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_82FF: /* 0x182 */
-/* File: armv5te/OP_UNUSED_82FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_83FF: /* 0x183 */
-/* File: armv5te/OP_UNUSED_83FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_84FF: /* 0x184 */
-/* File: armv5te/OP_UNUSED_84FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_85FF: /* 0x185 */
-/* File: armv5te/OP_UNUSED_85FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_86FF: /* 0x186 */
-/* File: armv5te/OP_UNUSED_86FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_87FF: /* 0x187 */
-/* File: armv5te/OP_UNUSED_87FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_88FF: /* 0x188 */
-/* File: armv5te/OP_UNUSED_88FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_89FF: /* 0x189 */
-/* File: armv5te/OP_UNUSED_89FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8AFF: /* 0x18a */
-/* File: armv5te/OP_UNUSED_8AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8BFF: /* 0x18b */
-/* File: armv5te/OP_UNUSED_8BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8CFF: /* 0x18c */
-/* File: armv5te/OP_UNUSED_8CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8DFF: /* 0x18d */
-/* File: armv5te/OP_UNUSED_8DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8EFF: /* 0x18e */
-/* File: armv5te/OP_UNUSED_8EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8FFF: /* 0x18f */
-/* File: armv5te/OP_UNUSED_8FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_90FF: /* 0x190 */
-/* File: armv5te/OP_UNUSED_90FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_91FF: /* 0x191 */
-/* File: armv5te/OP_UNUSED_91FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_92FF: /* 0x192 */
-/* File: armv5te/OP_UNUSED_92FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_93FF: /* 0x193 */
-/* File: armv5te/OP_UNUSED_93FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_94FF: /* 0x194 */
-/* File: armv5te/OP_UNUSED_94FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_95FF: /* 0x195 */
-/* File: armv5te/OP_UNUSED_95FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_96FF: /* 0x196 */
-/* File: armv5te/OP_UNUSED_96FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_97FF: /* 0x197 */
-/* File: armv5te/OP_UNUSED_97FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_98FF: /* 0x198 */
-/* File: armv5te/OP_UNUSED_98FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_99FF: /* 0x199 */
-/* File: armv5te/OP_UNUSED_99FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9AFF: /* 0x19a */
-/* File: armv5te/OP_UNUSED_9AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9BFF: /* 0x19b */
-/* File: armv5te/OP_UNUSED_9BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9CFF: /* 0x19c */
-/* File: armv5te/OP_UNUSED_9CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9DFF: /* 0x19d */
-/* File: armv5te/OP_UNUSED_9DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9EFF: /* 0x19e */
-/* File: armv5te/OP_UNUSED_9EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9FFF: /* 0x19f */
-/* File: armv5te/OP_UNUSED_9FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A0FF: /* 0x1a0 */
-/* File: armv5te/OP_UNUSED_A0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A1FF: /* 0x1a1 */
-/* File: armv5te/OP_UNUSED_A1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A2FF: /* 0x1a2 */
-/* File: armv5te/OP_UNUSED_A2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A3FF: /* 0x1a3 */
-/* File: armv5te/OP_UNUSED_A3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A4FF: /* 0x1a4 */
-/* File: armv5te/OP_UNUSED_A4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A5FF: /* 0x1a5 */
-/* File: armv5te/OP_UNUSED_A5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A6FF: /* 0x1a6 */
-/* File: armv5te/OP_UNUSED_A6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A7FF: /* 0x1a7 */
-/* File: armv5te/OP_UNUSED_A7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A8FF: /* 0x1a8 */
-/* File: armv5te/OP_UNUSED_A8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A9FF: /* 0x1a9 */
-/* File: armv5te/OP_UNUSED_A9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_AAFF: /* 0x1aa */
-/* File: armv5te/OP_UNUSED_AAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ABFF: /* 0x1ab */
-/* File: armv5te/OP_UNUSED_ABFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ACFF: /* 0x1ac */
-/* File: armv5te/OP_UNUSED_ACFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ADFF: /* 0x1ad */
-/* File: armv5te/OP_UNUSED_ADFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_AEFF: /* 0x1ae */
-/* File: armv5te/OP_UNUSED_AEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_AFFF: /* 0x1af */
-/* File: armv5te/OP_UNUSED_AFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B0FF: /* 0x1b0 */
-/* File: armv5te/OP_UNUSED_B0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B1FF: /* 0x1b1 */
-/* File: armv5te/OP_UNUSED_B1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B2FF: /* 0x1b2 */
-/* File: armv5te/OP_UNUSED_B2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B3FF: /* 0x1b3 */
-/* File: armv5te/OP_UNUSED_B3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B4FF: /* 0x1b4 */
-/* File: armv5te/OP_UNUSED_B4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B5FF: /* 0x1b5 */
-/* File: armv5te/OP_UNUSED_B5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B6FF: /* 0x1b6 */
-/* File: armv5te/OP_UNUSED_B6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B7FF: /* 0x1b7 */
-/* File: armv5te/OP_UNUSED_B7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B8FF: /* 0x1b8 */
-/* File: armv5te/OP_UNUSED_B8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B9FF: /* 0x1b9 */
-/* File: armv5te/OP_UNUSED_B9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BAFF: /* 0x1ba */
-/* File: armv5te/OP_UNUSED_BAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BBFF: /* 0x1bb */
-/* File: armv5te/OP_UNUSED_BBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BCFF: /* 0x1bc */
-/* File: armv5te/OP_UNUSED_BCFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BDFF: /* 0x1bd */
-/* File: armv5te/OP_UNUSED_BDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BEFF: /* 0x1be */
-/* File: armv5te/OP_UNUSED_BEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BFFF: /* 0x1bf */
-/* File: armv5te/OP_UNUSED_BFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C0FF: /* 0x1c0 */
-/* File: armv5te/OP_UNUSED_C0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C1FF: /* 0x1c1 */
-/* File: armv5te/OP_UNUSED_C1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C2FF: /* 0x1c2 */
-/* File: armv5te/OP_UNUSED_C2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C3FF: /* 0x1c3 */
-/* File: armv5te/OP_UNUSED_C3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C4FF: /* 0x1c4 */
-/* File: armv5te/OP_UNUSED_C4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C5FF: /* 0x1c5 */
-/* File: armv5te/OP_UNUSED_C5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C6FF: /* 0x1c6 */
-/* File: armv5te/OP_UNUSED_C6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C7FF: /* 0x1c7 */
-/* File: armv5te/OP_UNUSED_C7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C8FF: /* 0x1c8 */
-/* File: armv5te/OP_UNUSED_C8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C9FF: /* 0x1c9 */
-/* File: armv5te/OP_UNUSED_C9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CAFF: /* 0x1ca */
-/* File: armv5te/OP_UNUSED_CAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CBFF: /* 0x1cb */
-/* File: armv5te/OP_UNUSED_CBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CCFF: /* 0x1cc */
-/* File: armv5te/OP_UNUSED_CCFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CDFF: /* 0x1cd */
-/* File: armv5te/OP_UNUSED_CDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CEFF: /* 0x1ce */
-/* File: armv5te/OP_UNUSED_CEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CFFF: /* 0x1cf */
-/* File: armv5te/OP_UNUSED_CFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D0FF: /* 0x1d0 */
-/* File: armv5te/OP_UNUSED_D0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D1FF: /* 0x1d1 */
-/* File: armv5te/OP_UNUSED_D1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D2FF: /* 0x1d2 */
-/* File: armv5te/OP_UNUSED_D2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D3FF: /* 0x1d3 */
-/* File: armv5te/OP_UNUSED_D3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D4FF: /* 0x1d4 */
-/* File: armv5te/OP_UNUSED_D4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D5FF: /* 0x1d5 */
-/* File: armv5te/OP_UNUSED_D5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D6FF: /* 0x1d6 */
-/* File: armv5te/OP_UNUSED_D6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D7FF: /* 0x1d7 */
-/* File: armv5te/OP_UNUSED_D7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D8FF: /* 0x1d8 */
-/* File: armv5te/OP_UNUSED_D8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D9FF: /* 0x1d9 */
-/* File: armv5te/OP_UNUSED_D9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DAFF: /* 0x1da */
-/* File: armv5te/OP_UNUSED_DAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DBFF: /* 0x1db */
-/* File: armv5te/OP_UNUSED_DBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DCFF: /* 0x1dc */
-/* File: armv5te/OP_UNUSED_DCFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DDFF: /* 0x1dd */
-/* File: armv5te/OP_UNUSED_DDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DEFF: /* 0x1de */
-/* File: armv5te/OP_UNUSED_DEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DFFF: /* 0x1df */
-/* File: armv5te/OP_UNUSED_DFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E0FF: /* 0x1e0 */
-/* File: armv5te/OP_UNUSED_E0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E1FF: /* 0x1e1 */
-/* File: armv5te/OP_UNUSED_E1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E2FF: /* 0x1e2 */
-/* File: armv5te/OP_UNUSED_E2FF.S */
+.L_OP_UNUSED_FF: /* 0xff */
+/* File: armv5te/OP_UNUSED_FF.S */
/* File: armv5te/unused.S */
bl common_abort
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E3FF: /* 0x1e3 */
-/* File: armv5te/OP_UNUSED_E3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E4FF: /* 0x1e4 */
-/* File: armv5te/OP_UNUSED_E4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E5FF: /* 0x1e5 */
-/* File: armv5te/OP_UNUSED_E5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E6FF: /* 0x1e6 */
-/* File: armv5te/OP_UNUSED_E6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E7FF: /* 0x1e7 */
-/* File: armv5te/OP_UNUSED_E7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E8FF: /* 0x1e8 */
-/* File: armv5te/OP_UNUSED_E8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E9FF: /* 0x1e9 */
-/* File: armv5te/OP_UNUSED_E9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EAFF: /* 0x1ea */
-/* File: armv5te/OP_UNUSED_EAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EBFF: /* 0x1eb */
-/* File: armv5te/OP_UNUSED_EBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ECFF: /* 0x1ec */
-/* File: armv5te/OP_UNUSED_ECFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EDFF: /* 0x1ed */
-/* File: armv5te/OP_UNUSED_EDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EEFF: /* 0x1ee */
-/* File: armv5te/OP_UNUSED_EEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EFFF: /* 0x1ef */
-/* File: armv5te/OP_UNUSED_EFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_F0FF: /* 0x1f0 */
-/* File: armv5te/OP_UNUSED_F0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_F1FF: /* 0x1f1 */
-/* File: armv5te/OP_UNUSED_F1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_OBJECT_INIT_JUMBO: /* 0x1f2 */
-/* File: armv5te/OP_INVOKE_OBJECT_INIT_JUMBO.S */
-/* File: armv5te/OP_INVOKE_OBJECT_INIT_RANGE.S */
- /*
- * Invoke Object.<init> on an object. In practice we know that
- * Object's nullary constructor doesn't do anything, so we just
- * skip it unless a debugger is active.
- */
- FETCH(r1, 4) @ r1<- CCCC
- GET_VREG(r0, r1) @ r0<- "this" ptr
- cmp r0, #0 @ check for NULL
- beq common_errNullObject @ export PC and throw NPE
- ldr r1, [r0, #offObject_clazz] @ r1<- obj->clazz
- ldr r2, [r1, #offClassObject_accessFlags] @ r2<- clazz->accessFlags
- tst r2, #CLASS_ISFINALIZABLE @ is this class finalizable?
- bne .LOP_INVOKE_OBJECT_INIT_JUMBO_setFinal @ yes, go
-.LOP_INVOKE_OBJECT_INIT_JUMBO_finish:
- ldrh r1, [rSELF, #offThread_subMode]
- ands r1, #kSubModeDebuggerActive @ debugger active?
- bne .LOP_INVOKE_OBJECT_INIT_JUMBO_debugger @ Yes - skip optimization
- FETCH_ADVANCE_INST(4+1) @ advance to next instr, load rINST
- GET_INST_OPCODE(ip) @ ip<- opcode from rINST
- GOTO_OPCODE(ip) @ execute it
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_VOLATILE_JUMBO: /* 0x1f3 */
-/* File: armv5te/OP_IGET_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_WIDE_VOLATILE_JUMBO: /* 0x1f4 */
-/* File: armv5te/OP_IGET_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit instance field get.
- */
- /* iget-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_WIDE_VOLATILE_JUMBO_finish @ no, already resolved
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_WIDE_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_OBJECT_VOLATILE_JUMBO: /* 0x1f5 */
-/* File: armv5te/OP_IGET_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_OBJECT_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_OBJECT_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_VOLATILE_JUMBO: /* 0x1f6 */
-/* File: armv5te/OP_IPUT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_WIDE_VOLATILE_JUMBO: /* 0x1f7 */
-/* File: armv5te/OP_IPUT_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IPUT_WIDE_JUMBO.S */
- /* iput-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[B], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_WIDE_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_WIDE_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_OBJECT_VOLATILE_JUMBO: /* 0x1f8 */
-/* File: armv5te/OP_IPUT_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- */
- /* iput-object/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_OBJECT_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_OBJECT_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_VOLATILE_JUMBO: /* 0x1f9 */
-/* File: armv5te/OP_SGET_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_VOLATILE_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_WIDE_VOLATILE_JUMBO: /* 0x1fa */
-/* File: armv5te/OP_SGET_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SGET handler.
- */
- /* sget-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResFields] @ r2<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_WIDE_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_WIDE_VOLATILE_JUMBO_finish:
- FETCH(r9, 3) @ r9<- BBBB
- .if 1
- add r0, r0, #offStaticField_value @ r0<- pointer to data
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r0, #offStaticField_value] @ r0/r1<- field value (aligned)
- .endif
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- stmia r9, {r0-r1} @ vBBBB/vBBBB+1<- r0/r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_OBJECT_VOLATILE_JUMBO: /* 0x1fb */
-/* File: armv5te/OP_SGET_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_OBJECT_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_OBJECT_VOLATILE_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_VOLATILE_JUMBO: /* 0x1fc */
-/* File: armv5te/OP_SPUT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_VOLATILE_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- SMP_DMB
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_WIDE_VOLATILE_JUMBO: /* 0x1fd */
-/* File: armv5te/OP_SPUT_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SPUT_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SPUT handler.
- */
- /* sput-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r0, [rSELF, #offThread_methodClassDex] @ r0<- DvmDex
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- ldr r10, [r0, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- FETCH(r9, 3) @ r9<- BBBB
- ldr r2, [r10, r1, lsl #2] @ r2<- resolved StaticField ptr
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- cmp r2, #0 @ is resolved entry null?
- beq .LOP_SPUT_WIDE_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_WIDE_VOLATILE_JUMBO_finish: @ field ptr in r2, BBBB in r9
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- ldmia r9, {r0-r1} @ r0/r1<- vBBBB/vBBBB+1
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 1
- add r2, r2, #offStaticField_value @ r2<- pointer to data
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r2, #offStaticField_value] @ field<- vBBBB/vBBBB+1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_OBJECT_VOLATILE_JUMBO: /* 0x1fe */
-/* File: armv5te/OP_SPUT_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler for objects
- */
- /* sput-object/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_OBJECT_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_OBJECT_VOLATILE_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- ldr r9, [r0, #offField_clazz] @ r9<- field->clazz
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- b .LOP_SPUT_OBJECT_VOLATILE_JUMBO_end
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_THROW_VERIFICATION_ERROR_JUMBO: /* 0x1ff */
-/* File: armv5te/OP_THROW_VERIFICATION_ERROR_JUMBO.S */
- /*
- * Handle a jumbo throw-verification-error instruction. This throws an
- * exception for an error discovered during verification. The
- * exception is indicated by BBBB, with some detail provided by AAAAAAAA.
- */
- /* exop BBBB, Class@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- ldr r0, [rSELF, #offThread_method] @ r0<- self->method
- orr r2, r1, r2, lsl #16 @ r2<- AAAAaaaa
- EXPORT_PC() @ export the PC
- FETCH(r1, 3) @ r1<- BBBB
- bl dvmThrowVerificationError @ always throws
- b common_exceptionThrown @ handle exception
-
.balign 64
.size dvmAsmInstructionStart, .-dvmAsmInstructionStart
.global dvmAsmInstructionEnd
@@ -12764,11 +9650,7 @@ d2l_doconv:
*/
.LOP_INVOKE_OBJECT_INIT_RANGE_debugger:
ldr r1, [rSELF, #offThread_mainHandlerTable]
- .if 0
- mov ip, #OP_INVOKE_DIRECT_JUMBO
- .else
mov ip, #OP_INVOKE_DIRECT_RANGE
- .endif
GOTO_OPCODE_BASE(r1,ip) @ execute it
/* continuation for OP_IPUT_OBJECT_VOLATILE */
@@ -12856,1594 +9738,6 @@ d2l_doconv:
b .LOP_SPUT_OBJECT_VOLATILE_finish @ resume
-/* continuation for OP_CONST_CLASS_JUMBO */
-
- /*
- * Continuation if the Class has not yet been resolved.
- * r1: AAAAAAAA (Class ref)
- * r9: target register
- */
-.LOP_CONST_CLASS_JUMBO_resolve:
- EXPORT_PC()
- ldr r0, [rSELF, #offThread_method] @ r0<- self->method
- mov r2, #1 @ r2<- true
- ldr r0, [r0, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- Class reference
- cmp r0, #0 @ failed?
- beq common_exceptionThrown @ yup, handle the exception
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_CHECK_CAST_JUMBO */
-
- /*
- * Trivial test failed, need to perform full check. This is common.
- * r0 holds obj->clazz
- * r1 holds desired class resolved from AAAAAAAA
- * r9 holds object
- */
-.LOP_CHECK_CAST_JUMBO_fullcheck:
- mov r10, r1 @ avoid ClassObject getting clobbered
- bl dvmInstanceofNonTrivial @ r0<- boolean result
- cmp r0, #0 @ failed?
- bne .LOP_CHECK_CAST_JUMBO_okay @ no, success
-
- @ A cast has failed. We need to throw a ClassCastException.
- EXPORT_PC() @ about to throw
- ldr r0, [r9, #offObject_clazz] @ r0<- obj->clazz (actual class)
- mov r1, r10 @ r1<- desired class
- bl dvmThrowClassCastException
- b common_exceptionThrown
-
- /*
- * Advance PC and get the next opcode.
- */
-.LOP_CHECK_CAST_JUMBO_okay:
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /*
- * Resolution required. This is the least-likely path.
- *
- * r2 holds AAAAAAAA
- * r9 holds object
- */
-.LOP_CHECK_CAST_JUMBO_resolve:
- EXPORT_PC() @ resolve() could throw
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r1, r2 @ r1<- AAAAAAAA
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- resolved ClassObject ptr
- cmp r0, #0 @ got null?
- beq common_exceptionThrown @ yes, handle exception
- mov r1, r0 @ r1<- class resolved from AAAAAAAA
- ldr r0, [r9, #offObject_clazz] @ r0<- obj->clazz
- b .LOP_CHECK_CAST_JUMBO_resolved @ pick up where we left off
-
-/* continuation for OP_INSTANCE_OF_JUMBO */
-
- /*
- * Class resolved, determine type of check necessary. This is common.
- * r0 holds obj->clazz
- * r1 holds class resolved from AAAAAAAA
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_resolved:
- cmp r0, r1 @ same class (trivial success)?
- beq .LOP_INSTANCE_OF_JUMBO_trivial @ yes, trivial finish
- @ fall through to OP_INSTANCE_OF_JUMBO_fullcheck
-
- /*
- * Trivial test failed, need to perform full check. This is common.
- * r0 holds obj->clazz
- * r1 holds class resolved from AAAAAAAA
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_fullcheck:
- bl dvmInstanceofNonTrivial @ r0<- boolean result
- @ fall through to OP_INSTANCE_OF_JUMBO_store
-
- /*
- * r0 holds boolean result
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_store:
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /*
- * Trivial test succeeded, save and bail.
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_trivial:
- mov r0, #1 @ indicate success
- @ could b OP_INSTANCE_OF_JUMBO_store, but copying is faster and cheaper
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /*
- * Resolution required. This is the least-likely path.
- *
- * r3 holds AAAAAAAA
- * r9 holds BBBB
- */
-
-.LOP_INSTANCE_OF_JUMBO_resolve:
- EXPORT_PC() @ resolve() could throw
- ldr r0, [rSELF, #offThread_method] @ r0<- self->method
- mov r1, r3 @ r1<- AAAAAAAA
- mov r2, #1 @ r2<- true
- ldr r0, [r0, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- resolved ClassObject ptr
- cmp r0, #0 @ got null?
- beq common_exceptionThrown @ yes, handle exception
- FETCH(r3, 4) @ r3<- vCCCC
- mov r1, r0 @ r1<- class resolved from AAAAAAAA
- GET_VREG(r0, r3) @ r0<- vCCCC (object)
- ldr r0, [r0, #offObject_clazz] @ r0<- obj->clazz
- b .LOP_INSTANCE_OF_JUMBO_resolved @ pick up where we left off
-
-/* continuation for OP_NEW_INSTANCE_JUMBO */
-
- .balign 32 @ minimize cache lines
-.LOP_NEW_INSTANCE_JUMBO_finish: @ r0=new object
- FETCH(r3, 3) @ r3<- BBBB
- cmp r0, #0 @ failed?
-#if defined(WITH_JIT)
- /*
- * The JIT needs the class to be fully resolved before it can
- * include this instruction in a trace.
- */
- ldrh r1, [rSELF, #offThread_subMode]
- beq common_exceptionThrown @ yes, handle the exception
- ands r1, #kSubModeJitTraceBuild @ under construction?
- bne .LOP_NEW_INSTANCE_JUMBO_jitCheck
-#else
- beq common_exceptionThrown @ yes, handle the exception
-#endif
-.LOP_NEW_INSTANCE_JUMBO_end:
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r3) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-#if defined(WITH_JIT)
- /*
- * Check to see if we need to stop the trace building early.
- * r0: new object
- * r3: vAA
- */
-.LOP_NEW_INSTANCE_JUMBO_jitCheck:
- ldr r1, [r10] @ reload resolved class
- cmp r1, #0 @ okay?
- bne .LOP_NEW_INSTANCE_JUMBO_end @ yes, finish
- mov r9, r0 @ preserve new object
- mov r10, r3 @ preserve vAA
- mov r0, rSELF
- mov r1, rPC
- bl dvmJitEndTraceSelect @ (self, pc)
- FETCH_ADVANCE_INST(2) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r9, r10) @ vAA<- new object
- GOTO_OPCODE(ip) @ jump to next instruction
-#endif
-
- /*
- * Class initialization required.
- *
- * r0 holds class object
- */
-.LOP_NEW_INSTANCE_JUMBO_needinit:
- mov r9, r0 @ save r0
- bl dvmInitClass @ initialize class
- cmp r0, #0 @ check boolean result
- mov r0, r9 @ restore r0
- bne .LOP_NEW_INSTANCE_JUMBO_initialized @ success, continue
- b common_exceptionThrown @ failed, deal with init exception
-
- /*
- * Resolution required. This is the least-likely path.
- *
- * r1 holds AAAAAAAA
- */
-.LOP_NEW_INSTANCE_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- resolved ClassObject ptr
- cmp r0, #0 @ got null?
- bne .LOP_NEW_INSTANCE_JUMBO_resolved @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
-/* continuation for OP_NEW_ARRAY_JUMBO */
-
-
- /*
- * Resolve class. (This is an uncommon case.)
- *
- * r1 holds array length
- * r2 holds class ref AAAAAAAA
- */
-.LOP_NEW_ARRAY_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r9, r1 @ r9<- length (save)
- mov r1, r2 @ r1<- AAAAAAAA
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- call(clazz, ref)
- cmp r0, #0 @ got null?
- mov r1, r9 @ r1<- length (restore)
- beq common_exceptionThrown @ yes, handle exception
- @ fall through to OP_NEW_ARRAY_JUMBO_finish
-
- /*
- * Finish allocation.
- *
- * r0 holds class
- * r1 holds array length
- */
-.LOP_NEW_ARRAY_JUMBO_finish:
- mov r2, #ALLOC_DONT_TRACK @ don't track in local refs table
- bl dvmAllocArrayByClass @ r0<- call(clazz, length, flags)
- cmp r0, #0 @ failed?
- FETCH(r2, 3) @ r2<- vBBBB
- beq common_exceptionThrown @ yes, handle the exception
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r2) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_FILLED_NEW_ARRAY_JUMBO */
-
- /*
- * On entry:
- * r0 holds array class
- */
-.LOP_FILLED_NEW_ARRAY_JUMBO_continue:
- ldr r3, [r0, #offClassObject_descriptor] @ r3<- arrayClass->descriptor
- mov r2, #ALLOC_DONT_TRACK @ r2<- alloc flags
- ldrb rINST, [r3, #1] @ rINST<- descriptor[1]
- FETCH(r1, 3) @ r1<- BBBB (length)
- cmp rINST, #'I' @ array of ints?
- cmpne rINST, #'L' @ array of objects?
- cmpne rINST, #'[' @ array of arrays?
- mov r9, r1 @ save length in r9
- bne .LOP_FILLED_NEW_ARRAY_JUMBO_notimpl @ no, not handled yet
- bl dvmAllocArrayByClass @ r0<- call(arClass, length, flags)
- cmp r0, #0 @ null return?
- beq common_exceptionThrown @ alloc failed, handle exception
-
- FETCH(r1, 4) @ r1<- CCCC
- str r0, [rSELF, #offThread_retval] @ retval.l <- new array
- str rINST, [rSELF, #offThread_retval+4] @ retval.h <- type
- add r0, r0, #offArrayObject_contents @ r0<- newArray->contents
- subs r9, r9, #1 @ length--, check for neg
- FETCH_ADVANCE_INST(5) @ advance to next instr, load rINST
- bmi 2f @ was zero, bail
-
- @ copy values from registers into the array
- @ r0=array, r1=CCCC, r9=BBBB (length)
- add r2, rFP, r1, lsl #2 @ r2<- &fp[CCCC]
-1: ldr r3, [r2], #4 @ r3<- *r2++
- subs r9, r9, #1 @ count--
- str r3, [r0], #4 @ *contents++ = vX
- bpl 1b
-
-2: ldr r0, [rSELF, #offThread_retval] @ r0<- object
- ldr r1, [rSELF, #offThread_retval+4] @ r1<- type
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- GET_INST_OPCODE(ip) @ ip<- opcode from rINST
- cmp r1, #'I' @ Is int array?
- strneb r2, [r2, r0, lsr #GC_CARD_SHIFT] @ Mark card based on object head
- GOTO_OPCODE(ip) @ execute it
-
- /*
- * Throw an exception indicating that we have not implemented this
- * mode of filled-new-array.
- */
-.LOP_FILLED_NEW_ARRAY_JUMBO_notimpl:
- ldr r0, .L_strFilledNewArrayNotImpl_OP_FILLED_NEW_ARRAY_JUMBO
- bl dvmThrowInternalError
- b common_exceptionThrown
-
- /*
- * Ideally we'd only define this once, but depending on layout we can
- * exceed the range of the load above.
- */
-
-.L_strFilledNewArrayNotImpl_OP_FILLED_NEW_ARRAY_JUMBO:
- .word .LstrFilledNewArrayNotImpl
-
-/* continuation for OP_IGET_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_WIDE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_WIDE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- .if 0
- add r0, r9, r3 @ r0<- address of field
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r9, r3] @ r0/r1<- obj.field (64-bit align ok)
- .endif
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- add r3, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- stmia r3, {r0-r1} @ fp[BBBB]<- r0/r1
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_OBJECT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_OBJECT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_BOOLEAN_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BOOLEAN_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_BOOLEAN_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BOOLEAN_JUMBO_finish:
- @bl common_squeak1
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_BYTE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BYTE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_BYTE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BYTE_JUMBO_finish:
- @bl common_squeak2
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_CHAR_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_CHAR_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_CHAR_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_CHAR_JUMBO_finish:
- @bl common_squeak3
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_SHORT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_SHORT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_SHORT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_SHORT_JUMBO_finish:
- @bl common_squeak4
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_WIDE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_WIDE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- FETCH(r2, 3) @ r1<- BBBB
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- add r2, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- ldmia r2, {r0-r1} @ r0/r1<- fp[BBBB]
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 0
- add r2, r9, r3 @ r2<- target address
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r9, r3] @ obj.field (64 bits, aligned)<- r0/r1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-/* continuation for OP_IPUT_OBJECT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_OBJECT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (32 bits)<- r0
- @ no-op
- cmp r0, #0 @ stored a null reference?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card if not
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_BOOLEAN_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BOOLEAN_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_BOOLEAN_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BOOLEAN_JUMBO_finish:
- @bl common_squeak1
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_BYTE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BYTE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_BYTE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BYTE_JUMBO_finish:
- @bl common_squeak2
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_CHAR_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_CHAR_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_CHAR_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_CHAR_JUMBO_finish:
- @bl common_squeak3
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_SHORT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_SHORT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_SHORT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_SHORT_JUMBO_finish:
- @bl common_squeak4
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_SGET_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_WIDE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- *
- * Returns StaticField pointer in r0.
- */
-.LOP_SGET_WIDE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- bne .LOP_SGET_WIDE_JUMBO_finish @ yes, finish
- b common_exceptionThrown @ no, handle exception
-
-/* continuation for OP_SGET_OBJECT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_OBJECT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_OBJECT_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_BOOLEAN_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_BOOLEAN_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_BOOLEAN_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_BYTE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_BYTE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_BYTE_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_CHAR_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_CHAR_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_CHAR_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_SHORT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_SHORT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_SHORT_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_WIDE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r9: &fp[BBBB]
- * r10: dvmDex->pResFields
- *
- * Returns StaticField pointer in r2.
- */
-.LOP_SPUT_WIDE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- mov r2, r0 @ copy to r2
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_WIDE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_OBJECT_JUMBO */
-
-
-.LOP_SPUT_OBJECT_JUMBO_end:
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- cmp r1, #0 @ stored a null object?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card based on obj head
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /* Continuation if the field has not yet been resolved.
- * r1: AAAAaaaa field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_OBJECT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r9<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_OBJECT_JUMBO_finish @ resume
-
-
-/* continuation for OP_SPUT_BOOLEAN_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_BOOLEAN_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_BOOLEAN_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_BYTE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_BYTE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_BYTE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_CHAR_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_CHAR_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_CHAR_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_SHORT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_SHORT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_SHORT_JUMBO_finish @ resume
-
-/* continuation for OP_INVOKE_VIRTUAL_JUMBO */
-
- /*
- * At this point:
- * r0 = resolved base method
- */
-.LOP_INVOKE_VIRTUAL_JUMBO_continue:
- FETCH(r10, 4) @ r10<- CCCC
- GET_VREG(r9, r10) @ r9<- "this" ptr
- ldrh r2, [r0, #offMethod_methodIndex] @ r2<- baseMethod->methodIndex
- cmp r9, #0 @ is "this" null?
- beq common_errNullObject @ null "this", throw exception
- ldr r3, [r9, #offObject_clazz] @ r3<- thisPtr->clazz
- ldr r3, [r3, #offClassObject_vtable] @ r3<- thisPtr->clazz->vtable
- ldr r0, [r3, r2, lsl #2] @ r3<- vtable[methodIndex]
- bl common_invokeMethodJumbo @ (r0=method, r9="this")
-
-/* continuation for OP_INVOKE_SUPER_JUMBO */
-
- /*
- * At this point:
- * r0 = resolved base method
- * r10 = method->clazz
- */
-.LOP_INVOKE_SUPER_JUMBO_continue:
- ldr r1, [r10, #offClassObject_super] @ r1<- method->clazz->super
- ldrh r2, [r0, #offMethod_methodIndex] @ r2<- baseMethod->methodIndex
- ldr r3, [r1, #offClassObject_vtableCount] @ r3<- super->vtableCount
- EXPORT_PC() @ must export for invoke
- cmp r2, r3 @ compare (methodIndex, vtableCount)
- bcs .LOP_INVOKE_SUPER_JUMBO_nsm @ method not present in superclass
- ldr r1, [r1, #offClassObject_vtable] @ r1<- ...clazz->super->vtable
- ldr r0, [r1, r2, lsl #2] @ r3<- vtable[methodIndex]
- bl common_invokeMethodJumbo @ (r0=method, r9="this")
-
-.LOP_INVOKE_SUPER_JUMBO_resolve:
- mov r0, r10 @ r0<- method->clazz
- mov r2, #METHOD_VIRTUAL @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
- bne .LOP_INVOKE_SUPER_JUMBO_continue @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
- /*
- * Throw a NoSuchMethodError with the method name as the message.
- * r0 = resolved base method
- */
-.LOP_INVOKE_SUPER_JUMBO_nsm:
- ldr r1, [r0, #offMethod_name] @ r1<- method name
- b common_errNoSuchMethod
-
-/* continuation for OP_INVOKE_DIRECT_JUMBO */
-
- /*
- * On entry:
- * r1 = reference (CCCC)
- * r10 = "this" register
- */
-.LOP_INVOKE_DIRECT_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- mov r2, #METHOD_DIRECT @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
- bne .LOP_INVOKE_DIRECT_JUMBO_finish @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
-/* continuation for OP_INVOKE_STATIC_JUMBO */
-
-
-.LOP_INVOKE_STATIC_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- mov r2, #METHOD_STATIC @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
-#if defined(WITH_JIT)
- /*
- * Check to see if we're actively building a trace. If so,
- * we need to keep this instruction out of it.
- * r10: &resolved_methodToCall
- */
- ldrh r2, [rSELF, #offThread_subMode]
- beq common_exceptionThrown @ null, handle exception
- ands r2, #kSubModeJitTraceBuild @ trace under construction?
- beq common_invokeMethodJumboNoThis @ no (r0=method, r9="this")
- ldr r1, [r10] @ reload resolved method
- cmp r1, #0 @ finished resolving?
- bne common_invokeMethodJumboNoThis @ yes (r0=method, r9="this")
- mov r10, r0 @ preserve method
- mov r0, rSELF
- mov r1, rPC
- bl dvmJitEndTraceSelect @ (self, pc)
- mov r0, r10
- b common_invokeMethodJumboNoThis @ whew, finally!
-#else
- bne common_invokeMethodJumboNoThis @ (r0=method, r9="this")
- b common_exceptionThrown @ yes, handle exception
-#endif
-
-/* continuation for OP_INVOKE_OBJECT_INIT_JUMBO */
-
-.LOP_INVOKE_OBJECT_INIT_JUMBO_setFinal:
- EXPORT_PC() @ can throw
- bl dvmSetFinalizable @ call dvmSetFinalizable(obj)
- ldr r0, [rSELF, #offThread_exception] @ r0<- self->exception
- cmp r0, #0 @ exception pending?
- bne common_exceptionThrown @ yes, handle it
- b .LOP_INVOKE_OBJECT_INIT_JUMBO_finish
-
- /*
- * A debugger is attached, so we need to go ahead and do
- * this. For simplicity, we'll just jump directly to the
- * corresponding handler. Note that we can't use
- * rIBASE here because it may be in single-step mode.
- * Load the primary table base directly.
- */
-.LOP_INVOKE_OBJECT_INIT_JUMBO_debugger:
- ldr r1, [rSELF, #offThread_mainHandlerTable]
- .if 1
- mov ip, #OP_INVOKE_DIRECT_JUMBO
- .else
- mov ip, #OP_INVOKE_DIRECT_RANGE
- .endif
- GOTO_OPCODE_BASE(r1,ip) @ execute it
-
-/* continuation for OP_IGET_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_WIDE_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_WIDE_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_VOLATILE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- .if 1
- add r0, r9, r3 @ r0<- address of field
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r9, r3] @ r0/r1<- obj.field (64-bit align ok)
- .endif
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- add r3, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- stmia r3, {r0-r1} @ fp[BBBB]<- r0/r1
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_OBJECT_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_OBJECT_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- SMP_DMB
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_WIDE_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_WIDE_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_VOLATILE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- FETCH(r2, 3) @ r1<- BBBB
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- add r2, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- ldmia r2, {r0-r1} @ r0/r1<- fp[BBBB]
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 1
- add r2, r9, r3 @ r2<- target address
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r9, r3] @ obj.field (64 bits, aligned)<- r0/r1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-/* continuation for OP_IPUT_OBJECT_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_OBJECT_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- str r0, [r9, r3] @ obj.field (32 bits)<- r0
- SMP_DMB
- cmp r0, #0 @ stored a null reference?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card if not
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_SGET_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_WIDE_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- *
- * Returns StaticField pointer in r0.
- */
-.LOP_SGET_WIDE_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- bne .LOP_SGET_WIDE_VOLATILE_JUMBO_finish @ yes, finish
- b common_exceptionThrown @ no, handle exception
-
-/* continuation for OP_SGET_OBJECT_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_OBJECT_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_OBJECT_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_WIDE_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r9: &fp[BBBB]
- * r10: dvmDex->pResFields
- *
- * Returns StaticField pointer in r2.
- */
-.LOP_SPUT_WIDE_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- mov r2, r0 @ copy to r2
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_WIDE_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_OBJECT_VOLATILE_JUMBO */
-
-
-.LOP_SPUT_OBJECT_VOLATILE_JUMBO_end:
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- SMP_DMB
- cmp r1, #0 @ stored a null object?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card based on obj head
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /* Continuation if the field has not yet been resolved.
- * r1: AAAAaaaa field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_OBJECT_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r9<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_OBJECT_VOLATILE_JUMBO_finish @ resume
-
-
.size dvmAsmSisterStart, .-dvmAsmSisterStart
.global dvmAsmSisterEnd
dvmAsmSisterEnd:
@@ -20321,5449 +15615,7 @@ dvmAsmAltInstructionStart = .L_ALT_OP_NOP
/* ------------------------------ */
.balign 64
-.L_ALT_OP_DISPATCH_FF: /* 0xff */
-/* File: armv5te/ALT_OP_DISPATCH_FF.S */
-/*
- * Unlike other alt stubs, we don't want to call dvmCheckBefore() here.
- * Instead, just treat this as a trampoline to reach the real alt
- * handler (which will do the dvmCheckBefore() call.
- */
- mov ip, rINST, lsr #8 @ ip<- extended opcode
- add ip, ip, #256 @ add offset for extended opcodes
- GOTO_OPCODE(ip) @ go to proper extended handler
-
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_CONST_CLASS_JUMBO: /* 0x100 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (256 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_CHECK_CAST_JUMBO: /* 0x101 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (257 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INSTANCE_OF_JUMBO: /* 0x102 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (258 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_NEW_INSTANCE_JUMBO: /* 0x103 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (259 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_NEW_ARRAY_JUMBO: /* 0x104 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (260 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_FILLED_NEW_ARRAY_JUMBO: /* 0x105 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (261 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_JUMBO: /* 0x106 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (262 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_WIDE_JUMBO: /* 0x107 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (263 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_OBJECT_JUMBO: /* 0x108 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (264 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_BOOLEAN_JUMBO: /* 0x109 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (265 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_BYTE_JUMBO: /* 0x10a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (266 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_CHAR_JUMBO: /* 0x10b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (267 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_SHORT_JUMBO: /* 0x10c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (268 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_JUMBO: /* 0x10d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (269 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_WIDE_JUMBO: /* 0x10e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (270 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_OBJECT_JUMBO: /* 0x10f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (271 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_BOOLEAN_JUMBO: /* 0x110 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (272 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_BYTE_JUMBO: /* 0x111 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (273 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_CHAR_JUMBO: /* 0x112 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (274 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_SHORT_JUMBO: /* 0x113 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (275 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_JUMBO: /* 0x114 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (276 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_WIDE_JUMBO: /* 0x115 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (277 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_OBJECT_JUMBO: /* 0x116 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (278 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_BOOLEAN_JUMBO: /* 0x117 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (279 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_BYTE_JUMBO: /* 0x118 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (280 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_CHAR_JUMBO: /* 0x119 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (281 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_SHORT_JUMBO: /* 0x11a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (282 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_JUMBO: /* 0x11b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (283 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_WIDE_JUMBO: /* 0x11c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (284 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_OBJECT_JUMBO: /* 0x11d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (285 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_BOOLEAN_JUMBO: /* 0x11e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (286 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_BYTE_JUMBO: /* 0x11f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (287 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_CHAR_JUMBO: /* 0x120 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (288 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_SHORT_JUMBO: /* 0x121 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (289 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_VIRTUAL_JUMBO: /* 0x122 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (290 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_SUPER_JUMBO: /* 0x123 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (291 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_DIRECT_JUMBO: /* 0x124 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (292 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_STATIC_JUMBO: /* 0x125 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (293 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_INTERFACE_JUMBO: /* 0x126 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (294 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_27FF: /* 0x127 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (295 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_28FF: /* 0x128 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (296 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_29FF: /* 0x129 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (297 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2AFF: /* 0x12a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (298 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2BFF: /* 0x12b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (299 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2CFF: /* 0x12c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (300 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2DFF: /* 0x12d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (301 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2EFF: /* 0x12e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (302 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2FFF: /* 0x12f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (303 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_30FF: /* 0x130 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (304 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_31FF: /* 0x131 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (305 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_32FF: /* 0x132 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (306 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_33FF: /* 0x133 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (307 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_34FF: /* 0x134 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (308 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_35FF: /* 0x135 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (309 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_36FF: /* 0x136 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (310 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_37FF: /* 0x137 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (311 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_38FF: /* 0x138 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (312 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_39FF: /* 0x139 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (313 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3AFF: /* 0x13a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (314 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3BFF: /* 0x13b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (315 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3CFF: /* 0x13c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (316 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3DFF: /* 0x13d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (317 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3EFF: /* 0x13e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (318 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3FFF: /* 0x13f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (319 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_40FF: /* 0x140 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (320 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_41FF: /* 0x141 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (321 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_42FF: /* 0x142 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (322 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_43FF: /* 0x143 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (323 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_44FF: /* 0x144 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (324 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_45FF: /* 0x145 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (325 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_46FF: /* 0x146 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (326 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_47FF: /* 0x147 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (327 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_48FF: /* 0x148 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (328 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_49FF: /* 0x149 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (329 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4AFF: /* 0x14a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (330 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4BFF: /* 0x14b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (331 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4CFF: /* 0x14c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (332 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4DFF: /* 0x14d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (333 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4EFF: /* 0x14e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (334 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4FFF: /* 0x14f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (335 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_50FF: /* 0x150 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (336 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_51FF: /* 0x151 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (337 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_52FF: /* 0x152 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (338 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_53FF: /* 0x153 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (339 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_54FF: /* 0x154 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (340 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_55FF: /* 0x155 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (341 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_56FF: /* 0x156 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (342 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_57FF: /* 0x157 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (343 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_58FF: /* 0x158 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (344 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_59FF: /* 0x159 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (345 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5AFF: /* 0x15a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (346 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5BFF: /* 0x15b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (347 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5CFF: /* 0x15c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (348 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5DFF: /* 0x15d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (349 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5EFF: /* 0x15e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (350 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5FFF: /* 0x15f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (351 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_60FF: /* 0x160 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (352 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_61FF: /* 0x161 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (353 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_62FF: /* 0x162 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (354 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_63FF: /* 0x163 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (355 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_64FF: /* 0x164 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (356 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_65FF: /* 0x165 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (357 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_66FF: /* 0x166 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (358 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_67FF: /* 0x167 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (359 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_68FF: /* 0x168 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (360 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_69FF: /* 0x169 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (361 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6AFF: /* 0x16a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (362 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6BFF: /* 0x16b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (363 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6CFF: /* 0x16c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (364 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6DFF: /* 0x16d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (365 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6EFF: /* 0x16e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (366 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6FFF: /* 0x16f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (367 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_70FF: /* 0x170 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (368 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_71FF: /* 0x171 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (369 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_72FF: /* 0x172 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (370 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_73FF: /* 0x173 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (371 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_74FF: /* 0x174 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (372 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_75FF: /* 0x175 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (373 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_76FF: /* 0x176 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (374 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_77FF: /* 0x177 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (375 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_78FF: /* 0x178 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (376 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_79FF: /* 0x179 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (377 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7AFF: /* 0x17a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (378 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7BFF: /* 0x17b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (379 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7CFF: /* 0x17c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (380 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7DFF: /* 0x17d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (381 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7EFF: /* 0x17e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (382 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7FFF: /* 0x17f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (383 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_80FF: /* 0x180 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (384 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_81FF: /* 0x181 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (385 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_82FF: /* 0x182 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (386 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_83FF: /* 0x183 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (387 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_84FF: /* 0x184 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (388 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_85FF: /* 0x185 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (389 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_86FF: /* 0x186 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (390 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_87FF: /* 0x187 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (391 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_88FF: /* 0x188 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (392 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_89FF: /* 0x189 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (393 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8AFF: /* 0x18a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (394 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8BFF: /* 0x18b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (395 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8CFF: /* 0x18c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (396 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8DFF: /* 0x18d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (397 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8EFF: /* 0x18e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (398 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8FFF: /* 0x18f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (399 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_90FF: /* 0x190 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (400 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_91FF: /* 0x191 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (401 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_92FF: /* 0x192 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (402 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_93FF: /* 0x193 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (403 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_94FF: /* 0x194 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (404 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_95FF: /* 0x195 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (405 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_96FF: /* 0x196 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (406 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_97FF: /* 0x197 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (407 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_98FF: /* 0x198 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (408 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_99FF: /* 0x199 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (409 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9AFF: /* 0x19a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (410 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9BFF: /* 0x19b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (411 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9CFF: /* 0x19c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (412 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9DFF: /* 0x19d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (413 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9EFF: /* 0x19e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (414 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9FFF: /* 0x19f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (415 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A0FF: /* 0x1a0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (416 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A1FF: /* 0x1a1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (417 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A2FF: /* 0x1a2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (418 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A3FF: /* 0x1a3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (419 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A4FF: /* 0x1a4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (420 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A5FF: /* 0x1a5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (421 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A6FF: /* 0x1a6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (422 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A7FF: /* 0x1a7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (423 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A8FF: /* 0x1a8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (424 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A9FF: /* 0x1a9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (425 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_AAFF: /* 0x1aa */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (426 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ABFF: /* 0x1ab */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (427 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ACFF: /* 0x1ac */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (428 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ADFF: /* 0x1ad */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (429 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_AEFF: /* 0x1ae */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (430 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_AFFF: /* 0x1af */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (431 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B0FF: /* 0x1b0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (432 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B1FF: /* 0x1b1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (433 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B2FF: /* 0x1b2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (434 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B3FF: /* 0x1b3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (435 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B4FF: /* 0x1b4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (436 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B5FF: /* 0x1b5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (437 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B6FF: /* 0x1b6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (438 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B7FF: /* 0x1b7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (439 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B8FF: /* 0x1b8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (440 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B9FF: /* 0x1b9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (441 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BAFF: /* 0x1ba */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (442 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BBFF: /* 0x1bb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (443 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BCFF: /* 0x1bc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (444 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BDFF: /* 0x1bd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (445 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BEFF: /* 0x1be */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (446 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BFFF: /* 0x1bf */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (447 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C0FF: /* 0x1c0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (448 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C1FF: /* 0x1c1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (449 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C2FF: /* 0x1c2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (450 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C3FF: /* 0x1c3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (451 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C4FF: /* 0x1c4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (452 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C5FF: /* 0x1c5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (453 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C6FF: /* 0x1c6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (454 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C7FF: /* 0x1c7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (455 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C8FF: /* 0x1c8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (456 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C9FF: /* 0x1c9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (457 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CAFF: /* 0x1ca */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (458 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CBFF: /* 0x1cb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (459 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CCFF: /* 0x1cc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (460 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CDFF: /* 0x1cd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (461 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CEFF: /* 0x1ce */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (462 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CFFF: /* 0x1cf */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (463 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D0FF: /* 0x1d0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (464 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D1FF: /* 0x1d1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (465 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D2FF: /* 0x1d2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (466 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D3FF: /* 0x1d3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (467 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D4FF: /* 0x1d4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (468 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D5FF: /* 0x1d5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (469 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D6FF: /* 0x1d6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (470 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D7FF: /* 0x1d7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (471 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D8FF: /* 0x1d8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (472 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D9FF: /* 0x1d9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (473 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DAFF: /* 0x1da */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (474 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DBFF: /* 0x1db */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (475 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DCFF: /* 0x1dc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (476 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DDFF: /* 0x1dd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (477 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DEFF: /* 0x1de */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (478 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DFFF: /* 0x1df */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (479 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E0FF: /* 0x1e0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (480 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E1FF: /* 0x1e1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (481 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E2FF: /* 0x1e2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (482 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E3FF: /* 0x1e3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (483 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E4FF: /* 0x1e4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (484 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E5FF: /* 0x1e5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (485 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E6FF: /* 0x1e6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (486 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E7FF: /* 0x1e7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (487 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E8FF: /* 0x1e8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (488 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E9FF: /* 0x1e9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (489 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EAFF: /* 0x1ea */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (490 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EBFF: /* 0x1eb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (491 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ECFF: /* 0x1ec */
+.L_ALT_OP_UNUSED_FF: /* 0xff */
/* File: armv5te/alt_stub.S */
/*
* Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
@@ -25774,444 +15626,7 @@ dvmAsmAltInstructionStart = .L_ALT_OP_NOP
* bail to the real handler if breakFlags==0.
*/
ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (492 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EDFF: /* 0x1ed */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (493 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EEFF: /* 0x1ee */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (494 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EFFF: /* 0x1ef */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (495 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_F0FF: /* 0x1f0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (496 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_F1FF: /* 0x1f1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (497 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_OBJECT_INIT_JUMBO: /* 0x1f2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (498 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_VOLATILE_JUMBO: /* 0x1f3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (499 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_WIDE_VOLATILE_JUMBO: /* 0x1f4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (500 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_OBJECT_VOLATILE_JUMBO: /* 0x1f5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (501 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_VOLATILE_JUMBO: /* 0x1f6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (502 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_WIDE_VOLATILE_JUMBO: /* 0x1f7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (503 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_OBJECT_VOLATILE_JUMBO: /* 0x1f8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (504 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_VOLATILE_JUMBO: /* 0x1f9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (505 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_WIDE_VOLATILE_JUMBO: /* 0x1fa */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (506 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_OBJECT_VOLATILE_JUMBO: /* 0x1fb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (507 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_VOLATILE_JUMBO: /* 0x1fc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (508 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_WIDE_VOLATILE_JUMBO: /* 0x1fd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (509 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_OBJECT_VOLATILE_JUMBO: /* 0x1fe */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (510 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_THROW_VERIFICATION_ERROR_JUMBO: /* 0x1ff */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (511 * 64)
+ adrl lr, dvmAsmInstructionStart + (255 * 64)
ldr rIBASE, [rSELF, #offThread_curHandlerTable]
cmp r3, #0
bxeq lr @ nothing to do - jump to real handler
@@ -26694,35 +16109,6 @@ save_callsiteinfo:
#endif
/*
- * Common code for jumbo method invocation.
- * NOTE: this adjusts rPC to account for the difference in instruction width.
- * As a result, the savedPc in the stack frame will not be wholly accurate. So
- * long as that is only used for source file line number calculations, we're
- * okay.
- */
-common_invokeMethodJumboNoThis:
-#if defined(WITH_JIT)
- /* On entry: r0 is "Method* methodToCall */
- mov r9, #0 @ clear "this"
-#endif
-common_invokeMethodJumbo:
- /* On entry: r0 is "Method* methodToCall, r9 is "this" */
-.LinvokeNewJumbo:
-#if defined(WITH_JIT)
- ldrh r1, [rSELF, #offThread_subMode]
- ands r1, #kSubModeJitTraceBuild
- blne save_callsiteinfo
-#endif
- @ prepare to copy args to "outs" area of current frame
- add rPC, rPC, #4 @ adjust pc to make return consistent
- FETCH(r2, 1) @ r2<- BBBB (arg count)
- SAVEAREA_FROM_FP(r10, rFP) @ r10<- stack save area
- cmp r2, #0 @ no args?
- beq .LinvokeArgsDone @ if no args, skip the rest
- FETCH(r1, 2) @ r1<- CCCC
- b .LinvokeRangeArgs @ handle args like invoke range
-
-/*
* Common code for method invocation with range.
*
* On entry:
diff --git a/vm/mterp/out/InterpAsm-armv6j.S b/vm/mterp/out/InterpAsm-armv6j.S
index 0f765cfbf..4a9a52f47 100644
--- a/vm/mterp/out/InterpAsm-armv6j.S
+++ b/vm/mterp/out/InterpAsm-armv6j.S
@@ -8022,3126 +8022,12 @@ d2i_doconv:
/* ------------------------------ */
.balign 64
-.L_OP_DISPATCH_FF: /* 0xff */
-/* File: armv5te/OP_DISPATCH_FF.S */
- mov ip, rINST, lsr #8 @ ip<- extended opcode
- add ip, ip, #256 @ add offset for extended opcodes
- GOTO_OPCODE(ip) @ go to proper extended handler
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_CONST_CLASS_JUMBO: /* 0x100 */
-/* File: armv5te/OP_CONST_CLASS_JUMBO.S */
- /* const-class/jumbo vBBBB, Class@AAAAAAAA */
- FETCH(r0, 1) @ r0<- aaaa (lo)
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<-self>methodClassDex
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResClasses] @ r2<- dvmDex->pResClasses
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- FETCH(r9, 3) @ r9<- BBBB
- ldr r0, [r2, r1, lsl #2] @ r0<- pResClasses[AAAAaaaa]
- cmp r0, #0 @ not yet resolved?
- beq .LOP_CONST_CLASS_JUMBO_resolve
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_CHECK_CAST_JUMBO: /* 0x101 */
-/* File: armv5te/OP_CHECK_CAST_JUMBO.S */
- /*
- * Check to see if a cast from one class to another is allowed.
- */
- /* check-cast/jumbo vBBBB, class@AAAAAAAA */
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r3, 3) @ r3<- BBBB
- orr r2, r0, r2, lsl #16 @ r2<- AAAAaaaa
- GET_VREG(r9, r3) @ r9<- object
- ldr r0, [rSELF, #offThread_methodClassDex] @ r0<- pDvmDex
- cmp r9, #0 @ is object null?
- ldr r0, [r0, #offDvmDex_pResClasses] @ r0<- pDvmDex->pResClasses
- beq .LOP_CHECK_CAST_JUMBO_okay @ null obj, cast always succeeds
- ldr r1, [r0, r2, lsl #2] @ r1<- resolved class
- ldr r0, [r9, #offObject_clazz] @ r0<- obj->clazz
- cmp r1, #0 @ have we resolved this before?
- beq .LOP_CHECK_CAST_JUMBO_resolve @ not resolved, do it now
-.LOP_CHECK_CAST_JUMBO_resolved:
- cmp r0, r1 @ same class (trivial success)?
- bne .LOP_CHECK_CAST_JUMBO_fullcheck @ no, do full check
- b .LOP_CHECK_CAST_JUMBO_okay @ yes, finish up
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INSTANCE_OF_JUMBO: /* 0x102 */
-/* File: armv5te/OP_INSTANCE_OF_JUMBO.S */
- /*
- * Check to see if an object reference is an instance of a class.
- *
- * Most common situation is a non-null object, being compared against
- * an already-resolved class.
- *
- * TODO: convert most of this into a common subroutine, shared with
- * OP_INSTANCE_OF.S.
- */
- /* instance-of/jumbo vBBBB, vCCCC, class@AAAAAAAA */
- FETCH(r3, 4) @ r3<- vCCCC
- FETCH(r9, 3) @ r9<- vBBBB
- GET_VREG(r0, r3) @ r0<- vCCCC (object)
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- pDvmDex
- cmp r0, #0 @ is object null?
- beq .LOP_INSTANCE_OF_JUMBO_store @ null obj, not an instance, store r0
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r3, 2) @ r3<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResClasses] @ r2<- pDvmDex->pResClasses
- orr r3, r1, r3, lsl #16 @ r3<- AAAAaaaa
- ldr r1, [r2, r3, lsl #2] @ r1<- resolved class
- ldr r0, [r0, #offObject_clazz] @ r0<- obj->clazz
- cmp r1, #0 @ have we resolved this before?
- beq .LOP_INSTANCE_OF_JUMBO_resolve @ not resolved, do it now
- b .LOP_INSTANCE_OF_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_NEW_INSTANCE_JUMBO: /* 0x103 */
-/* File: armv5te/OP_NEW_INSTANCE_JUMBO.S */
- /*
- * Create a new instance of a class.
- */
- /* new-instance/jumbo vBBBB, class@AAAAAAAA */
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
-#if defined(WITH_JIT)
- add r10, r3, r1, lsl #2 @ r10<- &resolved_class
-#endif
- EXPORT_PC() @ req'd for init, resolve, alloc
- cmp r0, #0 @ already resolved?
- beq .LOP_NEW_INSTANCE_JUMBO_resolve @ no, resolve it now
-.LOP_NEW_INSTANCE_JUMBO_resolved: @ r0=class
- ldrb r1, [r0, #offClassObject_status] @ r1<- ClassStatus enum
- cmp r1, #CLASS_INITIALIZED @ has class been initialized?
- bne .LOP_NEW_INSTANCE_JUMBO_needinit @ no, init class now
-.LOP_NEW_INSTANCE_JUMBO_initialized: @ r0=class
- mov r1, #ALLOC_DONT_TRACK @ flags for alloc call
- bl dvmAllocObject @ r0<- new object
- b .LOP_NEW_INSTANCE_JUMBO_finish @ continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_NEW_ARRAY_JUMBO: /* 0x104 */
-/* File: armv5te/OP_NEW_ARRAY_JUMBO.S */
- /*
- * Allocate an array of objects, specified with the array class
- * and a count.
- *
- * The verifier guarantees that this is an array class, so we don't
- * check for it here.
- */
- /* new-array/jumbo vBBBB, vCCCC, class@AAAAAAAA */
- FETCH(r2, 1) @ r2<- aaaa (lo)
- FETCH(r3, 2) @ r3<- AAAA (hi)
- FETCH(r0, 4) @ r0<- vCCCC
- orr r2, r2, r3, lsl #16 @ r2<- AAAAaaaa
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- GET_VREG(r1, r0) @ r1<- vCCCC (array length)
- ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
- cmp r1, #0 @ check length
- ldr r0, [r3, r2, lsl #2] @ r0<- resolved class
- bmi common_errNegativeArraySize @ negative length, bail - len in r1
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ req'd for resolve, alloc
- bne .LOP_NEW_ARRAY_JUMBO_finish @ resolved, continue
- b .LOP_NEW_ARRAY_JUMBO_resolve @ do resolve now
-
-/* ------------------------------ */
- .balign 64
-.L_OP_FILLED_NEW_ARRAY_JUMBO: /* 0x105 */
-/* File: armv5te/OP_FILLED_NEW_ARRAY_JUMBO.S */
- /*
- * Create a new array with elements filled from registers.
- *
- * TODO: convert most of this into a common subroutine, shared with
- * OP_FILLED_NEW_ARRAY.S.
- */
- /* filled-new-array/jumbo {vCCCC..v(CCCC+BBBB-1)}, type@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
- EXPORT_PC() @ need for resolve and alloc
- cmp r0, #0 @ already resolved?
- bne .LOP_FILLED_NEW_ARRAY_JUMBO_continue @ yes, continue on
-8: ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- call(clazz, ref)
- cmp r0, #0 @ got null?
- beq common_exceptionThrown @ yes, handle exception
- b .LOP_FILLED_NEW_ARRAY_JUMBO_continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_JUMBO: /* 0x106 */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_WIDE_JUMBO: /* 0x107 */
-/* File: armv5te/OP_IGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit instance field get.
- */
- /* iget-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_WIDE_JUMBO_finish @ no, already resolved
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_WIDE_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_OBJECT_JUMBO: /* 0x108 */
-/* File: armv5te/OP_IGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_OBJECT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_OBJECT_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_BOOLEAN_JUMBO: /* 0x109 */
-/* File: armv5te/OP_IGET_BOOLEAN_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrb", "sqnum":"1" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_BOOLEAN_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_BOOLEAN_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_BYTE_JUMBO: /* 0x10a */
-/* File: armv5te/OP_IGET_BYTE_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrsb", "sqnum":"2" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_BYTE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_BYTE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_CHAR_JUMBO: /* 0x10b */
-/* File: armv5te/OP_IGET_CHAR_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrh", "sqnum":"3" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_CHAR_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_CHAR_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_SHORT_JUMBO: /* 0x10c */
-/* File: armv5te/OP_IGET_SHORT_JUMBO.S */
-@include "armv5te/OP_IGET_JUMBO.S" { "load":"ldrsh", "sqnum":"4" }
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_SHORT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_SHORT_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_JUMBO: /* 0x10d */
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_WIDE_JUMBO: /* 0x10e */
-/* File: armv5te/OP_IPUT_WIDE_JUMBO.S */
- /* iput-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[B], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_WIDE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_WIDE_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_OBJECT_JUMBO: /* 0x10f */
-/* File: armv5te/OP_IPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- */
- /* iput-object/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_OBJECT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_OBJECT_JUMBO_resolved @ resolved, continue
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_BOOLEAN_JUMBO: /* 0x110 */
-/* File: armv5te/OP_IPUT_BOOLEAN_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strb", "sqnum":"1" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_BOOLEAN_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_BOOLEAN_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_BYTE_JUMBO: /* 0x111 */
-/* File: armv5te/OP_IPUT_BYTE_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strb", "sqnum":"2" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_BYTE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_BYTE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_CHAR_JUMBO: /* 0x112 */
-/* File: armv5te/OP_IPUT_CHAR_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strh", "sqnum":"3" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_CHAR_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_CHAR_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_SHORT_JUMBO: /* 0x113 */
-/* File: armv5te/OP_IPUT_SHORT_JUMBO.S */
-@include "armv5te/OP_IPUT_JUMBO.S" { "store":"strh", "sqnum":"4" }
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_SHORT_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_SHORT_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_JUMBO: /* 0x114 */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_WIDE_JUMBO: /* 0x115 */
-/* File: armv5te/OP_SGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SGET handler.
- */
- /* sget-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResFields] @ r2<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_WIDE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_WIDE_JUMBO_finish:
- FETCH(r9, 3) @ r9<- BBBB
- .if 0
- add r0, r0, #offStaticField_value @ r0<- pointer to data
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r0, #offStaticField_value] @ r0/r1<- field value (aligned)
- .endif
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- stmia r9, {r0-r1} @ vBBBB/vBBBB+1<- r0/r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_OBJECT_JUMBO: /* 0x116 */
-/* File: armv5te/OP_SGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_OBJECT_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_OBJECT_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_BOOLEAN_JUMBO: /* 0x117 */
-/* File: armv5te/OP_SGET_BOOLEAN_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_BOOLEAN_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_BOOLEAN_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_BYTE_JUMBO: /* 0x118 */
-/* File: armv5te/OP_SGET_BYTE_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_BYTE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_BYTE_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_CHAR_JUMBO: /* 0x119 */
-/* File: armv5te/OP_SGET_CHAR_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_CHAR_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_CHAR_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_SHORT_JUMBO: /* 0x11a */
-/* File: armv5te/OP_SGET_SHORT_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_SHORT_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_SHORT_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_JUMBO: /* 0x11b */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_WIDE_JUMBO: /* 0x11c */
-/* File: armv5te/OP_SPUT_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SPUT handler.
- */
- /* sput-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r0, [rSELF, #offThread_methodClassDex] @ r0<- DvmDex
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- ldr r10, [r0, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- FETCH(r9, 3) @ r9<- BBBB
- ldr r2, [r10, r1, lsl #2] @ r2<- resolved StaticField ptr
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- cmp r2, #0 @ is resolved entry null?
- beq .LOP_SPUT_WIDE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_WIDE_JUMBO_finish: @ field ptr in r2, BBBB in r9
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- ldmia r9, {r0-r1} @ r0/r1<- vBBBB/vBBBB+1
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 0
- add r2, r2, #offStaticField_value @ r2<- pointer to data
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r2, #offStaticField_value] @ field<- vBBBB/vBBBB+1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_OBJECT_JUMBO: /* 0x11d */
-/* File: armv5te/OP_SPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler for objects
- */
- /* sput-object/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_OBJECT_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_OBJECT_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- ldr r9, [r0, #offField_clazz] @ r9<- field->clazz
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- b .LOP_SPUT_OBJECT_JUMBO_end
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_BOOLEAN_JUMBO: /* 0x11e */
-/* File: armv5te/OP_SPUT_BOOLEAN_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_BOOLEAN_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_BOOLEAN_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_BYTE_JUMBO: /* 0x11f */
-/* File: armv5te/OP_SPUT_BYTE_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_BYTE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_BYTE_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_CHAR_JUMBO: /* 0x120 */
-/* File: armv5te/OP_SPUT_CHAR_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_CHAR_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_CHAR_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_SHORT_JUMBO: /* 0x121 */
-/* File: armv5te/OP_SPUT_SHORT_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_SHORT_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_SHORT_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_VIRTUAL_JUMBO: /* 0x122 */
-/* File: armv5te/OP_INVOKE_VIRTUAL_JUMBO.S */
- /*
- * Handle a virtual method call.
- */
- /* invoke-virtual/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ must export for invoke
- bne .LOP_INVOKE_VIRTUAL_JUMBO_continue @ yes, continue on
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- mov r2, #METHOD_VIRTUAL @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
- bne .LOP_INVOKE_VIRTUAL_JUMBO_continue @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_SUPER_JUMBO: /* 0x123 */
-/* File: armv5te/OP_INVOKE_SUPER_JUMBO.S */
- /*
- * Handle a "super" method call.
- */
- /* invoke-super/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- FETCH(r10, 4) @ r10<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- GET_VREG(r9, r10) @ r9<- "this" ptr
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
- cmp r9, #0 @ null "this"?
- ldr r10, [rSELF, #offThread_method] @ r10<- current method
- beq common_errNullObject @ null "this", throw exception
- cmp r0, #0 @ already resolved?
- ldr r10, [r10, #offMethod_clazz] @ r10<- method->clazz
- EXPORT_PC() @ must export for invoke
- bne .LOP_INVOKE_SUPER_JUMBO_continue @ resolved, continue on
- b .LOP_INVOKE_SUPER_JUMBO_resolve @ do resolve now
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_DIRECT_JUMBO: /* 0x124 */
-/* File: armv5te/OP_INVOKE_DIRECT_JUMBO.S */
- /*
- * Handle a direct method call.
- *
- * (We could defer the "is 'this' pointer null" test to the common
- * method invocation code, and use a flag to indicate that static
- * calls don't count. If we do this as part of copying the arguments
- * out we could avoiding loading the first arg twice.)
- *
- */
- /* invoke-direct/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- FETCH(r10, 4) @ r10<- CCCC
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ must export for invoke
- GET_VREG(r9, r10) @ r9<- "this" ptr
- beq .LOP_INVOKE_DIRECT_JUMBO_resolve @ not resolved, do it now
-.LOP_INVOKE_DIRECT_JUMBO_finish:
- cmp r9, #0 @ null "this" ref?
- bne common_invokeMethodJumbo @ (r0=method, r9="this")
- b common_errNullObject @ yes, throw exception
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_STATIC_JUMBO: /* 0x125 */
-/* File: armv5te/OP_INVOKE_STATIC_JUMBO.S */
- /*
- * Handle a static method call.
- */
- /* invoke-static/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- pDvmDex
- FETCH(r0, 1) @ r1<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
-#if defined(WITH_JIT)
- add r10, r3, r1, lsl #2 @ r10<- &resolved_methodToCall
-#endif
- cmp r0, #0 @ already resolved?
- EXPORT_PC() @ must export for invoke
- bne common_invokeMethodJumboNoThis @ (r0=method)
- b .LOP_INVOKE_STATIC_JUMBO_resolve
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_INTERFACE_JUMBO: /* 0x126 */
-/* File: armv5te/OP_INVOKE_INTERFACE_JUMBO.S */
- /*
- * Handle an interface method call.
- */
- /* invoke-interface/jumbo {vCCCC..v(CCCC+BBBB-1)}, meth@AAAAAAAA */
- FETCH(r2, 4) @ r2<- CCCC
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- EXPORT_PC() @ must export for invoke
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- GET_VREG(r9, r2) @ r9<- first arg ("this")
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- methodClassDex
- cmp r9, #0 @ null obj?
- ldr r2, [rSELF, #offThread_method] @ r2<- method
- beq common_errNullObject @ yes, fail
- ldr r0, [r9, #offObject_clazz] @ r0<- thisPtr->clazz
- bl dvmFindInterfaceMethodInCache @ r0<- call(class, ref, method, dex)
- cmp r0, #0 @ failed?
- beq common_exceptionThrown @ yes, handle exception
- b common_invokeMethodJumbo @ (r0=method, r9="this")
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_27FF: /* 0x127 */
-/* File: armv5te/OP_UNUSED_27FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_28FF: /* 0x128 */
-/* File: armv5te/OP_UNUSED_28FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_29FF: /* 0x129 */
-/* File: armv5te/OP_UNUSED_29FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2AFF: /* 0x12a */
-/* File: armv5te/OP_UNUSED_2AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2BFF: /* 0x12b */
-/* File: armv5te/OP_UNUSED_2BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2CFF: /* 0x12c */
-/* File: armv5te/OP_UNUSED_2CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2DFF: /* 0x12d */
-/* File: armv5te/OP_UNUSED_2DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2EFF: /* 0x12e */
-/* File: armv5te/OP_UNUSED_2EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_2FFF: /* 0x12f */
-/* File: armv5te/OP_UNUSED_2FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_30FF: /* 0x130 */
-/* File: armv5te/OP_UNUSED_30FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_31FF: /* 0x131 */
-/* File: armv5te/OP_UNUSED_31FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_32FF: /* 0x132 */
-/* File: armv5te/OP_UNUSED_32FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_33FF: /* 0x133 */
-/* File: armv5te/OP_UNUSED_33FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_34FF: /* 0x134 */
-/* File: armv5te/OP_UNUSED_34FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_35FF: /* 0x135 */
-/* File: armv5te/OP_UNUSED_35FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_36FF: /* 0x136 */
-/* File: armv5te/OP_UNUSED_36FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_37FF: /* 0x137 */
-/* File: armv5te/OP_UNUSED_37FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_38FF: /* 0x138 */
-/* File: armv5te/OP_UNUSED_38FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_39FF: /* 0x139 */
-/* File: armv5te/OP_UNUSED_39FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3AFF: /* 0x13a */
-/* File: armv5te/OP_UNUSED_3AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3BFF: /* 0x13b */
-/* File: armv5te/OP_UNUSED_3BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3CFF: /* 0x13c */
-/* File: armv5te/OP_UNUSED_3CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3DFF: /* 0x13d */
-/* File: armv5te/OP_UNUSED_3DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3EFF: /* 0x13e */
-/* File: armv5te/OP_UNUSED_3EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_3FFF: /* 0x13f */
-/* File: armv5te/OP_UNUSED_3FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_40FF: /* 0x140 */
-/* File: armv5te/OP_UNUSED_40FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_41FF: /* 0x141 */
-/* File: armv5te/OP_UNUSED_41FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_42FF: /* 0x142 */
-/* File: armv5te/OP_UNUSED_42FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_43FF: /* 0x143 */
-/* File: armv5te/OP_UNUSED_43FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_44FF: /* 0x144 */
-/* File: armv5te/OP_UNUSED_44FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_45FF: /* 0x145 */
-/* File: armv5te/OP_UNUSED_45FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_46FF: /* 0x146 */
-/* File: armv5te/OP_UNUSED_46FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_47FF: /* 0x147 */
-/* File: armv5te/OP_UNUSED_47FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_48FF: /* 0x148 */
-/* File: armv5te/OP_UNUSED_48FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_49FF: /* 0x149 */
-/* File: armv5te/OP_UNUSED_49FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4AFF: /* 0x14a */
-/* File: armv5te/OP_UNUSED_4AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4BFF: /* 0x14b */
-/* File: armv5te/OP_UNUSED_4BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4CFF: /* 0x14c */
-/* File: armv5te/OP_UNUSED_4CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4DFF: /* 0x14d */
-/* File: armv5te/OP_UNUSED_4DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4EFF: /* 0x14e */
-/* File: armv5te/OP_UNUSED_4EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_4FFF: /* 0x14f */
-/* File: armv5te/OP_UNUSED_4FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_50FF: /* 0x150 */
-/* File: armv5te/OP_UNUSED_50FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_51FF: /* 0x151 */
-/* File: armv5te/OP_UNUSED_51FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_52FF: /* 0x152 */
-/* File: armv5te/OP_UNUSED_52FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_53FF: /* 0x153 */
-/* File: armv5te/OP_UNUSED_53FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_54FF: /* 0x154 */
-/* File: armv5te/OP_UNUSED_54FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_55FF: /* 0x155 */
-/* File: armv5te/OP_UNUSED_55FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_56FF: /* 0x156 */
-/* File: armv5te/OP_UNUSED_56FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_57FF: /* 0x157 */
-/* File: armv5te/OP_UNUSED_57FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_58FF: /* 0x158 */
-/* File: armv5te/OP_UNUSED_58FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_59FF: /* 0x159 */
-/* File: armv5te/OP_UNUSED_59FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5AFF: /* 0x15a */
-/* File: armv5te/OP_UNUSED_5AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5BFF: /* 0x15b */
-/* File: armv5te/OP_UNUSED_5BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5CFF: /* 0x15c */
-/* File: armv5te/OP_UNUSED_5CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5DFF: /* 0x15d */
-/* File: armv5te/OP_UNUSED_5DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5EFF: /* 0x15e */
-/* File: armv5te/OP_UNUSED_5EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_5FFF: /* 0x15f */
-/* File: armv5te/OP_UNUSED_5FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_60FF: /* 0x160 */
-/* File: armv5te/OP_UNUSED_60FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_61FF: /* 0x161 */
-/* File: armv5te/OP_UNUSED_61FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_62FF: /* 0x162 */
-/* File: armv5te/OP_UNUSED_62FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_63FF: /* 0x163 */
-/* File: armv5te/OP_UNUSED_63FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_64FF: /* 0x164 */
-/* File: armv5te/OP_UNUSED_64FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_65FF: /* 0x165 */
-/* File: armv5te/OP_UNUSED_65FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_66FF: /* 0x166 */
-/* File: armv5te/OP_UNUSED_66FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_67FF: /* 0x167 */
-/* File: armv5te/OP_UNUSED_67FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_68FF: /* 0x168 */
-/* File: armv5te/OP_UNUSED_68FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_69FF: /* 0x169 */
-/* File: armv5te/OP_UNUSED_69FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6AFF: /* 0x16a */
-/* File: armv5te/OP_UNUSED_6AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6BFF: /* 0x16b */
-/* File: armv5te/OP_UNUSED_6BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6CFF: /* 0x16c */
-/* File: armv5te/OP_UNUSED_6CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6DFF: /* 0x16d */
-/* File: armv5te/OP_UNUSED_6DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6EFF: /* 0x16e */
-/* File: armv5te/OP_UNUSED_6EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_6FFF: /* 0x16f */
-/* File: armv5te/OP_UNUSED_6FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_70FF: /* 0x170 */
-/* File: armv5te/OP_UNUSED_70FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_71FF: /* 0x171 */
-/* File: armv5te/OP_UNUSED_71FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_72FF: /* 0x172 */
-/* File: armv5te/OP_UNUSED_72FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_73FF: /* 0x173 */
-/* File: armv5te/OP_UNUSED_73FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_74FF: /* 0x174 */
-/* File: armv5te/OP_UNUSED_74FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_75FF: /* 0x175 */
-/* File: armv5te/OP_UNUSED_75FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_76FF: /* 0x176 */
-/* File: armv5te/OP_UNUSED_76FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_77FF: /* 0x177 */
-/* File: armv5te/OP_UNUSED_77FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_78FF: /* 0x178 */
-/* File: armv5te/OP_UNUSED_78FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_79FF: /* 0x179 */
-/* File: armv5te/OP_UNUSED_79FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7AFF: /* 0x17a */
-/* File: armv5te/OP_UNUSED_7AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7BFF: /* 0x17b */
-/* File: armv5te/OP_UNUSED_7BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7CFF: /* 0x17c */
-/* File: armv5te/OP_UNUSED_7CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7DFF: /* 0x17d */
-/* File: armv5te/OP_UNUSED_7DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7EFF: /* 0x17e */
-/* File: armv5te/OP_UNUSED_7EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_7FFF: /* 0x17f */
-/* File: armv5te/OP_UNUSED_7FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_80FF: /* 0x180 */
-/* File: armv5te/OP_UNUSED_80FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_81FF: /* 0x181 */
-/* File: armv5te/OP_UNUSED_81FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_82FF: /* 0x182 */
-/* File: armv5te/OP_UNUSED_82FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_83FF: /* 0x183 */
-/* File: armv5te/OP_UNUSED_83FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_84FF: /* 0x184 */
-/* File: armv5te/OP_UNUSED_84FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_85FF: /* 0x185 */
-/* File: armv5te/OP_UNUSED_85FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_86FF: /* 0x186 */
-/* File: armv5te/OP_UNUSED_86FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_87FF: /* 0x187 */
-/* File: armv5te/OP_UNUSED_87FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_88FF: /* 0x188 */
-/* File: armv5te/OP_UNUSED_88FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_89FF: /* 0x189 */
-/* File: armv5te/OP_UNUSED_89FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8AFF: /* 0x18a */
-/* File: armv5te/OP_UNUSED_8AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8BFF: /* 0x18b */
-/* File: armv5te/OP_UNUSED_8BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8CFF: /* 0x18c */
-/* File: armv5te/OP_UNUSED_8CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8DFF: /* 0x18d */
-/* File: armv5te/OP_UNUSED_8DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8EFF: /* 0x18e */
-/* File: armv5te/OP_UNUSED_8EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_8FFF: /* 0x18f */
-/* File: armv5te/OP_UNUSED_8FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_90FF: /* 0x190 */
-/* File: armv5te/OP_UNUSED_90FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_91FF: /* 0x191 */
-/* File: armv5te/OP_UNUSED_91FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_92FF: /* 0x192 */
-/* File: armv5te/OP_UNUSED_92FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_93FF: /* 0x193 */
-/* File: armv5te/OP_UNUSED_93FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_94FF: /* 0x194 */
-/* File: armv5te/OP_UNUSED_94FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_95FF: /* 0x195 */
-/* File: armv5te/OP_UNUSED_95FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_96FF: /* 0x196 */
-/* File: armv5te/OP_UNUSED_96FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_97FF: /* 0x197 */
-/* File: armv5te/OP_UNUSED_97FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_98FF: /* 0x198 */
-/* File: armv5te/OP_UNUSED_98FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_99FF: /* 0x199 */
-/* File: armv5te/OP_UNUSED_99FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9AFF: /* 0x19a */
-/* File: armv5te/OP_UNUSED_9AFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9BFF: /* 0x19b */
-/* File: armv5te/OP_UNUSED_9BFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9CFF: /* 0x19c */
-/* File: armv5te/OP_UNUSED_9CFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9DFF: /* 0x19d */
-/* File: armv5te/OP_UNUSED_9DFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9EFF: /* 0x19e */
-/* File: armv5te/OP_UNUSED_9EFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_9FFF: /* 0x19f */
-/* File: armv5te/OP_UNUSED_9FFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A0FF: /* 0x1a0 */
-/* File: armv5te/OP_UNUSED_A0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A1FF: /* 0x1a1 */
-/* File: armv5te/OP_UNUSED_A1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A2FF: /* 0x1a2 */
-/* File: armv5te/OP_UNUSED_A2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A3FF: /* 0x1a3 */
-/* File: armv5te/OP_UNUSED_A3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A4FF: /* 0x1a4 */
-/* File: armv5te/OP_UNUSED_A4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A5FF: /* 0x1a5 */
-/* File: armv5te/OP_UNUSED_A5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A6FF: /* 0x1a6 */
-/* File: armv5te/OP_UNUSED_A6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A7FF: /* 0x1a7 */
-/* File: armv5te/OP_UNUSED_A7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A8FF: /* 0x1a8 */
-/* File: armv5te/OP_UNUSED_A8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_A9FF: /* 0x1a9 */
-/* File: armv5te/OP_UNUSED_A9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_AAFF: /* 0x1aa */
-/* File: armv5te/OP_UNUSED_AAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ABFF: /* 0x1ab */
-/* File: armv5te/OP_UNUSED_ABFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ACFF: /* 0x1ac */
-/* File: armv5te/OP_UNUSED_ACFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ADFF: /* 0x1ad */
-/* File: armv5te/OP_UNUSED_ADFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_AEFF: /* 0x1ae */
-/* File: armv5te/OP_UNUSED_AEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_AFFF: /* 0x1af */
-/* File: armv5te/OP_UNUSED_AFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B0FF: /* 0x1b0 */
-/* File: armv5te/OP_UNUSED_B0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B1FF: /* 0x1b1 */
-/* File: armv5te/OP_UNUSED_B1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B2FF: /* 0x1b2 */
-/* File: armv5te/OP_UNUSED_B2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B3FF: /* 0x1b3 */
-/* File: armv5te/OP_UNUSED_B3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B4FF: /* 0x1b4 */
-/* File: armv5te/OP_UNUSED_B4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B5FF: /* 0x1b5 */
-/* File: armv5te/OP_UNUSED_B5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B6FF: /* 0x1b6 */
-/* File: armv5te/OP_UNUSED_B6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B7FF: /* 0x1b7 */
-/* File: armv5te/OP_UNUSED_B7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B8FF: /* 0x1b8 */
-/* File: armv5te/OP_UNUSED_B8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_B9FF: /* 0x1b9 */
-/* File: armv5te/OP_UNUSED_B9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BAFF: /* 0x1ba */
-/* File: armv5te/OP_UNUSED_BAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BBFF: /* 0x1bb */
-/* File: armv5te/OP_UNUSED_BBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BCFF: /* 0x1bc */
-/* File: armv5te/OP_UNUSED_BCFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BDFF: /* 0x1bd */
-/* File: armv5te/OP_UNUSED_BDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BEFF: /* 0x1be */
-/* File: armv5te/OP_UNUSED_BEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_BFFF: /* 0x1bf */
-/* File: armv5te/OP_UNUSED_BFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C0FF: /* 0x1c0 */
-/* File: armv5te/OP_UNUSED_C0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C1FF: /* 0x1c1 */
-/* File: armv5te/OP_UNUSED_C1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C2FF: /* 0x1c2 */
-/* File: armv5te/OP_UNUSED_C2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C3FF: /* 0x1c3 */
-/* File: armv5te/OP_UNUSED_C3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C4FF: /* 0x1c4 */
-/* File: armv5te/OP_UNUSED_C4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C5FF: /* 0x1c5 */
-/* File: armv5te/OP_UNUSED_C5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C6FF: /* 0x1c6 */
-/* File: armv5te/OP_UNUSED_C6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C7FF: /* 0x1c7 */
-/* File: armv5te/OP_UNUSED_C7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C8FF: /* 0x1c8 */
-/* File: armv5te/OP_UNUSED_C8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_C9FF: /* 0x1c9 */
-/* File: armv5te/OP_UNUSED_C9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CAFF: /* 0x1ca */
-/* File: armv5te/OP_UNUSED_CAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CBFF: /* 0x1cb */
-/* File: armv5te/OP_UNUSED_CBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CCFF: /* 0x1cc */
-/* File: armv5te/OP_UNUSED_CCFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CDFF: /* 0x1cd */
-/* File: armv5te/OP_UNUSED_CDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CEFF: /* 0x1ce */
-/* File: armv5te/OP_UNUSED_CEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_CFFF: /* 0x1cf */
-/* File: armv5te/OP_UNUSED_CFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D0FF: /* 0x1d0 */
-/* File: armv5te/OP_UNUSED_D0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D1FF: /* 0x1d1 */
-/* File: armv5te/OP_UNUSED_D1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D2FF: /* 0x1d2 */
-/* File: armv5te/OP_UNUSED_D2FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D3FF: /* 0x1d3 */
-/* File: armv5te/OP_UNUSED_D3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D4FF: /* 0x1d4 */
-/* File: armv5te/OP_UNUSED_D4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D5FF: /* 0x1d5 */
-/* File: armv5te/OP_UNUSED_D5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D6FF: /* 0x1d6 */
-/* File: armv5te/OP_UNUSED_D6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D7FF: /* 0x1d7 */
-/* File: armv5te/OP_UNUSED_D7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D8FF: /* 0x1d8 */
-/* File: armv5te/OP_UNUSED_D8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_D9FF: /* 0x1d9 */
-/* File: armv5te/OP_UNUSED_D9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DAFF: /* 0x1da */
-/* File: armv5te/OP_UNUSED_DAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DBFF: /* 0x1db */
-/* File: armv5te/OP_UNUSED_DBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DCFF: /* 0x1dc */
-/* File: armv5te/OP_UNUSED_DCFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DDFF: /* 0x1dd */
-/* File: armv5te/OP_UNUSED_DDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DEFF: /* 0x1de */
-/* File: armv5te/OP_UNUSED_DEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_DFFF: /* 0x1df */
-/* File: armv5te/OP_UNUSED_DFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E0FF: /* 0x1e0 */
-/* File: armv5te/OP_UNUSED_E0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E1FF: /* 0x1e1 */
-/* File: armv5te/OP_UNUSED_E1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E2FF: /* 0x1e2 */
-/* File: armv5te/OP_UNUSED_E2FF.S */
+.L_OP_UNUSED_FF: /* 0xff */
+/* File: armv5te/OP_UNUSED_FF.S */
/* File: armv5te/unused.S */
bl common_abort
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E3FF: /* 0x1e3 */
-/* File: armv5te/OP_UNUSED_E3FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E4FF: /* 0x1e4 */
-/* File: armv5te/OP_UNUSED_E4FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E5FF: /* 0x1e5 */
-/* File: armv5te/OP_UNUSED_E5FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E6FF: /* 0x1e6 */
-/* File: armv5te/OP_UNUSED_E6FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E7FF: /* 0x1e7 */
-/* File: armv5te/OP_UNUSED_E7FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E8FF: /* 0x1e8 */
-/* File: armv5te/OP_UNUSED_E8FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_E9FF: /* 0x1e9 */
-/* File: armv5te/OP_UNUSED_E9FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EAFF: /* 0x1ea */
-/* File: armv5te/OP_UNUSED_EAFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EBFF: /* 0x1eb */
-/* File: armv5te/OP_UNUSED_EBFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_ECFF: /* 0x1ec */
-/* File: armv5te/OP_UNUSED_ECFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EDFF: /* 0x1ed */
-/* File: armv5te/OP_UNUSED_EDFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EEFF: /* 0x1ee */
-/* File: armv5te/OP_UNUSED_EEFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_EFFF: /* 0x1ef */
-/* File: armv5te/OP_UNUSED_EFFF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_F0FF: /* 0x1f0 */
-/* File: armv5te/OP_UNUSED_F0FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_UNUSED_F1FF: /* 0x1f1 */
-/* File: armv5te/OP_UNUSED_F1FF.S */
-/* File: armv5te/unused.S */
- bl common_abort
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_INVOKE_OBJECT_INIT_JUMBO: /* 0x1f2 */
-/* File: armv5te/OP_INVOKE_OBJECT_INIT_JUMBO.S */
-/* File: armv5te/OP_INVOKE_OBJECT_INIT_RANGE.S */
- /*
- * Invoke Object.<init> on an object. In practice we know that
- * Object's nullary constructor doesn't do anything, so we just
- * skip it unless a debugger is active.
- */
- FETCH(r1, 4) @ r1<- CCCC
- GET_VREG(r0, r1) @ r0<- "this" ptr
- cmp r0, #0 @ check for NULL
- beq common_errNullObject @ export PC and throw NPE
- ldr r1, [r0, #offObject_clazz] @ r1<- obj->clazz
- ldr r2, [r1, #offClassObject_accessFlags] @ r2<- clazz->accessFlags
- tst r2, #CLASS_ISFINALIZABLE @ is this class finalizable?
- bne .LOP_INVOKE_OBJECT_INIT_JUMBO_setFinal @ yes, go
-.LOP_INVOKE_OBJECT_INIT_JUMBO_finish:
- ldrh r1, [rSELF, #offThread_subMode]
- ands r1, #kSubModeDebuggerActive @ debugger active?
- bne .LOP_INVOKE_OBJECT_INIT_JUMBO_debugger @ Yes - skip optimization
- FETCH_ADVANCE_INST(4+1) @ advance to next instr, load rINST
- GET_INST_OPCODE(ip) @ ip<- opcode from rINST
- GOTO_OPCODE(ip) @ execute it
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_VOLATILE_JUMBO: /* 0x1f3 */
-/* File: armv5te/OP_IGET_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_WIDE_VOLATILE_JUMBO: /* 0x1f4 */
-/* File: armv5te/OP_IGET_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit instance field get.
- */
- /* iget-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_WIDE_VOLATILE_JUMBO_finish @ no, already resolved
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_WIDE_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IGET_OBJECT_VOLATILE_JUMBO: /* 0x1f5 */
-/* File: armv5te/OP_IGET_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_IGET_JUMBO.S */
- /*
- * Jumbo 32-bit instance field get.
- *
- * for: iget/jumbo, iget-object/jumbo, iget-boolean/jumbo, iget-byte/jumbo,
- * iget-char/jumbo, iget-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IGET_OBJECT_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IGET_OBJECT_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_VOLATILE_JUMBO: /* 0x1f6 */
-/* File: armv5te/OP_IPUT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IPUT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- *
- * for: iput/jumbo, iput-boolean/jumbo, iput-byte/jumbo, iput-char/jumbo,
- * iput-short/jumbo
- */
- /* exop vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_WIDE_VOLATILE_JUMBO: /* 0x1f7 */
-/* File: armv5te/OP_IPUT_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IPUT_WIDE_JUMBO.S */
- /* iput-wide/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
- GET_VREG(r9, r0) @ r9<- fp[B], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_WIDE_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_WIDE_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_IPUT_OBJECT_VOLATILE_JUMBO: /* 0x1f8 */
-/* File: armv5te/OP_IPUT_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_IPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit instance field put.
- */
- /* iput-object/jumbo vBBBB, vCCCC, field@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- FETCH(r0, 4) @ r0<- CCCC
- ldr r3, [rSELF, #offThread_methodClassDex] @ r3<- DvmDex
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
- GET_VREG(r9, r0) @ r9<- fp[CCCC], the object pointer
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved InstField ptr
- cmp r0, #0 @ is resolved entry null?
- bne .LOP_IPUT_OBJECT_VOLATILE_JUMBO_finish @ no, already resolved
-8: ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveInstField @ r0<- resolved InstField ptr
- b .LOP_IPUT_OBJECT_VOLATILE_JUMBO_resolved @ resolved, continue
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_VOLATILE_JUMBO: /* 0x1f9 */
-/* File: armv5te/OP_SGET_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_VOLATILE_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_WIDE_VOLATILE_JUMBO: /* 0x1fa */
-/* File: armv5te/OP_SGET_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SGET_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SGET handler.
- */
- /* sget-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r2, [r2, #offDvmDex_pResFields] @ r2<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r2, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_WIDE_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_WIDE_VOLATILE_JUMBO_finish:
- FETCH(r9, 3) @ r9<- BBBB
- .if 1
- add r0, r0, #offStaticField_value @ r0<- pointer to data
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r0, #offStaticField_value] @ r0/r1<- field value (aligned)
- .endif
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- stmia r9, {r0-r1} @ vBBBB/vBBBB+1<- r0/r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SGET_OBJECT_VOLATILE_JUMBO: /* 0x1fb */
-/* File: armv5te/OP_SGET_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SGET_OBJECT_JUMBO.S */
-/* File: armv5te/OP_SGET_JUMBO.S */
- /*
- * Jumbo 32-bit SGET handler.
- *
- * for: sget/jumbo, sget-object/jumbo, sget-boolean/jumbo, sget-byte/jumbo,
- * sget-char/jumbo, sget-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SGET_OBJECT_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SGET_OBJECT_VOLATILE_JUMBO_finish: @ field ptr in r0
- ldr r1, [r0, #offStaticField_value] @ r1<- field value
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- SET_VREG(r1, r2) @ fp[BBBB]<- r1
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_VOLATILE_JUMBO: /* 0x1fc */
-/* File: armv5te/OP_SPUT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SPUT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler.
- *
- * for: sput/jumbo, sput-boolean/jumbo, sput-byte/jumbo, sput-char/jumbo,
- * sput-short/jumbo
- */
- /* exop vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_VOLATILE_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- SMP_DMB
- GOTO_OPCODE(ip) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_WIDE_VOLATILE_JUMBO: /* 0x1fd */
-/* File: armv5te/OP_SPUT_WIDE_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SPUT_WIDE_JUMBO.S */
- /*
- * Jumbo 64-bit SPUT handler.
- */
- /* sput-wide/jumbo vBBBB, field@AAAAAAAA */
- ldr r0, [rSELF, #offThread_methodClassDex] @ r0<- DvmDex
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- ldr r10, [r0, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r1, r2, lsl #16 @ r1<- AAAAaaaa
- FETCH(r9, 3) @ r9<- BBBB
- ldr r2, [r10, r1, lsl #2] @ r2<- resolved StaticField ptr
- add r9, rFP, r9, lsl #2 @ r9<- &fp[BBBB]
- cmp r2, #0 @ is resolved entry null?
- beq .LOP_SPUT_WIDE_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_WIDE_VOLATILE_JUMBO_finish: @ field ptr in r2, BBBB in r9
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- ldmia r9, {r0-r1} @ r0/r1<- vBBBB/vBBBB+1
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 1
- add r2, r2, #offStaticField_value @ r2<- pointer to data
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r2, #offStaticField_value] @ field<- vBBBB/vBBBB+1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_SPUT_OBJECT_VOLATILE_JUMBO: /* 0x1fe */
-/* File: armv5te/OP_SPUT_OBJECT_VOLATILE_JUMBO.S */
-/* File: armv5te/OP_SPUT_OBJECT_JUMBO.S */
- /*
- * Jumbo 32-bit SPUT handler for objects
- */
- /* sput-object/jumbo vBBBB, field@AAAAAAAA */
- ldr r2, [rSELF, #offThread_methodClassDex] @ r2<- DvmDex
- FETCH(r0, 1) @ r0<- aaaa (lo)
- FETCH(r1, 2) @ r1<- AAAA (hi)
- ldr r10, [r2, #offDvmDex_pResFields] @ r10<- dvmDex->pResFields
- orr r1, r0, r1, lsl #16 @ r1<- AAAAaaaa
- ldr r0, [r10, r1, lsl #2] @ r0<- resolved StaticField ptr
- cmp r0, #0 @ is resolved entry null?
- beq .LOP_SPUT_OBJECT_VOLATILE_JUMBO_resolve @ yes, do resolve
-.LOP_SPUT_OBJECT_VOLATILE_JUMBO_finish: @ field ptr in r0
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_VREG(r1, r2) @ r1<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- ldr r9, [r0, #offField_clazz] @ r9<- field->clazz
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- b .LOP_SPUT_OBJECT_VOLATILE_JUMBO_end
-
-
-/* ------------------------------ */
- .balign 64
-.L_OP_THROW_VERIFICATION_ERROR_JUMBO: /* 0x1ff */
-/* File: armv5te/OP_THROW_VERIFICATION_ERROR_JUMBO.S */
- /*
- * Handle a jumbo throw-verification-error instruction. This throws an
- * exception for an error discovered during verification. The
- * exception is indicated by BBBB, with some detail provided by AAAAAAAA.
- */
- /* exop BBBB, Class@AAAAAAAA */
- FETCH(r1, 1) @ r1<- aaaa (lo)
- FETCH(r2, 2) @ r2<- AAAA (hi)
- ldr r0, [rSELF, #offThread_method] @ r0<- self->method
- orr r2, r1, r2, lsl #16 @ r2<- AAAAaaaa
- EXPORT_PC() @ export the PC
- FETCH(r1, 3) @ r1<- BBBB
- bl dvmThrowVerificationError @ always throws
- b common_exceptionThrown @ handle exception
-
.balign 64
.size dvmAsmInstructionStart, .-dvmAsmInstructionStart
.global dvmAsmInstructionEnd
@@ -13222,11 +10108,7 @@ d2l_doconv:
*/
.LOP_INVOKE_OBJECT_INIT_RANGE_debugger:
ldr r1, [rSELF, #offThread_mainHandlerTable]
- .if 0
- mov ip, #OP_INVOKE_DIRECT_JUMBO
- .else
mov ip, #OP_INVOKE_DIRECT_RANGE
- .endif
GOTO_OPCODE_BASE(r1,ip) @ execute it
/* continuation for OP_IPUT_OBJECT_VOLATILE */
@@ -13314,1594 +10196,6 @@ d2l_doconv:
b .LOP_SPUT_OBJECT_VOLATILE_finish @ resume
-/* continuation for OP_CONST_CLASS_JUMBO */
-
- /*
- * Continuation if the Class has not yet been resolved.
- * r1: AAAAAAAA (Class ref)
- * r9: target register
- */
-.LOP_CONST_CLASS_JUMBO_resolve:
- EXPORT_PC()
- ldr r0, [rSELF, #offThread_method] @ r0<- self->method
- mov r2, #1 @ r2<- true
- ldr r0, [r0, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- Class reference
- cmp r0, #0 @ failed?
- beq common_exceptionThrown @ yup, handle the exception
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_CHECK_CAST_JUMBO */
-
- /*
- * Trivial test failed, need to perform full check. This is common.
- * r0 holds obj->clazz
- * r1 holds desired class resolved from AAAAAAAA
- * r9 holds object
- */
-.LOP_CHECK_CAST_JUMBO_fullcheck:
- mov r10, r1 @ avoid ClassObject getting clobbered
- bl dvmInstanceofNonTrivial @ r0<- boolean result
- cmp r0, #0 @ failed?
- bne .LOP_CHECK_CAST_JUMBO_okay @ no, success
-
- @ A cast has failed. We need to throw a ClassCastException.
- EXPORT_PC() @ about to throw
- ldr r0, [r9, #offObject_clazz] @ r0<- obj->clazz (actual class)
- mov r1, r10 @ r1<- desired class
- bl dvmThrowClassCastException
- b common_exceptionThrown
-
- /*
- * Advance PC and get the next opcode.
- */
-.LOP_CHECK_CAST_JUMBO_okay:
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /*
- * Resolution required. This is the least-likely path.
- *
- * r2 holds AAAAAAAA
- * r9 holds object
- */
-.LOP_CHECK_CAST_JUMBO_resolve:
- EXPORT_PC() @ resolve() could throw
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r1, r2 @ r1<- AAAAAAAA
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- resolved ClassObject ptr
- cmp r0, #0 @ got null?
- beq common_exceptionThrown @ yes, handle exception
- mov r1, r0 @ r1<- class resolved from AAAAAAAA
- ldr r0, [r9, #offObject_clazz] @ r0<- obj->clazz
- b .LOP_CHECK_CAST_JUMBO_resolved @ pick up where we left off
-
-/* continuation for OP_INSTANCE_OF_JUMBO */
-
- /*
- * Class resolved, determine type of check necessary. This is common.
- * r0 holds obj->clazz
- * r1 holds class resolved from AAAAAAAA
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_resolved:
- cmp r0, r1 @ same class (trivial success)?
- beq .LOP_INSTANCE_OF_JUMBO_trivial @ yes, trivial finish
- @ fall through to OP_INSTANCE_OF_JUMBO_fullcheck
-
- /*
- * Trivial test failed, need to perform full check. This is common.
- * r0 holds obj->clazz
- * r1 holds class resolved from AAAAAAAA
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_fullcheck:
- bl dvmInstanceofNonTrivial @ r0<- boolean result
- @ fall through to OP_INSTANCE_OF_JUMBO_store
-
- /*
- * r0 holds boolean result
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_store:
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /*
- * Trivial test succeeded, save and bail.
- * r9 holds BBBB
- */
-.LOP_INSTANCE_OF_JUMBO_trivial:
- mov r0, #1 @ indicate success
- @ could b OP_INSTANCE_OF_JUMBO_store, but copying is faster and cheaper
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r9) @ vBBBB<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /*
- * Resolution required. This is the least-likely path.
- *
- * r3 holds AAAAAAAA
- * r9 holds BBBB
- */
-
-.LOP_INSTANCE_OF_JUMBO_resolve:
- EXPORT_PC() @ resolve() could throw
- ldr r0, [rSELF, #offThread_method] @ r0<- self->method
- mov r1, r3 @ r1<- AAAAAAAA
- mov r2, #1 @ r2<- true
- ldr r0, [r0, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- resolved ClassObject ptr
- cmp r0, #0 @ got null?
- beq common_exceptionThrown @ yes, handle exception
- FETCH(r3, 4) @ r3<- vCCCC
- mov r1, r0 @ r1<- class resolved from AAAAAAAA
- GET_VREG(r0, r3) @ r0<- vCCCC (object)
- ldr r0, [r0, #offObject_clazz] @ r0<- obj->clazz
- b .LOP_INSTANCE_OF_JUMBO_resolved @ pick up where we left off
-
-/* continuation for OP_NEW_INSTANCE_JUMBO */
-
- .balign 32 @ minimize cache lines
-.LOP_NEW_INSTANCE_JUMBO_finish: @ r0=new object
- FETCH(r3, 3) @ r3<- BBBB
- cmp r0, #0 @ failed?
-#if defined(WITH_JIT)
- /*
- * The JIT needs the class to be fully resolved before it can
- * include this instruction in a trace.
- */
- ldrh r1, [rSELF, #offThread_subMode]
- beq common_exceptionThrown @ yes, handle the exception
- ands r1, #kSubModeJitTraceBuild @ under construction?
- bne .LOP_NEW_INSTANCE_JUMBO_jitCheck
-#else
- beq common_exceptionThrown @ yes, handle the exception
-#endif
-.LOP_NEW_INSTANCE_JUMBO_end:
- FETCH_ADVANCE_INST(4) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r3) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-#if defined(WITH_JIT)
- /*
- * Check to see if we need to stop the trace building early.
- * r0: new object
- * r3: vAA
- */
-.LOP_NEW_INSTANCE_JUMBO_jitCheck:
- ldr r1, [r10] @ reload resolved class
- cmp r1, #0 @ okay?
- bne .LOP_NEW_INSTANCE_JUMBO_end @ yes, finish
- mov r9, r0 @ preserve new object
- mov r10, r3 @ preserve vAA
- mov r0, rSELF
- mov r1, rPC
- bl dvmJitEndTraceSelect @ (self, pc)
- FETCH_ADVANCE_INST(2) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r9, r10) @ vAA<- new object
- GOTO_OPCODE(ip) @ jump to next instruction
-#endif
-
- /*
- * Class initialization required.
- *
- * r0 holds class object
- */
-.LOP_NEW_INSTANCE_JUMBO_needinit:
- mov r9, r0 @ save r0
- bl dvmInitClass @ initialize class
- cmp r0, #0 @ check boolean result
- mov r0, r9 @ restore r0
- bne .LOP_NEW_INSTANCE_JUMBO_initialized @ success, continue
- b common_exceptionThrown @ failed, deal with init exception
-
- /*
- * Resolution required. This is the least-likely path.
- *
- * r1 holds AAAAAAAA
- */
-.LOP_NEW_INSTANCE_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- resolved ClassObject ptr
- cmp r0, #0 @ got null?
- bne .LOP_NEW_INSTANCE_JUMBO_resolved @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
-/* continuation for OP_NEW_ARRAY_JUMBO */
-
-
- /*
- * Resolve class. (This is an uncommon case.)
- *
- * r1 holds array length
- * r2 holds class ref AAAAAAAA
- */
-.LOP_NEW_ARRAY_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- mov r9, r1 @ r9<- length (save)
- mov r1, r2 @ r1<- AAAAAAAA
- mov r2, #0 @ r2<- false
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveClass @ r0<- call(clazz, ref)
- cmp r0, #0 @ got null?
- mov r1, r9 @ r1<- length (restore)
- beq common_exceptionThrown @ yes, handle exception
- @ fall through to OP_NEW_ARRAY_JUMBO_finish
-
- /*
- * Finish allocation.
- *
- * r0 holds class
- * r1 holds array length
- */
-.LOP_NEW_ARRAY_JUMBO_finish:
- mov r2, #ALLOC_DONT_TRACK @ don't track in local refs table
- bl dvmAllocArrayByClass @ r0<- call(clazz, length, flags)
- cmp r0, #0 @ failed?
- FETCH(r2, 3) @ r2<- vBBBB
- beq common_exceptionThrown @ yes, handle the exception
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SET_VREG(r0, r2) @ vBBBB<- r0
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_FILLED_NEW_ARRAY_JUMBO */
-
- /*
- * On entry:
- * r0 holds array class
- */
-.LOP_FILLED_NEW_ARRAY_JUMBO_continue:
- ldr r3, [r0, #offClassObject_descriptor] @ r3<- arrayClass->descriptor
- mov r2, #ALLOC_DONT_TRACK @ r2<- alloc flags
- ldrb rINST, [r3, #1] @ rINST<- descriptor[1]
- FETCH(r1, 3) @ r1<- BBBB (length)
- cmp rINST, #'I' @ array of ints?
- cmpne rINST, #'L' @ array of objects?
- cmpne rINST, #'[' @ array of arrays?
- mov r9, r1 @ save length in r9
- bne .LOP_FILLED_NEW_ARRAY_JUMBO_notimpl @ no, not handled yet
- bl dvmAllocArrayByClass @ r0<- call(arClass, length, flags)
- cmp r0, #0 @ null return?
- beq common_exceptionThrown @ alloc failed, handle exception
-
- FETCH(r1, 4) @ r1<- CCCC
- str r0, [rSELF, #offThread_retval] @ retval.l <- new array
- str rINST, [rSELF, #offThread_retval+4] @ retval.h <- type
- add r0, r0, #offArrayObject_contents @ r0<- newArray->contents
- subs r9, r9, #1 @ length--, check for neg
- FETCH_ADVANCE_INST(5) @ advance to next instr, load rINST
- bmi 2f @ was zero, bail
-
- @ copy values from registers into the array
- @ r0=array, r1=CCCC, r9=BBBB (length)
- add r2, rFP, r1, lsl #2 @ r2<- &fp[CCCC]
-1: ldr r3, [r2], #4 @ r3<- *r2++
- subs r9, r9, #1 @ count--
- str r3, [r0], #4 @ *contents++ = vX
- bpl 1b
-
-2: ldr r0, [rSELF, #offThread_retval] @ r0<- object
- ldr r1, [rSELF, #offThread_retval+4] @ r1<- type
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- GET_INST_OPCODE(ip) @ ip<- opcode from rINST
- cmp r1, #'I' @ Is int array?
- strneb r2, [r2, r0, lsr #GC_CARD_SHIFT] @ Mark card based on object head
- GOTO_OPCODE(ip) @ execute it
-
- /*
- * Throw an exception indicating that we have not implemented this
- * mode of filled-new-array.
- */
-.LOP_FILLED_NEW_ARRAY_JUMBO_notimpl:
- ldr r0, .L_strFilledNewArrayNotImpl_OP_FILLED_NEW_ARRAY_JUMBO
- bl dvmThrowInternalError
- b common_exceptionThrown
-
- /*
- * Ideally we'd only define this once, but depending on layout we can
- * exceed the range of the load above.
- */
-
-.L_strFilledNewArrayNotImpl_OP_FILLED_NEW_ARRAY_JUMBO:
- .word .LstrFilledNewArrayNotImpl
-
-/* continuation for OP_IGET_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_WIDE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_WIDE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- .if 0
- add r0, r9, r3 @ r0<- address of field
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r9, r3] @ r0/r1<- obj.field (64-bit align ok)
- .endif
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- add r3, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- stmia r3, {r0-r1} @ fp[BBBB]<- r0/r1
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_OBJECT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_OBJECT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_BOOLEAN_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BOOLEAN_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_BOOLEAN_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BOOLEAN_JUMBO_finish:
- @bl common_squeak1
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_BYTE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BYTE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_BYTE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_BYTE_JUMBO_finish:
- @bl common_squeak2
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_CHAR_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_CHAR_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_CHAR_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_CHAR_JUMBO_finish:
- @bl common_squeak3
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_SHORT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_SHORT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_SHORT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_SHORT_JUMBO_finish:
- @bl common_squeak4
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- @ no-op @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_WIDE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_WIDE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- FETCH(r2, 3) @ r1<- BBBB
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- add r2, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- ldmia r2, {r0-r1} @ r0/r1<- fp[BBBB]
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 0
- add r2, r9, r3 @ r2<- target address
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r9, r3] @ obj.field (64 bits, aligned)<- r0/r1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-/* continuation for OP_IPUT_OBJECT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_OBJECT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (32 bits)<- r0
- @ no-op
- cmp r0, #0 @ stored a null reference?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card if not
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_BOOLEAN_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BOOLEAN_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_BOOLEAN_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BOOLEAN_JUMBO_finish:
- @bl common_squeak1
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_BYTE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BYTE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_BYTE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_BYTE_JUMBO_finish:
- @bl common_squeak2
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_CHAR_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_CHAR_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_CHAR_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_CHAR_JUMBO_finish:
- @bl common_squeak3
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_SHORT_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_SHORT_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_SHORT_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_SHORT_JUMBO_finish:
- @bl common_squeak4
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- @ no-op @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- @ no-op
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_SGET_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_WIDE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- *
- * Returns StaticField pointer in r0.
- */
-.LOP_SGET_WIDE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- bne .LOP_SGET_WIDE_JUMBO_finish @ yes, finish
- b common_exceptionThrown @ no, handle exception
-
-/* continuation for OP_SGET_OBJECT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_OBJECT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_OBJECT_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_BOOLEAN_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_BOOLEAN_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_BOOLEAN_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_BYTE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_BYTE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_BYTE_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_CHAR_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_CHAR_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_CHAR_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_SHORT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_SHORT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_SHORT_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_WIDE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r9: &fp[BBBB]
- * r10: dvmDex->pResFields
- *
- * Returns StaticField pointer in r2.
- */
-.LOP_SPUT_WIDE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- mov r2, r0 @ copy to r2
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_WIDE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_OBJECT_JUMBO */
-
-
-.LOP_SPUT_OBJECT_JUMBO_end:
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- @ no-op
- cmp r1, #0 @ stored a null object?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card based on obj head
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /* Continuation if the field has not yet been resolved.
- * r1: AAAAaaaa field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_OBJECT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r9<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_OBJECT_JUMBO_finish @ resume
-
-
-/* continuation for OP_SPUT_BOOLEAN_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_BOOLEAN_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_BOOLEAN_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_BYTE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_BYTE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_BYTE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_CHAR_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_CHAR_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_CHAR_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_SHORT_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_SHORT_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_SHORT_JUMBO_finish @ resume
-
-/* continuation for OP_INVOKE_VIRTUAL_JUMBO */
-
- /*
- * At this point:
- * r0 = resolved base method
- */
-.LOP_INVOKE_VIRTUAL_JUMBO_continue:
- FETCH(r10, 4) @ r10<- CCCC
- GET_VREG(r9, r10) @ r9<- "this" ptr
- ldrh r2, [r0, #offMethod_methodIndex] @ r2<- baseMethod->methodIndex
- cmp r9, #0 @ is "this" null?
- beq common_errNullObject @ null "this", throw exception
- ldr r3, [r9, #offObject_clazz] @ r3<- thisPtr->clazz
- ldr r3, [r3, #offClassObject_vtable] @ r3<- thisPtr->clazz->vtable
- ldr r0, [r3, r2, lsl #2] @ r3<- vtable[methodIndex]
- bl common_invokeMethodJumbo @ (r0=method, r9="this")
-
-/* continuation for OP_INVOKE_SUPER_JUMBO */
-
- /*
- * At this point:
- * r0 = resolved base method
- * r10 = method->clazz
- */
-.LOP_INVOKE_SUPER_JUMBO_continue:
- ldr r1, [r10, #offClassObject_super] @ r1<- method->clazz->super
- ldrh r2, [r0, #offMethod_methodIndex] @ r2<- baseMethod->methodIndex
- ldr r3, [r1, #offClassObject_vtableCount] @ r3<- super->vtableCount
- EXPORT_PC() @ must export for invoke
- cmp r2, r3 @ compare (methodIndex, vtableCount)
- bcs .LOP_INVOKE_SUPER_JUMBO_nsm @ method not present in superclass
- ldr r1, [r1, #offClassObject_vtable] @ r1<- ...clazz->super->vtable
- ldr r0, [r1, r2, lsl #2] @ r3<- vtable[methodIndex]
- bl common_invokeMethodJumbo @ (r0=method, r9="this")
-
-.LOP_INVOKE_SUPER_JUMBO_resolve:
- mov r0, r10 @ r0<- method->clazz
- mov r2, #METHOD_VIRTUAL @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
- bne .LOP_INVOKE_SUPER_JUMBO_continue @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
- /*
- * Throw a NoSuchMethodError with the method name as the message.
- * r0 = resolved base method
- */
-.LOP_INVOKE_SUPER_JUMBO_nsm:
- ldr r1, [r0, #offMethod_name] @ r1<- method name
- b common_errNoSuchMethod
-
-/* continuation for OP_INVOKE_DIRECT_JUMBO */
-
- /*
- * On entry:
- * r1 = reference (CCCC)
- * r10 = "this" register
- */
-.LOP_INVOKE_DIRECT_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- mov r2, #METHOD_DIRECT @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
- bne .LOP_INVOKE_DIRECT_JUMBO_finish @ no, continue
- b common_exceptionThrown @ yes, handle exception
-
-/* continuation for OP_INVOKE_STATIC_JUMBO */
-
-
-.LOP_INVOKE_STATIC_JUMBO_resolve:
- ldr r3, [rSELF, #offThread_method] @ r3<- self->method
- ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
- mov r2, #METHOD_STATIC @ resolver method type
- bl dvmResolveMethod @ r0<- call(clazz, ref, flags)
- cmp r0, #0 @ got null?
-#if defined(WITH_JIT)
- /*
- * Check to see if we're actively building a trace. If so,
- * we need to keep this instruction out of it.
- * r10: &resolved_methodToCall
- */
- ldrh r2, [rSELF, #offThread_subMode]
- beq common_exceptionThrown @ null, handle exception
- ands r2, #kSubModeJitTraceBuild @ trace under construction?
- beq common_invokeMethodJumboNoThis @ no (r0=method, r9="this")
- ldr r1, [r10] @ reload resolved method
- cmp r1, #0 @ finished resolving?
- bne common_invokeMethodJumboNoThis @ yes (r0=method, r9="this")
- mov r10, r0 @ preserve method
- mov r0, rSELF
- mov r1, rPC
- bl dvmJitEndTraceSelect @ (self, pc)
- mov r0, r10
- b common_invokeMethodJumboNoThis @ whew, finally!
-#else
- bne common_invokeMethodJumboNoThis @ (r0=method, r9="this")
- b common_exceptionThrown @ yes, handle exception
-#endif
-
-/* continuation for OP_INVOKE_OBJECT_INIT_JUMBO */
-
-.LOP_INVOKE_OBJECT_INIT_JUMBO_setFinal:
- EXPORT_PC() @ can throw
- bl dvmSetFinalizable @ call dvmSetFinalizable(obj)
- ldr r0, [rSELF, #offThread_exception] @ r0<- self->exception
- cmp r0, #0 @ exception pending?
- bne common_exceptionThrown @ yes, handle it
- b .LOP_INVOKE_OBJECT_INIT_JUMBO_finish
-
- /*
- * A debugger is attached, so we need to go ahead and do
- * this. For simplicity, we'll just jump directly to the
- * corresponding handler. Note that we can't use
- * rIBASE here because it may be in single-step mode.
- * Load the primary table base directly.
- */
-.LOP_INVOKE_OBJECT_INIT_JUMBO_debugger:
- ldr r1, [rSELF, #offThread_mainHandlerTable]
- .if 1
- mov ip, #OP_INVOKE_DIRECT_JUMBO
- .else
- mov ip, #OP_INVOKE_DIRECT_RANGE
- .endif
- GOTO_OPCODE_BASE(r1,ip) @ execute it
-
-/* continuation for OP_IGET_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_WIDE_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_WIDE_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_WIDE_VOLATILE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- .if 1
- add r0, r9, r3 @ r0<- address of field
- bl dvmQuasiAtomicRead64 @ r0/r1<- contents of field
- .else
- ldrd r0, [r9, r3] @ r0/r1<- obj.field (64-bit align ok)
- .endif
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- add r3, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- stmia r3, {r0-r1} @ fp[BBBB]<- r0/r1
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IGET_OBJECT_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IGET_OBJECT_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IGET_OBJECT_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- cmp r9, #0 @ check object for null
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- beq common_errNullObject @ object was null
- ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
- SMP_DMB @ acquiring load
- FETCH(r2, 3) @ r2<- BBBB
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- SET_VREG(r0, r2) @ fp[BBBB]<- r0
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
- SMP_DMB
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_IPUT_WIDE_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_WIDE_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_WIDE_VOLATILE_JUMBO_finish:
- cmp r9, #0 @ check object for null
- FETCH(r2, 3) @ r1<- BBBB
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- add r2, rFP, r2, lsl #2 @ r3<- &fp[BBBB]
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- ldmia r2, {r0-r1} @ r0/r1<- fp[BBBB]
- GET_INST_OPCODE(r10) @ extract opcode from rINST
- .if 1
- add r2, r9, r3 @ r2<- target address
- bl dvmQuasiAtomicSwap64Sync @ stores r0/r1 into addr r2
- .else
- strd r0, [r9, r3] @ obj.field (64 bits, aligned)<- r0/r1
- .endif
- GOTO_OPCODE(r10) @ jump to next instruction
-
-/* continuation for OP_IPUT_OBJECT_VOLATILE_JUMBO */
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_VOLATILE_JUMBO_resolved:
- cmp r0, #0 @ resolution unsuccessful?
- beq common_exceptionThrown @ yes, throw exception
- @ fall through to OP_IPUT_OBJECT_VOLATILE_JUMBO_finish
-
- /*
- * Currently:
- * r0 holds resolved field
- * r9 holds object
- */
-.LOP_IPUT_OBJECT_VOLATILE_JUMBO_finish:
- @bl common_squeak0
- ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
- FETCH(r1, 3) @ r1<- BBBB
- cmp r9, #0 @ check object for null
- GET_VREG(r0, r1) @ r0<- fp[BBBB]
- ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
- beq common_errNullObject @ object was null
- FETCH_ADVANCE_INST(5) @ advance rPC, load rINST
- GET_INST_OPCODE(ip) @ extract opcode from rINST
- SMP_DMB_ST @ releasing store
- str r0, [r9, r3] @ obj.field (32 bits)<- r0
- SMP_DMB
- cmp r0, #0 @ stored a null reference?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card if not
- GOTO_OPCODE(ip) @ jump to next instruction
-
-/* continuation for OP_SGET_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SGET_WIDE_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- *
- * Returns StaticField pointer in r0.
- */
-.LOP_SGET_WIDE_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- bne .LOP_SGET_WIDE_VOLATILE_JUMBO_finish @ yes, finish
- b common_exceptionThrown @ no, handle exception
-
-/* continuation for OP_SGET_OBJECT_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SGET_OBJECT_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SGET_OBJECT_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_WIDE_VOLATILE_JUMBO */
-
- /*
- * Continuation if the field has not yet been resolved.
- * r1: AAAAAAAA field ref
- * r9: &fp[BBBB]
- * r10: dvmDex->pResFields
- *
- * Returns StaticField pointer in r2.
- */
-.LOP_SPUT_WIDE_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r2<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- mov r2, r0 @ copy to r2
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_WIDE_VOLATILE_JUMBO_finish @ resume
-
-/* continuation for OP_SPUT_OBJECT_VOLATILE_JUMBO */
-
-
-.LOP_SPUT_OBJECT_VOLATILE_JUMBO_end:
- str r1, [r0, #offStaticField_value] @ field<- vBBBB
- SMP_DMB
- cmp r1, #0 @ stored a null object?
- strneb r2, [r2, r9, lsr #GC_CARD_SHIFT] @ mark card based on obj head
- GOTO_OPCODE(ip) @ jump to next instruction
-
- /* Continuation if the field has not yet been resolved.
- * r1: AAAAaaaa field ref
- * r10: dvmDex->pResFields
- */
-.LOP_SPUT_OBJECT_VOLATILE_JUMBO_resolve:
- ldr r2, [rSELF, #offThread_method] @ r9<- current method
-#if defined(WITH_JIT)
- add r10, r10, r1, lsl #2 @ r10<- &dvmDex->pResFields[field]
-#endif
- EXPORT_PC() @ resolve() could throw, so export now
- ldr r0, [r2, #offMethod_clazz] @ r0<- method->clazz
- bl dvmResolveStaticField @ r0<- resolved StaticField ptr
- cmp r0, #0 @ success?
- beq common_exceptionThrown @ no, handle exception
-#if defined(WITH_JIT)
- /*
- * If the JIT is actively building a trace we need to make sure
- * that the field is fully resolved before including this instruction.
- */
- bl common_verifyField
-#endif
- b .LOP_SPUT_OBJECT_VOLATILE_JUMBO_finish @ resume
-
-
.size dvmAsmSisterStart, .-dvmAsmSisterStart
.global dvmAsmSisterEnd
dvmAsmSisterEnd:
@@ -20779,5449 +16073,7 @@ dvmAsmAltInstructionStart = .L_ALT_OP_NOP
/* ------------------------------ */
.balign 64
-.L_ALT_OP_DISPATCH_FF: /* 0xff */
-/* File: armv5te/ALT_OP_DISPATCH_FF.S */
-/*
- * Unlike other alt stubs, we don't want to call dvmCheckBefore() here.
- * Instead, just treat this as a trampoline to reach the real alt
- * handler (which will do the dvmCheckBefore() call.
- */
- mov ip, rINST, lsr #8 @ ip<- extended opcode
- add ip, ip, #256 @ add offset for extended opcodes
- GOTO_OPCODE(ip) @ go to proper extended handler
-
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_CONST_CLASS_JUMBO: /* 0x100 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (256 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_CHECK_CAST_JUMBO: /* 0x101 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (257 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INSTANCE_OF_JUMBO: /* 0x102 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (258 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_NEW_INSTANCE_JUMBO: /* 0x103 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (259 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_NEW_ARRAY_JUMBO: /* 0x104 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (260 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_FILLED_NEW_ARRAY_JUMBO: /* 0x105 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (261 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_JUMBO: /* 0x106 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (262 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_WIDE_JUMBO: /* 0x107 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (263 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_OBJECT_JUMBO: /* 0x108 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (264 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_BOOLEAN_JUMBO: /* 0x109 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (265 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_BYTE_JUMBO: /* 0x10a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (266 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_CHAR_JUMBO: /* 0x10b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (267 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_SHORT_JUMBO: /* 0x10c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (268 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_JUMBO: /* 0x10d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (269 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_WIDE_JUMBO: /* 0x10e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (270 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_OBJECT_JUMBO: /* 0x10f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (271 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_BOOLEAN_JUMBO: /* 0x110 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (272 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_BYTE_JUMBO: /* 0x111 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (273 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_CHAR_JUMBO: /* 0x112 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (274 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_SHORT_JUMBO: /* 0x113 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (275 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_JUMBO: /* 0x114 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (276 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_WIDE_JUMBO: /* 0x115 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (277 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_OBJECT_JUMBO: /* 0x116 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (278 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_BOOLEAN_JUMBO: /* 0x117 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (279 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_BYTE_JUMBO: /* 0x118 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (280 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_CHAR_JUMBO: /* 0x119 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (281 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_SHORT_JUMBO: /* 0x11a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (282 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_JUMBO: /* 0x11b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (283 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_WIDE_JUMBO: /* 0x11c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (284 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_OBJECT_JUMBO: /* 0x11d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (285 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_BOOLEAN_JUMBO: /* 0x11e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (286 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_BYTE_JUMBO: /* 0x11f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (287 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_CHAR_JUMBO: /* 0x120 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (288 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_SHORT_JUMBO: /* 0x121 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (289 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_VIRTUAL_JUMBO: /* 0x122 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (290 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_SUPER_JUMBO: /* 0x123 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (291 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_DIRECT_JUMBO: /* 0x124 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (292 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_STATIC_JUMBO: /* 0x125 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (293 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_INTERFACE_JUMBO: /* 0x126 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (294 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_27FF: /* 0x127 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (295 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_28FF: /* 0x128 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (296 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_29FF: /* 0x129 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (297 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2AFF: /* 0x12a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (298 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2BFF: /* 0x12b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (299 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2CFF: /* 0x12c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (300 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2DFF: /* 0x12d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (301 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2EFF: /* 0x12e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (302 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_2FFF: /* 0x12f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (303 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_30FF: /* 0x130 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (304 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_31FF: /* 0x131 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (305 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_32FF: /* 0x132 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (306 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_33FF: /* 0x133 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (307 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_34FF: /* 0x134 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (308 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_35FF: /* 0x135 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (309 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_36FF: /* 0x136 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (310 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_37FF: /* 0x137 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (311 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_38FF: /* 0x138 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (312 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_39FF: /* 0x139 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (313 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3AFF: /* 0x13a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (314 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3BFF: /* 0x13b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (315 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3CFF: /* 0x13c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (316 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3DFF: /* 0x13d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (317 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3EFF: /* 0x13e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (318 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_3FFF: /* 0x13f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (319 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_40FF: /* 0x140 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (320 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_41FF: /* 0x141 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (321 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_42FF: /* 0x142 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (322 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_43FF: /* 0x143 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (323 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_44FF: /* 0x144 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (324 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_45FF: /* 0x145 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (325 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_46FF: /* 0x146 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (326 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_47FF: /* 0x147 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (327 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_48FF: /* 0x148 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (328 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_49FF: /* 0x149 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (329 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4AFF: /* 0x14a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (330 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4BFF: /* 0x14b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (331 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4CFF: /* 0x14c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (332 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4DFF: /* 0x14d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (333 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4EFF: /* 0x14e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (334 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_4FFF: /* 0x14f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (335 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_50FF: /* 0x150 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (336 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_51FF: /* 0x151 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (337 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_52FF: /* 0x152 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (338 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_53FF: /* 0x153 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (339 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_54FF: /* 0x154 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (340 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_55FF: /* 0x155 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (341 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_56FF: /* 0x156 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (342 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_57FF: /* 0x157 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (343 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_58FF: /* 0x158 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (344 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_59FF: /* 0x159 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (345 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5AFF: /* 0x15a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (346 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5BFF: /* 0x15b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (347 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5CFF: /* 0x15c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (348 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5DFF: /* 0x15d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (349 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5EFF: /* 0x15e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (350 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_5FFF: /* 0x15f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (351 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_60FF: /* 0x160 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (352 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_61FF: /* 0x161 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (353 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_62FF: /* 0x162 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (354 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_63FF: /* 0x163 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (355 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_64FF: /* 0x164 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (356 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_65FF: /* 0x165 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (357 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_66FF: /* 0x166 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (358 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_67FF: /* 0x167 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (359 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_68FF: /* 0x168 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (360 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_69FF: /* 0x169 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (361 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6AFF: /* 0x16a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (362 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6BFF: /* 0x16b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (363 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6CFF: /* 0x16c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (364 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6DFF: /* 0x16d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (365 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6EFF: /* 0x16e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (366 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_6FFF: /* 0x16f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (367 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_70FF: /* 0x170 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (368 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_71FF: /* 0x171 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (369 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_72FF: /* 0x172 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (370 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_73FF: /* 0x173 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (371 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_74FF: /* 0x174 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (372 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_75FF: /* 0x175 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (373 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_76FF: /* 0x176 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (374 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_77FF: /* 0x177 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (375 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_78FF: /* 0x178 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (376 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_79FF: /* 0x179 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (377 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7AFF: /* 0x17a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (378 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7BFF: /* 0x17b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (379 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7CFF: /* 0x17c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (380 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7DFF: /* 0x17d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (381 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7EFF: /* 0x17e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (382 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_7FFF: /* 0x17f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (383 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_80FF: /* 0x180 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (384 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_81FF: /* 0x181 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (385 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_82FF: /* 0x182 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (386 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_83FF: /* 0x183 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (387 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_84FF: /* 0x184 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (388 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_85FF: /* 0x185 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (389 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_86FF: /* 0x186 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (390 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_87FF: /* 0x187 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (391 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_88FF: /* 0x188 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (392 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_89FF: /* 0x189 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (393 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8AFF: /* 0x18a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (394 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8BFF: /* 0x18b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (395 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8CFF: /* 0x18c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (396 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8DFF: /* 0x18d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (397 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8EFF: /* 0x18e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (398 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_8FFF: /* 0x18f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (399 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_90FF: /* 0x190 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (400 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_91FF: /* 0x191 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (401 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_92FF: /* 0x192 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (402 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_93FF: /* 0x193 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (403 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_94FF: /* 0x194 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (404 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_95FF: /* 0x195 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (405 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_96FF: /* 0x196 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (406 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_97FF: /* 0x197 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (407 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_98FF: /* 0x198 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (408 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_99FF: /* 0x199 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (409 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9AFF: /* 0x19a */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (410 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9BFF: /* 0x19b */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (411 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9CFF: /* 0x19c */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (412 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9DFF: /* 0x19d */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (413 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9EFF: /* 0x19e */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (414 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_9FFF: /* 0x19f */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (415 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A0FF: /* 0x1a0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (416 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A1FF: /* 0x1a1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (417 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A2FF: /* 0x1a2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (418 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A3FF: /* 0x1a3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (419 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A4FF: /* 0x1a4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (420 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A5FF: /* 0x1a5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (421 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A6FF: /* 0x1a6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (422 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A7FF: /* 0x1a7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (423 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A8FF: /* 0x1a8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (424 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_A9FF: /* 0x1a9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (425 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_AAFF: /* 0x1aa */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (426 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ABFF: /* 0x1ab */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (427 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ACFF: /* 0x1ac */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (428 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ADFF: /* 0x1ad */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (429 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_AEFF: /* 0x1ae */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (430 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_AFFF: /* 0x1af */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (431 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B0FF: /* 0x1b0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (432 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B1FF: /* 0x1b1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (433 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B2FF: /* 0x1b2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (434 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B3FF: /* 0x1b3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (435 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B4FF: /* 0x1b4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (436 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B5FF: /* 0x1b5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (437 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B6FF: /* 0x1b6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (438 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B7FF: /* 0x1b7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (439 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B8FF: /* 0x1b8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (440 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_B9FF: /* 0x1b9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (441 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BAFF: /* 0x1ba */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (442 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BBFF: /* 0x1bb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (443 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BCFF: /* 0x1bc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (444 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BDFF: /* 0x1bd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (445 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BEFF: /* 0x1be */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (446 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_BFFF: /* 0x1bf */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (447 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C0FF: /* 0x1c0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (448 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C1FF: /* 0x1c1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (449 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C2FF: /* 0x1c2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (450 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C3FF: /* 0x1c3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (451 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C4FF: /* 0x1c4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (452 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C5FF: /* 0x1c5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (453 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C6FF: /* 0x1c6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (454 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C7FF: /* 0x1c7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (455 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C8FF: /* 0x1c8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (456 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_C9FF: /* 0x1c9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (457 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CAFF: /* 0x1ca */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (458 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CBFF: /* 0x1cb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (459 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CCFF: /* 0x1cc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (460 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CDFF: /* 0x1cd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (461 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CEFF: /* 0x1ce */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (462 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_CFFF: /* 0x1cf */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (463 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D0FF: /* 0x1d0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (464 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D1FF: /* 0x1d1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (465 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D2FF: /* 0x1d2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (466 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D3FF: /* 0x1d3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (467 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D4FF: /* 0x1d4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (468 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D5FF: /* 0x1d5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (469 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D6FF: /* 0x1d6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (470 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D7FF: /* 0x1d7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (471 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D8FF: /* 0x1d8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (472 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_D9FF: /* 0x1d9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (473 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DAFF: /* 0x1da */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (474 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DBFF: /* 0x1db */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (475 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DCFF: /* 0x1dc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (476 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DDFF: /* 0x1dd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (477 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DEFF: /* 0x1de */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (478 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_DFFF: /* 0x1df */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (479 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E0FF: /* 0x1e0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (480 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E1FF: /* 0x1e1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (481 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E2FF: /* 0x1e2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (482 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E3FF: /* 0x1e3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (483 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E4FF: /* 0x1e4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (484 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E5FF: /* 0x1e5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (485 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E6FF: /* 0x1e6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (486 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E7FF: /* 0x1e7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (487 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E8FF: /* 0x1e8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (488 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_E9FF: /* 0x1e9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (489 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EAFF: /* 0x1ea */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (490 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EBFF: /* 0x1eb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (491 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_ECFF: /* 0x1ec */
+.L_ALT_OP_UNUSED_FF: /* 0xff */
/* File: armv5te/alt_stub.S */
/*
* Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
@@ -26232,444 +16084,7 @@ dvmAsmAltInstructionStart = .L_ALT_OP_NOP
* bail to the real handler if breakFlags==0.
*/
ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (492 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EDFF: /* 0x1ed */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (493 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EEFF: /* 0x1ee */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (494 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_EFFF: /* 0x1ef */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (495 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_F0FF: /* 0x1f0 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (496 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_UNUSED_F1FF: /* 0x1f1 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (497 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_INVOKE_OBJECT_INIT_JUMBO: /* 0x1f2 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (498 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_VOLATILE_JUMBO: /* 0x1f3 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (499 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_WIDE_VOLATILE_JUMBO: /* 0x1f4 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (500 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IGET_OBJECT_VOLATILE_JUMBO: /* 0x1f5 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (501 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_VOLATILE_JUMBO: /* 0x1f6 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (502 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_WIDE_VOLATILE_JUMBO: /* 0x1f7 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (503 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_IPUT_OBJECT_VOLATILE_JUMBO: /* 0x1f8 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (504 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_VOLATILE_JUMBO: /* 0x1f9 */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (505 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_WIDE_VOLATILE_JUMBO: /* 0x1fa */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (506 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SGET_OBJECT_VOLATILE_JUMBO: /* 0x1fb */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (507 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_VOLATILE_JUMBO: /* 0x1fc */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (508 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_WIDE_VOLATILE_JUMBO: /* 0x1fd */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (509 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_SPUT_OBJECT_VOLATILE_JUMBO: /* 0x1fe */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (510 * 64)
- ldr rIBASE, [rSELF, #offThread_curHandlerTable]
- cmp r3, #0
- bxeq lr @ nothing to do - jump to real handler
- EXPORT_PC()
- mov r0, rPC @ arg0
- mov r1, rFP @ arg1
- mov r2, rSELF @ arg2
- b dvmCheckBefore @ (dPC,dFP,self) tail call
-
-/* ------------------------------ */
- .balign 64
-.L_ALT_OP_THROW_VERIFICATION_ERROR_JUMBO: /* 0x1ff */
-/* File: armv5te/alt_stub.S */
-/*
- * Inter-instruction transfer stub. Call out to dvmCheckBefore to handle
- * any interesting requests and then jump to the real instruction
- * handler. Note that the call to dvmCheckBefore is done as a tail call.
- * rIBASE updates won't be seen until a refresh, and we can tell we have a
- * stale rIBASE if breakFlags==0. Always refresh rIBASE here, and then
- * bail to the real handler if breakFlags==0.
- */
- ldrb r3, [rSELF, #offThread_breakFlags]
- adrl lr, dvmAsmInstructionStart + (511 * 64)
+ adrl lr, dvmAsmInstructionStart + (255 * 64)
ldr rIBASE, [rSELF, #offThread_curHandlerTable]
cmp r3, #0
bxeq lr @ nothing to do - jump to real handler
@@ -27152,35 +16567,6 @@ save_callsiteinfo:
#endif
/*
- * Common code for jumbo method invocation.
- * NOTE: this adjusts rPC to account for the difference in instruction width.
- * As a result, the savedPc in the stack frame will not be wholly accurate. So
- * long as that is only used for source file line number calculations, we're
- * okay.
- */
-common_invokeMethodJumboNoThis:
-#if defined(WITH_JIT)
- /* On entry: r0 is "Method* methodToCall */
- mov r9, #0 @ clear "this"
-#endif
-common_invokeMethodJumbo:
- /* On entry: r0 is "Method* methodToCall, r9 is "this" */
-.LinvokeNewJumbo:
-#if defined(WITH_JIT)
- ldrh r1, [rSELF, #offThread_subMode]
- ands r1, #kSubModeJitTraceBuild
- blne save_callsiteinfo
-#endif
- @ prepare to copy args to "outs" area of current frame
- add rPC, rPC, #4 @ adjust pc to make return consistent
- FETCH(r2, 1) @ r2<- BBBB (arg count)
- SAVEAREA_FROM_FP(r10, rFP) @ r10<- stack save area
- cmp r2, #0 @ no args?
- beq .LinvokeArgsDone @ if no args, skip the rest
- FETCH(r1, 2) @ r1<- CCCC
- b .LinvokeRangeArgs @ handle args like invoke range
-
-/*
* Common code for method invocation with range.
*
* On entry:
diff --git a/vm/mterp/out/InterpC-armv6-vfp.cpp b/vm/mterp/out/InterpC-armv6-vfp.cpp
index 950607b98..a5b542cab 100644
--- a/vm/mterp/out/InterpC-armv6-vfp.cpp
+++ b/vm/mterp/out/InterpC-armv6-vfp.cpp
@@ -102,7 +102,7 @@
{ \
char* desc; \
desc = dexProtoCopyMethodDescriptor(&curMethod->prototype); \
- LOGE("Invalid branch %d at 0x%04x in %s.%s %s", \
+ ALOGE("Invalid branch %d at 0x%04x in %s.%s %s", \
myoff, (int) (pc - curMethod->insns), \
curMethod->clazz->descriptor, curMethod->name, desc); \
free(desc); \
@@ -128,10 +128,10 @@
char debugStrBuf[128]; \
snprintf(debugStrBuf, sizeof(debugStrBuf), __VA_ARGS__); \
if (curMethod != NULL) \
- LOG(_level, LOG_TAG"i", "%-2d|%04x%s", \
+ ALOG(_level, LOG_TAG"i", "%-2d|%04x%s", \
self->threadId, (int)(pc - curMethod->insns), debugStrBuf); \
else \
- LOG(_level, LOG_TAG"i", "%-2d|####%s", \
+ ALOG(_level, LOG_TAG"i", "%-2d|####%s", \
self->threadId, debugStrBuf); \
} while(false)
void dvmDumpRegs(const Method* method, const u4* framePtr, bool inOnly);
@@ -320,15 +320,15 @@ static inline bool checkForNull(Object* obj)
return false;
}
#ifdef WITH_EXTRA_OBJECT_VALIDATION
- if (!dvmIsHeapAddressObject(obj)) {
- LOGE("Invalid object %p", obj);
+ if (!dvmIsHeapAddress(obj)) {
+ ALOGE("Invalid object %p", obj);
dvmAbort();
}
#endif
#ifndef NDEBUG
if (obj->clazz == NULL || ((u4) obj->clazz) <= 65536) {
/* probable heap corruption */
- LOGE("Invalid object class %p (in %p)", obj->clazz, obj);
+ ALOGE("Invalid object class %p (in %p)", obj->clazz, obj);
dvmAbort();
}
#endif
@@ -353,14 +353,14 @@ static inline bool checkForNullExportPC(Object* obj, u4* fp, const u2* pc)
}
#ifdef WITH_EXTRA_OBJECT_VALIDATION
if (!dvmIsHeapAddress(obj)) {
- LOGE("Invalid object %p", obj);
+ ALOGE("Invalid object %p", obj);
dvmAbort();
}
#endif
#ifndef NDEBUG
if (obj->clazz == NULL || ((u4) obj->clazz) <= 65536) {
/* probable heap corruption */
- LOGE("Invalid object class %p (in %p)", obj->clazz, obj);
+ ALOGE("Invalid object class %p (in %p)", obj->clazz, obj);
dvmAbort();
}
#endif
@@ -471,9 +471,9 @@ static inline bool checkForNullExportPC(Object* obj, u4* fp, const u2* pc)
return; \
} while(false)
-#define GOTO_invoke(_target, _methodCallRange, _jumboFormat) \
+#define GOTO_invoke(_target, _methodCallRange) \
do { \
- dvmMterp_##_target(self, _methodCallRange, _jumboFormat); \
+ dvmMterp_##_target(self, _methodCallRange); \
return; \
} while(false)
@@ -505,14 +505,14 @@ static inline bool checkForNullExportPC(Object* obj, u4* fp, const u2* pc)
/* File: c/opcommon.cpp */
/* forward declarations of goto targets */
-GOTO_TARGET_DECL(filledNewArray, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeVirtual, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeSuper, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeInterface, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeDirect, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeStatic, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeVirtualQuick, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeSuperQuick, bool methodCallRange, bool jumboFormat);
+GOTO_TARGET_DECL(filledNewArray, bool methodCallRange);
+GOTO_TARGET_DECL(invokeVirtual, bool methodCallRange);
+GOTO_TARGET_DECL(invokeSuper, bool methodCallRange);
+GOTO_TARGET_DECL(invokeInterface, bool methodCallRange);
+GOTO_TARGET_DECL(invokeDirect, bool methodCallRange);
+GOTO_TARGET_DECL(invokeStatic, bool methodCallRange);
+GOTO_TARGET_DECL(invokeVirtualQuick, bool methodCallRange);
+GOTO_TARGET_DECL(invokeSuperQuick, bool methodCallRange);
GOTO_TARGET_DECL(invokeMethod, bool methodCallRange, const Method* methodToCall,
u2 count, u2 regs);
GOTO_TARGET_DECL(returnFromMethod);
@@ -1036,33 +1036,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_IGET_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, vCCCC, class@AAAAAAAA*/) \
- { \
- InstField* ifield; \
- Object* obj; \
- EXPORT_PC(); \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- vsrc1 = FETCH(4); /* object ptr */ \
- ILOGV("|iget%s/jumbo v%d,v%d,field@0x%08x", \
- (_opname), vdst, vsrc1, ref); \
- obj = (Object*) GET_REGISTER(vsrc1); \
- if (!checkForNull(obj)) \
- GOTO_exceptionThrown(); \
- ifield = (InstField*) dvmDexGetResolvedField(methodClassDex, ref); \
- if (ifield == NULL) { \
- ifield = dvmResolveInstField(curMethod->clazz, ref); \
- if (ifield == NULL) \
- GOTO_exceptionThrown(); \
- } \
- SET_REGISTER##_regsize(vdst, \
- dvmGetField##_ftype(obj, ifield->byteOffset)); \
- ILOGV("+ IGET '%s'=0x%08llx", ifield->field.name, \
- (u8) GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(5);
-
#define HANDLE_IGET_X_QUICK(_opcode, _opname, _ftype, _regsize) \
HANDLE_OPCODE(_opcode /*vA, vB, field@CCCC*/) \
{ \
@@ -1107,33 +1080,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_IPUT_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, vCCCC, class@AAAAAAAA*/) \
- { \
- InstField* ifield; \
- Object* obj; \
- EXPORT_PC(); \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- vsrc1 = FETCH(4); /* object ptr */ \
- ILOGV("|iput%s/jumbo v%d,v%d,field@0x%08x", \
- (_opname), vdst, vsrc1, ref); \
- obj = (Object*) GET_REGISTER(vsrc1); \
- if (!checkForNull(obj)) \
- GOTO_exceptionThrown(); \
- ifield = (InstField*) dvmDexGetResolvedField(methodClassDex, ref); \
- if (ifield == NULL) { \
- ifield = dvmResolveInstField(curMethod->clazz, ref); \
- if (ifield == NULL) \
- GOTO_exceptionThrown(); \
- } \
- dvmSetField##_ftype(obj, ifield->byteOffset, \
- GET_REGISTER##_regsize(vdst)); \
- ILOGV("+ IPUT '%s'=0x%08llx", ifield->field.name, \
- (u8) GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(5);
-
#define HANDLE_IPUT_X_QUICK(_opcode, _opname, _ftype, _regsize) \
HANDLE_OPCODE(_opcode /*vA, vB, field@CCCC*/) \
{ \
@@ -1183,29 +1129,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_SGET_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, class@AAAAAAAA*/) \
- { \
- StaticField* sfield; \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- ILOGV("|sget%s/jumbo v%d,sfield@0x%08x", (_opname), vdst, ref); \
- sfield = (StaticField*)dvmDexGetResolvedField(methodClassDex, ref); \
- if (sfield == NULL) { \
- EXPORT_PC(); \
- sfield = dvmResolveStaticField(curMethod->clazz, ref); \
- if (sfield == NULL) \
- GOTO_exceptionThrown(); \
- if (dvmDexGetResolvedField(methodClassDex, ref) == NULL) { \
- JIT_STUB_HACK(dvmJitEndTraceSelect(self,pc)); \
- } \
- } \
- SET_REGISTER##_regsize(vdst, dvmGetStaticField##_ftype(sfield)); \
- ILOGV("+ SGET '%s'=0x%08llx", \
- sfield->field.name, (u8)GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(4);
-
#define HANDLE_SPUT_X(_opcode, _opname, _ftype, _regsize) \
HANDLE_OPCODE(_opcode /*vAA, field@BBBB*/) \
{ \
@@ -1229,29 +1152,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_SPUT_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, class@AAAAAAAA*/) \
- { \
- StaticField* sfield; \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- ILOGV("|sput%s/jumbo v%d,sfield@0x%08x", (_opname), vdst, ref); \
- sfield = (StaticField*)dvmDexGetResolvedField(methodClassDex, ref); \
- if (sfield == NULL) { \
- EXPORT_PC(); \
- sfield = dvmResolveStaticField(curMethod->clazz, ref); \
- if (sfield == NULL) \
- GOTO_exceptionThrown(); \
- if (dvmDexGetResolvedField(methodClassDex, ref) == NULL) { \
- JIT_STUB_HACK(dvmJitEndTraceSelect(self,pc)); \
- } \
- } \
- dvmSetStaticField##_ftype(sfield, GET_REGISTER##_regsize(vdst)); \
- ILOGV("+ SPUT '%s'=0x%08llx", \
- sfield->field.name, (u8)GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(4);
-
/* File: cstubs/enddefs.cpp */
/* undefine "magic" name remapping */
@@ -1276,6 +1176,8 @@ GOTO_TARGET_DECL(exceptionThrown);
*/
void dvmMterpDumpArmRegs(uint32_t r0, uint32_t r1, uint32_t r2, uint32_t r3)
{
+ // TODO: Clang does not support asm declaration syntax.
+#ifndef __clang__
register uint32_t rPC asm("r4");
register uint32_t rFP asm("r5");
register uint32_t rSELF asm("r6");
@@ -1290,6 +1192,7 @@ void dvmMterpDumpArmRegs(uint32_t r0, uint32_t r1, uint32_t r2, uint32_t r3)
printf(" : rPC=%08x rFP=%08x rSELF=%08x rINST=%08x\n",
rPC, rFP, rSELF, rINST);
printf(" : rIBASE=%08x r9=%08x r10=%08x\n", rIBASE, r9, r10);
+#endif
//Thread* self = (Thread*) rSELF;
//const Method* method = self->method;
diff --git a/vm/mterp/out/InterpC-armv6j.cpp b/vm/mterp/out/InterpC-armv6j.cpp
index 603c35b89..b9c203516 100644
--- a/vm/mterp/out/InterpC-armv6j.cpp
+++ b/vm/mterp/out/InterpC-armv6j.cpp
@@ -102,7 +102,7 @@
{ \
char* desc; \
desc = dexProtoCopyMethodDescriptor(&curMethod->prototype); \
- LOGE("Invalid branch %d at 0x%04x in %s.%s %s", \
+ ALOGE("Invalid branch %d at 0x%04x in %s.%s %s", \
myoff, (int) (pc - curMethod->insns), \
curMethod->clazz->descriptor, curMethod->name, desc); \
free(desc); \
@@ -128,10 +128,10 @@
char debugStrBuf[128]; \
snprintf(debugStrBuf, sizeof(debugStrBuf), __VA_ARGS__); \
if (curMethod != NULL) \
- LOG(_level, LOG_TAG"i", "%-2d|%04x%s", \
+ ALOG(_level, LOG_TAG"i", "%-2d|%04x%s", \
self->threadId, (int)(pc - curMethod->insns), debugStrBuf); \
else \
- LOG(_level, LOG_TAG"i", "%-2d|####%s", \
+ ALOG(_level, LOG_TAG"i", "%-2d|####%s", \
self->threadId, debugStrBuf); \
} while(false)
void dvmDumpRegs(const Method* method, const u4* framePtr, bool inOnly);
@@ -320,15 +320,15 @@ static inline bool checkForNull(Object* obj)
return false;
}
#ifdef WITH_EXTRA_OBJECT_VALIDATION
- if (!dvmIsHeapAddressObject(obj)) {
- LOGE("Invalid object %p", obj);
+ if (!dvmIsHeapAddress(obj)) {
+ ALOGE("Invalid object %p", obj);
dvmAbort();
}
#endif
#ifndef NDEBUG
if (obj->clazz == NULL || ((u4) obj->clazz) <= 65536) {
/* probable heap corruption */
- LOGE("Invalid object class %p (in %p)", obj->clazz, obj);
+ ALOGE("Invalid object class %p (in %p)", obj->clazz, obj);
dvmAbort();
}
#endif
@@ -353,14 +353,14 @@ static inline bool checkForNullExportPC(Object* obj, u4* fp, const u2* pc)
}
#ifdef WITH_EXTRA_OBJECT_VALIDATION
if (!dvmIsHeapAddress(obj)) {
- LOGE("Invalid object %p", obj);
+ ALOGE("Invalid object %p", obj);
dvmAbort();
}
#endif
#ifndef NDEBUG
if (obj->clazz == NULL || ((u4) obj->clazz) <= 65536) {
/* probable heap corruption */
- LOGE("Invalid object class %p (in %p)", obj->clazz, obj);
+ ALOGE("Invalid object class %p (in %p)", obj->clazz, obj);
dvmAbort();
}
#endif
@@ -471,9 +471,9 @@ static inline bool checkForNullExportPC(Object* obj, u4* fp, const u2* pc)
return; \
} while(false)
-#define GOTO_invoke(_target, _methodCallRange, _jumboFormat) \
+#define GOTO_invoke(_target, _methodCallRange) \
do { \
- dvmMterp_##_target(self, _methodCallRange, _jumboFormat); \
+ dvmMterp_##_target(self, _methodCallRange); \
return; \
} while(false)
@@ -505,14 +505,14 @@ static inline bool checkForNullExportPC(Object* obj, u4* fp, const u2* pc)
/* File: c/opcommon.cpp */
/* forward declarations of goto targets */
-GOTO_TARGET_DECL(filledNewArray, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeVirtual, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeSuper, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeInterface, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeDirect, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeStatic, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeVirtualQuick, bool methodCallRange, bool jumboFormat);
-GOTO_TARGET_DECL(invokeSuperQuick, bool methodCallRange, bool jumboFormat);
+GOTO_TARGET_DECL(filledNewArray, bool methodCallRange);
+GOTO_TARGET_DECL(invokeVirtual, bool methodCallRange);
+GOTO_TARGET_DECL(invokeSuper, bool methodCallRange);
+GOTO_TARGET_DECL(invokeInterface, bool methodCallRange);
+GOTO_TARGET_DECL(invokeDirect, bool methodCallRange);
+GOTO_TARGET_DECL(invokeStatic, bool methodCallRange);
+GOTO_TARGET_DECL(invokeVirtualQuick, bool methodCallRange);
+GOTO_TARGET_DECL(invokeSuperQuick, bool methodCallRange);
GOTO_TARGET_DECL(invokeMethod, bool methodCallRange, const Method* methodToCall,
u2 count, u2 regs);
GOTO_TARGET_DECL(returnFromMethod);
@@ -1036,33 +1036,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_IGET_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, vCCCC, class@AAAAAAAA*/) \
- { \
- InstField* ifield; \
- Object* obj; \
- EXPORT_PC(); \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- vsrc1 = FETCH(4); /* object ptr */ \
- ILOGV("|iget%s/jumbo v%d,v%d,field@0x%08x", \
- (_opname), vdst, vsrc1, ref); \
- obj = (Object*) GET_REGISTER(vsrc1); \
- if (!checkForNull(obj)) \
- GOTO_exceptionThrown(); \
- ifield = (InstField*) dvmDexGetResolvedField(methodClassDex, ref); \
- if (ifield == NULL) { \
- ifield = dvmResolveInstField(curMethod->clazz, ref); \
- if (ifield == NULL) \
- GOTO_exceptionThrown(); \
- } \
- SET_REGISTER##_regsize(vdst, \
- dvmGetField##_ftype(obj, ifield->byteOffset)); \
- ILOGV("+ IGET '%s'=0x%08llx", ifield->field.name, \
- (u8) GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(5);
-
#define HANDLE_IGET_X_QUICK(_opcode, _opname, _ftype, _regsize) \
HANDLE_OPCODE(_opcode /*vA, vB, field@CCCC*/) \
{ \
@@ -1107,33 +1080,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_IPUT_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, vCCCC, class@AAAAAAAA*/) \
- { \
- InstField* ifield; \
- Object* obj; \
- EXPORT_PC(); \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- vsrc1 = FETCH(4); /* object ptr */ \
- ILOGV("|iput%s/jumbo v%d,v%d,field@0x%08x", \
- (_opname), vdst, vsrc1, ref); \
- obj = (Object*) GET_REGISTER(vsrc1); \
- if (!checkForNull(obj)) \
- GOTO_exceptionThrown(); \
- ifield = (InstField*) dvmDexGetResolvedField(methodClassDex, ref); \
- if (ifield == NULL) { \
- ifield = dvmResolveInstField(curMethod->clazz, ref); \
- if (ifield == NULL) \
- GOTO_exceptionThrown(); \
- } \
- dvmSetField##_ftype(obj, ifield->byteOffset, \
- GET_REGISTER##_regsize(vdst)); \
- ILOGV("+ IPUT '%s'=0x%08llx", ifield->field.name, \
- (u8) GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(5);
-
#define HANDLE_IPUT_X_QUICK(_opcode, _opname, _ftype, _regsize) \
HANDLE_OPCODE(_opcode /*vA, vB, field@CCCC*/) \
{ \
@@ -1183,29 +1129,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_SGET_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, class@AAAAAAAA*/) \
- { \
- StaticField* sfield; \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- ILOGV("|sget%s/jumbo v%d,sfield@0x%08x", (_opname), vdst, ref); \
- sfield = (StaticField*)dvmDexGetResolvedField(methodClassDex, ref); \
- if (sfield == NULL) { \
- EXPORT_PC(); \
- sfield = dvmResolveStaticField(curMethod->clazz, ref); \
- if (sfield == NULL) \
- GOTO_exceptionThrown(); \
- if (dvmDexGetResolvedField(methodClassDex, ref) == NULL) { \
- JIT_STUB_HACK(dvmJitEndTraceSelect(self,pc)); \
- } \
- } \
- SET_REGISTER##_regsize(vdst, dvmGetStaticField##_ftype(sfield)); \
- ILOGV("+ SGET '%s'=0x%08llx", \
- sfield->field.name, (u8)GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(4);
-
#define HANDLE_SPUT_X(_opcode, _opname, _ftype, _regsize) \
HANDLE_OPCODE(_opcode /*vAA, field@BBBB*/) \
{ \
@@ -1229,29 +1152,6 @@ GOTO_TARGET_DECL(exceptionThrown);
} \
FINISH(2);
-#define HANDLE_SPUT_X_JUMBO(_opcode, _opname, _ftype, _regsize) \
- HANDLE_OPCODE(_opcode /*vBBBB, class@AAAAAAAA*/) \
- { \
- StaticField* sfield; \
- ref = FETCH(1) | (u4)FETCH(2) << 16; /* field ref */ \
- vdst = FETCH(3); \
- ILOGV("|sput%s/jumbo v%d,sfield@0x%08x", (_opname), vdst, ref); \
- sfield = (StaticField*)dvmDexGetResolvedField(methodClassDex, ref); \
- if (sfield == NULL) { \
- EXPORT_PC(); \
- sfield = dvmResolveStaticField(curMethod->clazz, ref); \
- if (sfield == NULL) \
- GOTO_exceptionThrown(); \
- if (dvmDexGetResolvedField(methodClassDex, ref) == NULL) { \
- JIT_STUB_HACK(dvmJitEndTraceSelect(self,pc)); \
- } \
- } \
- dvmSetStaticField##_ftype(sfield, GET_REGISTER##_regsize(vdst)); \
- ILOGV("+ SPUT '%s'=0x%08llx", \
- sfield->field.name, (u8)GET_REGISTER##_regsize(vdst)); \
- } \
- FINISH(4);
-
/* File: cstubs/enddefs.cpp */
/* undefine "magic" name remapping */
@@ -1276,6 +1176,8 @@ GOTO_TARGET_DECL(exceptionThrown);
*/
void dvmMterpDumpArmRegs(uint32_t r0, uint32_t r1, uint32_t r2, uint32_t r3)
{
+ // TODO: Clang does not support asm declaration syntax.
+#ifndef __clang__
register uint32_t rPC asm("r4");
register uint32_t rFP asm("r5");
register uint32_t rSELF asm("r6");
@@ -1290,6 +1192,7 @@ void dvmMterpDumpArmRegs(uint32_t r0, uint32_t r1, uint32_t r2, uint32_t r3)
printf(" : rPC=%08x rFP=%08x rSELF=%08x rINST=%08x\n",
rPC, rFP, rSELF, rINST);
printf(" : rIBASE=%08x r9=%08x r10=%08x\n", rIBASE, r9, r10);
+#endif
//Thread* self = (Thread*) rSELF;
//const Method* method = self->method;