Serguei Katkov | 6cbe081 | 2016-03-01 16:10:48 +0600 | [diff] [blame^] | 1 | %default { "helper":"UndefinedInvokeHandler" } |
2 | /* | ||||
3 | * Generic invoke handler wrapper. | ||||
4 | */ | ||||
5 | /* op vB, {vD, vE, vF, vG, vA}, class@CCCC */ | ||||
6 | /* op {vCCCC..v(CCCC+AA-1)}, meth@BBBB */ | ||||
7 | .extern $helper | ||||
8 | EXPORT_PC | ||||
9 | movq rSELF, OUT_ARG0 | ||||
10 | leaq OFF_FP_SHADOWFRAME(rFP), OUT_ARG1 | ||||
11 | movq rPC, OUT_ARG2 | ||||
12 | REFRESH_INST ${opnum} | ||||
13 | movl rINST, OUT_32_ARG3 | ||||
14 | call SYMBOL($helper) | ||||
15 | testb %al, %al | ||||
16 | jz MterpException | ||||
17 | ADVANCE_PC_FETCH_AND_GOTO_NEXT 3 |