摘要:
The inventive system and method allows for software control of hardware drral of exceptions in speculative operations, and comprises three components. The first component is processor stored information which reflects the code generation strategy of applications and is used by hardware and the operating system to control exception deferral. The second component is processor stored information set by the operating system to specify to hardware which type of faults should be automatically deferred. The third component is further processor stored information which indicates to the hardware to defer certain exception causing aspects of the speculative operation, while performing other non excepting aspects of the speculative operation. The stored information is set after the operating system exception handler has unsuccessfully attempted fault resolution.
摘要:
A method of optimizing a computer program includes generating annotation information about the computer program, storing the annotation information with the computer program, and dynamically optimizing the computer program based on the annotation information while the computer program is being executed.
摘要:
The present disclosure relates to a system and method for dynamically replacing code. In one arrangement, the system and method pertain to intercepting original program instructions during execution of the program, determining if an original program instruction is to be replaced, and dynamically replacing the program instruction with a replacement instruction if it is determined that the original program instruction is to be replaced.
摘要:
A system and method for dynamically patching code. In one embodiment, a method includes intercepting original program instructions during execution of the program using a software interface, determining whether associated instructions have been cached in a code cache of the software interface and, if so, executing the cached instructions from the code cache, if associated instructions have not been cached, determining if the original program instructions require unavailable hardware functionality, and dynamically replacing the original program instructions with replacement instructions that do not require unavailable hardware functionality if it is determined that the original program instructions require unavailable hardware functionality, the dynamic replacing including fetching replacing instructions, storing the replacement instructions in the code cache, and executing the replacement instructions from the code cache.