Invention Grant
- Patent Title: Optimized trampoline design for fast software tracing
-
Application No.: US16148126Application Date: 2018-10-01
-
Publication No.: US10884899B2Publication Date: 2021-01-05
- Inventor: Naveen N. Rao , Ananth N. Mavinakayanahalli
- Applicant: International Business Machines Corporation
- Applicant Address: US NY Armonk
- Assignee: International Business Machines Corporation
- Current Assignee: International Business Machines Corporation
- Current Assignee Address: US NY Armonk
- Agency: Heslin Rothenberg Farley & Mesiti P.C.
- Agent Noah Sharkan, Esq.; Kevin P. Radigan, Esq.
- Main IPC: G06F11/36
- IPC: G06F11/36 ; G06F9/30

Abstract:
Tracing computer software program execution includes copying a software instruction at an instrumentation point within an original instruction stream, and replacing the software instruction with a jump instruction. The jump instruction branches to a multi-level trampoline that includes at least a first-level trampoline specific to an associated software tracing probe, and a second-level trampoline generic to plural software tracing probes. The first-level trampoline preserves partial CPU state and branches to the second-level trampoline, passing it software tracing probe identifying information. The second-level trampoline preserves a remainder of the CPU state, implements software tracing operations in accordance with the software tracing probe, restores the CPU state that it previously preserved, and returns program control to the first-level trampoline. Either the first-level or second-level trampoline may execute or emulate the original instruction. The first-level trampoline restores the CPU state that it previously preserved, and returns program control to the original instruction stream.
Information query