Abstract:
A method, computer program product and system for detecting that a functional model execution is out-of-order with respect to a target execution. A value of a store instruction to be stored in a memory address, where the store instruction is executed by the functional model, is received by the timing model. This value is stored by the timing model in a target oracle memory at a time when the target system would execute the store instruction. The timing model compares the value in the target oracle memory with the value of a load instruction to be loaded from the same memory address, which is received from the functional model, at a time when the target system would execute the load instruction. The timing model detects an out-of-order instruction stream with respect to the target instruction stream if there is a miscomparison.