发明名称 |
setjmp/longjmp for speculative execution frameworks |
摘要 |
A process for check pointing in speculative execution frameworks, identifies calls to a set of setjmp/longjmp instructions to form identified calls to setjmp/longjmp, determines a control flow path between a call to a setjmp and a longjmp pair of instructions in the identified calls to setjmp/longjmp and replaces calls to the setjmp/longjmp pair of instructions with calls to an improved_setjmp and improved_longjmp instruction pair. The process creates a context data structure in memory, computes a non-volatile save/restore set and replaces the call to improved_setjmp of the setjmp/longjmp pair of instructions with instructions to save all required non-volatile and special purpose registers and replaces a call to improved_longjmp of the setjmp/longjmp pair of instructions with instructions to restore all required non-volatile and special purpose registers and to branch to an instruction immediately following a block of code containing the call to improved_setjmp. |
申请公布号 |
US8640113(B2) |
申请公布日期 |
2014.01.28 |
申请号 |
US201113026702 |
申请日期 |
2011.02.14 |
申请人 |
SILVERA RAUL ESTEBAN;WANG KAI-TING AMY;WU PENG;YAMASHITA MARK WAYNE;ZHUANG XIAOTONG;INTERNATIONAL BUSINESS MACHINES CORPORATION |
发明人 |
SILVERA RAUL ESTEBAN;WANG KAI-TING AMY;WU PENG;YAMASHITA MARK WAYNE;ZHUANG XIAOTONG |
分类号 |
G06F9/45 |
主分类号 |
G06F9/45 |
代理机构 |
|
代理人 |
|
主权项 |
|
地址 |
|