ldr r1, [rSELF, #offThread_method] @ r1<- self->method
mov r0, rSELF @ r0<- self
ldr r1, [r1, #offMethod_insns] @ r1<- method->insns
- ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags
mov r2, r9 @ r2<- exception
sub r1, rPC, r1 @ r1<- pc - method->insns
mov r1, r1, asr #1 @ r1<- offset in code units
lw a1, offThread_method(rSELF)
move a0, rSELF
lw a1, offMethod_insns(a1)
- lhu ra, offThread_subMode(rSELF)
move a2, rOBJ
subu a1, rPC, a1
sra a1, a1, 1
ldr r1, [rSELF, #offThread_method] @ r1<- self->method
mov r0, rSELF @ r0<- self
ldr r1, [r1, #offMethod_insns] @ r1<- method->insns
- ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags
mov r2, r9 @ r2<- exception
sub r1, rPC, r1 @ r1<- pc - method->insns
mov r1, r1, asr #1 @ r1<- offset in code units
ldr r1, [rSELF, #offThread_method] @ r1<- self->method
mov r0, rSELF @ r0<- self
ldr r1, [r1, #offMethod_insns] @ r1<- method->insns
- ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags
mov r2, r9 @ r2<- exception
sub r1, rPC, r1 @ r1<- pc - method->insns
mov r1, r1, asr #1 @ r1<- offset in code units
ldr r1, [rSELF, #offThread_method] @ r1<- self->method
mov r0, rSELF @ r0<- self
ldr r1, [r1, #offMethod_insns] @ r1<- method->insns
- ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags
mov r2, r9 @ r2<- exception
sub r1, rPC, r1 @ r1<- pc - method->insns
mov r1, r1, asr #1 @ r1<- offset in code units
ldr r1, [rSELF, #offThread_method] @ r1<- self->method
mov r0, rSELF @ r0<- self
ldr r1, [r1, #offMethod_insns] @ r1<- method->insns
- ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags
mov r2, r9 @ r2<- exception
sub r1, rPC, r1 @ r1<- pc - method->insns
mov r1, r1, asr #1 @ r1<- offset in code units
lw a1, offThread_method(rSELF)
move a0, rSELF
lw a1, offMethod_insns(a1)
- lhu ra, offThread_subMode(rSELF)
move a2, rOBJ
subu a1, rPC, a1
sra a1, a1, 1
movl offThread_method(%ecx), %eax # %eax = self->method
movl offMethod_insns(%eax), %eax # %eax = self->method->insn
- # ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags # TODO
movl rPC, %ecx
subl %eax, %ecx # %ecx = pc - self->method->insn
sar $1, %ecx # adjust %ecx for code offset
movl offThread_method(%ecx), %eax # %eax = self->method
movl offMethod_insns(%eax), %eax # %eax = self->method->insn
- # ldrh lr, [rSELF, #offThread_subMode] @ lr<- subMode flags # TODO
movl rPC, %ecx
subl %eax, %ecx # %ecx = pc - self->method->insn
sar $$1, %ecx # adjust %ecx for code offset