diff --git a/loopy/check.py b/loopy/check.py
index 3401f7b8d86eb8e89d0bdb0629b5e85d57fff771..01a6e52c268a5c4e76f94653490d05c345e1a7d0 100644
--- a/loopy/check.py
+++ b/loopy/check.py
@@ -373,6 +373,8 @@ def pre_schedule_checks(kernel):
         check_write_destinations(kernel)
 
         logger.info("pre-schedule check %s: done" % kernel.name)
+    except KeyboardInterrupt:
+        raise
     except:
         print(75*"=")
         print("failing kernel during pre-schedule check:")