17c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee /* For: iget-object-quick */ 27c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee /* op vA, vB, offset@CCCC */ 37c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee movzbl rINSTbl, %ecx # ecx <- BA 47c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee sarl $$4, %ecx # ecx <- B 505dfaaa8d1783bcf8fe603dd8ed260a939e846c0Serguei Katkov GET_VREG %ecx, %ecx # vB (object we're operating on) 67c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee movzwl 2(rPC), %eax # eax <- field byte offset 77c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee movl %ecx, OUT_ARG0(%esp) 87c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee movl %eax, OUT_ARG1(%esp) 97c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee EXPORT_PC 1005dfaaa8d1783bcf8fe603dd8ed260a939e846c0Serguei Katkov call SYMBOL(artIGetObjectFromMterp) # (obj, offset) 117c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee movl rSELF, %ecx 12ff8579efb24457bb2f2b451a4e735b8bc4d0200cSerguei Katkov RESTORE_IBASE_FROM_SELF %ecx 137c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee cmpl $$0, THREAD_EXCEPTION_OFFSET(%ecx) 147c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee jnz MterpException # bail out 157c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee andb $$0xf,rINSTbl # rINST <- A 1605dfaaa8d1783bcf8fe603dd8ed260a939e846c0Serguei Katkov SET_VREG_OBJECT %eax, rINST # fp[A] <- value 177c58bd41046bb9f87642caa0c2b094dc98be29caBill Buzbee ADVANCE_PC_FETCH_AND_GOTO_NEXT 2 18