1. A method of operating a microprocessor, the method comprising: setting a value of an architectural poison bit associated with a storage location prior to entering runahead, the value of the architectural poison bit indicating that data held at the storage location is invalid; causing the microprocessor to enter runahead upon detection of a runahead event; during runahead, determining that an operation associated with an instruction referencing the storage location would produce a potentially invalid result based on the value of the architectural poison bit; and performing a different operation in response.