×

Compiler for generating an executable comprising instructions for a plurality of different instruction sets

  • US 8,561,037 B2
  • Filed: 08/29/2007
  • Issued: 10/15/2013
  • Est. Priority Date: 08/29/2007
  • Status: Active Grant
First Claim
Patent Images

1. A method for compiling an executable file for execution on a target system, wherein the target system comprises a host processor having a first, fixed processor instruction set and a heterogeneous co-processor having reconfigurable logic for dynamically reconfiguring the co-processor'"'"'s instruction set to be any of a plurality of predefined co-processor instruction sets, wherein each of the plurality of predefined co-processor instruction sets provides extended instructions that are not natively supported by the first instruction set of the host processor, thereby extending the first processor instruction set of the host processor, and wherein the plurality of predefined co-processor instruction sets are mutually exclusive, the method comprising:

  • receiving, by a compiler, source code for a software application;

    analyzing, by the compiler, types of operations encountered in the received source codedetermining, by the compiler using said analyzing, instructions of a predefined co-processor instruction set of the plurality of predefined co-processor instruction sets that optimally enhance performance of at least a portion of the types of operations encountered in the received source code;

    selecting, by the compiler, said predefined co-processor instruction set of said plurality of predefined co-processor instruction sets as a selected predefined co-processor instruction set having extended instructions to be generated in said executable file; and

    processing, by the compiler, the source code to generate said executable file that comprisesnative instructions of the host processor'"'"'s instruction set, andextended instructions of said selected predefined co-processor instruction set determined to optimally enhance performance of the at least a portion of the types of operations encountered in the received source code.

View all claims
  • 10 Assignments
Timeline View
Assignment View
    ×
    ×