US Patent Application 17664969. BINARY TRANSLATION USING RAW BINARY CODE WITH COMPILER PRODUCED METADATA simplified abstract

From WikiPatents
Jump to navigation Jump to search

BINARY TRANSLATION USING RAW BINARY CODE WITH COMPILER PRODUCED METADATA

Organization Name

International Business Machines Corporation

Inventor(s)

Toshihiko Koju of Chiba (JP)

REID Copeland of Ontario (CA)

David Kevin Siegwart of Eastleigh (GB)

Jordan Ryan Zannier of Scarborough (CA)

ALLAN H. Kielstra of Ajax (CA)

BINARY TRANSLATION USING RAW BINARY CODE WITH COMPILER PRODUCED METADATA - A simplified explanation of the abstract

This abstract first appeared for US patent application 17664969 titled 'BINARY TRANSLATION USING RAW BINARY CODE WITH COMPILER PRODUCED METADATA

Simplified Explanation

The abstract describes a method, system, and computer-readable medium for binary translation.

  • The binary translator combines raw binary code with compiler-produced metadata.
  • The translator uses the metadata to reconcile control flow information and aliasing information in the raw binary code.
  • It prevents copy propagation of values in temporary variables beyond certain offsets in the machine instructions.
  • It removes dead store instructions.
  • It generates an optimized version of a compiled program module that is compatible with the original version.


Original Abstract Submitted

A method, system, and computer-readable medium for binary translation cause a binary translator to combine raw binary code and compiler-produced metadata associated with a compiled program module. The binary translator is caused to further reconcile, using the compiler-produced metadata, original compiler-produced control flow information with how lower-level machine instructions comprise a control flow in the raw binary code, and original compiler-produced aliasing information with how lower-level machine instructions access the memory locations described by the aliasing information according to predetermined criteria. The binary translator further caused to prevent, copy propagation of values in temporary variables for decimal computations beyond offsets in the machine instructions where the temporary variables are killed. The binary translator further caused to remove identified dead store instructions, and to generate a new compiled program module comprising an optimized version of the compiled program module having strict compatibility to an original version of the compiled program module.