06463582 is referenced by 461 patents and cites 2 patents.

An optimizing object code translation system and method perform dynamic compilation and translation of a target object code on a source operating system while performing optimization. Compilation and optimization of the target code is dynamically executed in real time. A compiler performs analysis and optimizations that improve emulation relative to template-based translation and interpretation such that a host processor which processes larger order instructions, such as 32-bit instructions, may emulate a target processor which processes smaller order instructions, such as 16-bit and 8-bit instructions. The optimizing object code translator does not require knowledge of a static program flow graph or memory locations of target instructions prior to run time. In addition, the optimizing object code translator does not require knowledge of the location of all join points into the target object code prior to execution. During program execution, a translator records branch operations. The logging of information identifies instructions and instruction join points. When a number of times a branch operation is executed exceeds a threshold, the destination of the branch becomes a seed for compilation and code portions between seeds are defined as segments. A segment may be incomplete allowing for modification or replacement to account for a new flow of program control during real time program execution.

Title
Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method
Application Number
9/176112
Publication Number
6463582 (B1)
Application Date
October 21, 1998
Publication Date
October 8, 2002
Inventor
Mitsuo Sakurai
Kawasaki
US
Mikayo Wada
Kawasaki
US
Charles D Garrett
Seattle
WA, US
Joseph A Bank III
New York
NY, US
Richard A Lethin
New York
NY, US
Agent
Staas & Halsey
US
Assignee
Fujitsu
US
IPC
G06F 9/45
View Original Source