py/mpstate: Make mp_pending_exception volatile.

It can change asynchronously.
diff --git a/py/mpstate.h b/py/mpstate.h
index 9a8cc02..c1c1fae 100644
--- a/py/mpstate.h
+++ b/py/mpstate.h
@@ -105,7 +105,7 @@
     mp_map_t mp_loaded_modules_map;
 
     // pending exception object (MP_OBJ_NULL if not pending)
-    mp_obj_t mp_pending_exception;
+    volatile mp_obj_t mp_pending_exception;
 
     // current exception being handled, for sys.exc_info()
     #if MICROPY_PY_SYS_EXC_INFO