发明名称 RETURN ADDRESS OPTIMISATION FOR A DYNAMIC CODE TRANSLATOR
摘要 A dynamic code translator with isoblocking uses a return trampoline having branch instructions conditioned on different isostates to optimize return address translation, by allowing the hardware to predict that the address of a future return will be the address of trampoline. An IP relative call is inserted into translated code to write the trampoline address to a target link register and a target return address stack used by the native machine to predict return addresses. If a computed subject return address matches a subject return address register value, the current isostate of the isoblock is written to an isostate register. The isostate value in the isostate register is then used to select the branch instruction in the trampoline for the true subject return address. Sufficient code area in the trampoline instruction set can be reserved for a number of compare/branch pairs which is equal to the number of available isostates.
申请公布号 US2013024674(A1) 申请公布日期 2013.01.24
申请号 US201113186831 申请日期 2011.07.20
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION;LOVETT WILLIAM O.;BROWN ALEXANDER B. 发明人 LOVETT WILLIAM O.;BROWN ALEXANDER B.
分类号 G06F9/30 主分类号 G06F9/30
代理机构 代理人
主权项
地址