Controlling compatibility levels of binary translations between instruction set architectures
A binary encoding and code technology, applied in the direction of binary to binary, memory system, electrical digital data processing, etc., can solve the problems of coding translation difficulty and inefficiency
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Publication Date
- 2007-12-26
- Estimated Expiration
- Not applicable · inactive patent
Smart Images
Figure 1 Figure 2 Figure 3
Abstract
Description
technical field
[0001] The present invention relates to computer processing. More specifically, the present invention relates to binary code translation between different instruction set architectures or between different optimization levels with the same instruction set architecture. Background technique
[0002] While current program code compilers are designed to generate binary encodings that utilize the latest developments in current instruction set architectures (ISAs), binary encodings generated based on previous instruction set architectures cannot use these latest developments. Binary code translation is a common method for translating the binary code of a given program code / application based on one ISA to one based on a different ISA or based on a different subset of the same ISA Binary encoding of the given program code / application. The different instruction set architecture may be a different architecture or an improved version of a previous instruction set arc...
Examples
Embodiment Construction
[0016] In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details.
[0017] Embodiments of the present invention contemplate partially compatible instruction set architectures, wherein a binary encoding of program code generated for a first instruction set architecture is translated into a binary encoding using certain features of a second instruction set architecture, while Partial compatibility with first instruction set architectures is maintained. In one embodiment, the level of compatibility is controlled by the program environment, including but not limited to the user, compiler, and operating system. In one such embodiment, a set of compatibility modes or switches are defined on top of the second instruction set architecture. Acco...