-
公开(公告)号:US10089126B2
公开(公告)日:2018-10-02
申请号:US13848191
申请日:2013-03-21
Applicant: VMware, Inc.
Inventor: Radu Rugina , Ricardo E. Gonzalez , Zheng He , Alok Kataria
Abstract: Function exits are instrumented in tail-call optimized code in which calls to target functions and return instructions are replaced by jump instructions. A probe engine identifies a tail-call jump and instruments the jumps to raise an exception. In response to an exception raised at the tail-call jump, an exception handler loads various registers and transferring control to a trampoline, which calls the jump target. After the target function returns, an exit probe is fired when the trampoline itself returns.
-
2.
公开(公告)号:US20140289726A1
公开(公告)日:2014-09-25
申请号:US13848191
申请日:2013-03-21
Applicant: VMWARE, INC.
Inventor: Radu Rugina , Ricardo E. Gonzalez , Zheng He , Alok Kataria
IPC: G06F9/455
CPC classification number: G06F9/45525 , G06F9/45545 , G06F9/4812 , G06F11/3409 , G06F11/3466 , G06F2201/815 , G06F2201/865
Abstract: Function exits are instrumented in tail-call optimized code in which calls to target functions and return instructions are replaced by jump instructions. A probe engine identifies a tail-call jump and instruments the jumps to raise an exception. In response to an exception raised at the tail-call jump, an exception handler loads various registers and transferring control to a trampoline, which calls the jump target. After the target function returns, an exit probe is fired when the trampoline itself returns.
Abstract translation: 功能出口被调用在尾调用优化代码中,其中对目标函数和返回指令的调用被跳转指令代替。 探针引擎识别尾部呼叫跳转并设置跳转以引发异常。 响应于尾部调用跳转引发的异常,异常处理程序加载各种寄存器并将控制传输到调用跳转目标的蹦床。 目标函数返回后,当蹦床本身返回时,将退出探针。
-