Patent 5926639 Issued on July 20, 1999. Estimated Expiration Date: December 18, 2016. Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.
A method and apparatus for making flow information available for binary manipulation tasks are disclosed. Flow information is generated and saved either by a compiler or by a flow information generator. A compiler generates the flow information directly from a source file while the compiler is compiling the source file into an executable file. A flow information generator generates the flow information from an executable file in a manner similar to a compiler. Further, the flow information generator groups the executable file into units of text and traces the units to produce the flow information. The binary information thus retrieved is saved and embedded either in a text or a header of the executable file or placed in a file separate from the executable file. The flow information may be used in binary manipulations including binary translations, binary-to-binary optimizations, program tracing, and program debugging.
Other References
"The XDos Binary Code Conversion System" John Banning, COMPCON Spring '89--34th IEEE Computer Society International Conference--Intellectual Leverage, Feb. 1989, pp. 282-287
Kramer et al., "The Combining DAG: A Technique for Parallel Data Flow Analysis," Proceedings of the 6th International Parallel Processing Symposium, IEEE CS Press, Mar. 23-26, 1992, pp. 652-655
Gupta et al., "A Framework for Partial Data Flow Analysis," Proceedings of the International Conference on Software Maintenance, IEEE CS Press, Sep. 19-23, 1994, pp. 4-13
Richardson et al., "Code Optimization Across Procedures," IEEE Computers, Feb. 1989, pp. 42-50
Richardson, S. E., "Exploiting Trivial and Redundant Computation," Proceedings of the 11th Symposium on Computer Arithmetic, IEEE CS Press, Jun. 29-Jul. 2, 1993, pp. 220-22