发明名称 System, method, and product for multi-branch backpatching in a dynamic translator
摘要 A computer-implemented system, method, and product are provided for multi-branch backpatching in a dynamic translator. Such backpatching typically increases the speed of execution of translated instructions by providing a direct control path from translated multi-branch-jump instructions to their translated target instructions. In one embodiment, the multi-branch backpatching dynamic translator undertakes backpatching on an "as-needed" basis at run time. That is, backpatching is done for those branch targets that are executed rather than for all branch targets, or rather than for those branch targets that are estimated or assumed will be executed. Such backpatching is accomplished in one embodiment by generating dynamic backpatching code specific to each translated multi-branch-jump instruction. A multi-branch jump, or switch, table of each multi-branch-jump instruction is initialized so that all entries direct control to the dynamic backpatching code for that instruction. As branches of the multi-branch-jump instruction are executed, the dynamic backpatching code enables a backpatcher that replaces the corresponding entry in the translated multi-branch-jump table with pointers to the address of the translated target address, if present.
申请公布号 US6327704(B1) 申请公布日期 2001.12.04
申请号 US19980130421 申请日期 1998.08.06
申请人 HEWLETT-PACKARD COMPANY 发明人 MATTSON, JR. JAMES S.;SHAH LACKY V.;BUZBEE WILLIAM B.;BENITEZ MANUEL E.
分类号 G06F9/32;G06F9/318;G06F9/45;(IPC1-7):G06F9/45 主分类号 G06F9/32
代理机构 代理人
主权项
地址