Code verification system and method
First Claim
Patent Images
1. A code verification system, comprising:
- memory for storing a compiled program; and
a code verifier configured to analyze instructions of said program and to generate a plurality of type signatures based on said instructions, each of said type signatures indicating each input type constraint and each output type description for a respective one of said instructions, wherein said code verifier is configured to detect a type error by analyzing said type signatures,wherein said code verifier is further configured to analyze said program and to group said instructions of said program into a plurality of code blocks, wherein said code verifier is configured to translate said code blocks into type signature blocks, each of said type signature blocks having one or more type signatures of said plurality of type signatures, said code verifier further configured to compose the type signatures of each of said type signature blocks into a single respective composed type signature.
3 Assignments
0 Petitions
Accused Products
Abstract
A code verification system is utilized to type check compiled code. The code verification system includes memory and a code verifier. The memory is utilized to store a compiled program. The code verifier analyzes instructions of the program and generates a plurality of type signatures based on the instructions The type signatures indicate the input type constraints and the output type descriptions of the instructions, and the code verifier analyzes the type signatures to detect a type error.
-
Citations
10 Claims
-
1. A code verification system, comprising:
-
memory for storing a compiled program; and a code verifier configured to analyze instructions of said program and to generate a plurality of type signatures based on said instructions, each of said type signatures indicating each input type constraint and each output type description for a respective one of said instructions, wherein said code verifier is configured to detect a type error by analyzing said type signatures, wherein said code verifier is further configured to analyze said program and to group said instructions of said program into a plurality of code blocks, wherein said code verifier is configured to translate said code blocks into type signature blocks, each of said type signature blocks having one or more type signatures of said plurality of type signatures, said code verifier further configured to compose the type signatures of each of said type signature blocks into a single respective composed type signature. - View Dependent Claims (2, 3, 4)
-
-
5. A code verification method, comprising to steps of:
-
storing a compiled program; generating a plurality of type signatures based on instructions within said program, each of said type signatures indicating each input type constraint and each output type description for a respective one of said instructions; analyzing said type signatures; detecting a type error based an said analyzing step; grouping said instructions of said program into a plurality of code blocks; translating said code blocks into type signature blocks, each of said type signature blocks having one or more type signatures of said plurality of type signatures; and composing the type signatures of each said type signature blocks into a single respective composed type signature. - View Dependent Claims (6)
-
-
7. A code verification method, comprising the steps of:
-
storing a compiled program, said compiled program having at least one code block that includes a plurality of instructions; translating said instructions into a plurality of type signatures; composing said type signatures into a single composed type signature; analyzing said type signatures; detecting a type error based on said analyzing step grouping instructions of said program into a plurality of code blocks;
translating said code blocks into type signature blocks, each of said type signature blocks having one or more type signature; and
composing the type signatures of each of said signature blocks into a single respective composed type signature. - View Dependent Claims (8)
-
-
9. A code verifier comprising:
-
means for generating a plurality of type signatures based on instructions within a compiled program, each of said type signatures indicating each input type constraint and each output type description for a respective one of said instructions; means for analyzing said type signatures; and means for detecting a type error based on said analyzing step; means for grouping said instructions of said program into a plurality of code blocks; means for translating said code blocks into type signature blocks, each of said type signature blocks having one or more type signatures of said plurality of type signatures; and means for composing the type signatures of each said type signature blocks into a single respective composed type signature. - View Dependent Claims (10)
-
Specification