Patent ID: 8689194

Claim:
A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by at least one processor, cause the at least one processor to: document an assumption in connection with an optimization made during code generation that produces generated code; generate, based on the assumption, an executable constraints document, the executable constraints document being separate from the generated code, and the executable constraints document including: first information about the assumption, and second information about a target device on which the generated code will be run; and execute the constraints document; determine, based on executing the constraints document, that input data is out of bounds when the generated code is run on the target device; identify that the assumption is associated with the input data being out of bounds; determine a validation result for the optimization based on identifying the assumption; and perform an operation based on the validation result, the operation including: providing the validation result for display to a user, storing the validation result, sending the validation result to a destination, or modifying the generated code.