1. A method comprising: upon encountering an exception/interrupt, saving data stored in a first selected set of registers to a predetermined section of a thread-specific area in memory; re-enabling exceptions and optionally interrupts; addressing a cause of the exception/interrupt while safely permitting another exception; and restoring the saved data to the first selected set of registers.