1 /* 2 * Return a 32-bit value. 3 * 4 * for: return, return-object 5 */ 6 /* op vAA */ 7 .extern MterpThreadFenceForConstructor 8 .extern MterpSuspendCheck 9 jal MterpThreadFenceForConstructor 10 lw ra, THREAD_FLAGS_OFFSET(rSELF) 11 move a0, rSELF 12 and ra, ra, (THREAD_SUSPEND_REQUEST | THREAD_CHECKPOINT_REQUEST) 13 beqzc ra, 1f 14 jal MterpSuspendCheck # (self) 15 1: 16 srl a2, rINST, 8 # a2 <- AA 17 GET_VREG_U a0, a2 # a0 <- vAA 18 b MterpReturn 19