Home | History | Annotate | Download | only in armv5te
      1     /*
      2      * This handler transfers control to the interpeter without performing
      3      * any lookups.  It may be called either as part of a normal chaining
      4      * operation, or from the transition code in header.S.  We distinquish
      5      * the two cases by looking at the link register.  If called from a
      6      * translation chain, it will point to the chaining Dalvik PC -3.
      7      * On entry:
      8      *    lr - if NULL:
      9      *        r1 - the Dalvik PC to begin interpretation.
     10      *    else
     11      *        [lr, #3] contains Dalvik PC to begin interpretation
     12      *    rSELF - pointer to thread
     13      *    rFP - Dalvik frame pointer
     14      */
     15     cmp     lr, #0
     16 #if defined(WORKAROUND_CORTEX_A9_745320)
     17     /* Don't use conditional loads if the HW defect exists */
     18     beq     101f
     19     ldr     r1,[lr, #3]
     20 101:
     21 #else
     22     ldrne   r1,[lr, #3]
     23 #endif
     24     ldr     r2, .LinterpPunt
     25     mov     r0, r1                       @ set Dalvik PC
     26     bx      r2
     27     @ doesn't return
     28 
     29 .LinterpPunt:
     30     .word   dvmJitToInterpPunt
     31