1. A method of compiling for a statically scheduled data processing apparatus, said method comprising the steps of: receiving a high level language source code of a program; determining for each instruction whether the instruction is a load instruction; for each instruction determined to be a load instruction, determining whether said load instruction is suitable for speculative loading; for each load instruction determined to be suitable for speculative loading inserting a speculative load instruction into said program at a point upstream of said load instruction suitable for speculative loading, deleting said load instruction suitable for speculative loading, determining a point in said program where a program behavior changing action occurs employing data of said speculative load, inserting a conditional instruction in said program before said point in said program where a program behavior changing action occurs, said conditional instruction performing one of confirming said speculative load or disaffirming said speculative load based upon a condition not solely dependent upon correctness of a load address of said speculative load instruction.