Context preserving (e.g., context swapping, checkpointing, register windowing