Typed intermediate language support for existing compilers
AssigneeMicrosoft Corporation
InventorJuan Chen
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Corporation
InventorJuan Chen
Estimating the term…
Described is a technology by which a compiler's intermediate representation is generated in a way that includes type checking to ensure safe execution. Typed representation of virtual method invocation uses an exact class name to represent objects of the class but not those of the subclasses, and a combined class type as an encoding of an existential type to represent objects of the class and subclasses of the class. Typed representation of interface method invocation is also provided, as is testing whether the object can be cast to a class, to an interface and/or to a class vector. Vector store checking is also able to be type checked. The medium-level intermediate representation is translated into a low-level intermediate representation, including choosing data representation for types, and converting medium-level intermediate representation operators into instructions in the low-level representation. Using a typed intermediate representation without scopes and determining the scopes of type variables when performing type checking is also described.
A computer implemented method, comprising:
A system implemented in an optimizing compiler, the system comprising:
A computer implemented method implemented at least in part on at least one processing unit, comprising:
Dependencies are inferred from the claim text.