Methods and apparatus for optimizing programs in the presence of exceptions
US6487716B1 · kind B1 · utility
Assignee
Inventors
Key dates
| Filing date | Oct 8, 1999 |
| Grant date | Nov 26, 2002 |
| Priority date | — |
| Expiry date | Oct 8, 2019 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F2209/481
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
A method and several variants are provided for analyzing and transforming a computer program such that instructions may be reordered even across instructions that may throw an exception, while strictly preserving the precise exception semantics of the original program. The method uses program analysis to identify the subset of program state that needs to be preserved if an exception is thrown. Furthermore, the method performs a program transformation that allows dependence constraints among potentially excepting instructions to be completely ignored while applying program optimizations. This transformation does not require any special hardware support, and requires a compensation code to be executed only if an exception is thrown, i.e., no additional instructions need to be executed if an exception is not thrown. Variants of the method show how one or several of the features of the method may be performed.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.