Compiler generating functionally-alike code sequences in an executable program intended for execution in different run-time environments
First Claim
1. A method of generating an executable program, comprising the step of generating a plurality of code sequences in the executable program, each code sequence performing a common function required by a portion of a source program from which the executable program is generated, each code sequence being better suited for execution in a corresponding one of different run-time environments than are the other code sequences, the code sequences being generated in a manner enabling execution of the better-suited code sequence in each of the run-time environments.
7 Assignments
0 Petitions
Accused Products
Abstract
A compiler-loader system enables the creation of different loaded executable images in target computers complying with different versions of an instruction-set architecture, the different images being created from a single executable program on secondary storage. The compiler generates an executable program containing a routine executable on both versions of the target computers, and also containing an architecture entry with (i) an address of the program location from which the routine is called, (ii) an instruction executable on only one version of the target computers that performs the same function as the routine but with superior performance, and (iii) a value indicating which version of the target machines the instruction can be executed on. The loader determines whether the target machine can execute the instruction, and if so replaces the subroutine call appearing at the address in the architecture entry with the instruction appearing in the architecture entry.
-
Citations
20 Claims
- 1. A method of generating an executable program, comprising the step of generating a plurality of code sequences in the executable program, each code sequence performing a common function required by a portion of a source program from which the executable program is generated, each code sequence being better suited for execution in a corresponding one of different run-time environments than are the other code sequences, the code sequences being generated in a manner enabling execution of the better-suited code sequence in each of the run-time environments.
-
17. A method, comprising the steps of:
-
generating an instruction in an executable program, the instruction performing a function required by a portion of a source program from which the executable program is generated, the instruction being executable on only one of two different versions of computers on which the executable program is intended to be executed; generating a routine in the executable program, the routine also performing the required function but being executable on both versions of the computers; and generating an architecture entry in the executable program having (i) an address specifying a program location in the executable program at which the function is required to be performed; and
(ii) a value indicating which version of the computers can execute the instruction. - View Dependent Claims (18, 19)
-
-
20. A method of generating an executable program, comprising:
-
generating an executable image from a source program, a portion of the source program requiring performance of at least one function; and generating a plurality of code sequences, each code sequence performing a common selected function, each code sequence being better suited for execution in a corresponding one of different run-time environments than are the other code sequences, the code sequences being generated in a manner enabling execution, when the selected function is required to be performed by the executable image, of the better-suited code sequence in each of the run-time environments.
-
Specification