Optimized trampoline design for fast software tracing
AssigneeInternational Business Machines Corporation
InventorsNaveen N. Rao, Ananth N. Mavinakayanahalli
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsNaveen N. Rao, Ananth N. Mavinakayanahalli
Estimating the term…
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.
A computer-implemented method for tracing computer software program execution, comprising:
A system, comprising:
A computer program product, comprising:
Dependencies are inferred from the claim text.