oldish EXEC_RETURN handling with a throw/catch mechanism since we do have a dependency on extra conditions (invalidated cache) that prevents fast execution loops.