summaryrefslogtreecommitdiff
path: root/lib/System
diff options
context:
space:
mode:
authorRoman Divacky <rdivacky@FreeBSD.org>2010-05-27 15:15:58 +0000
committerRoman Divacky <rdivacky@FreeBSD.org>2010-05-27 15:15:58 +0000
commitabdf259d487163e72081a8cf4991b1617206b41e (patch)
tree9fad9a5d5dd8c4ff54af48edad9c8cc26dd5fda1 /lib/System
parent59161dfae3225dd9151afbc76ca9074598c0c605 (diff)
Diffstat (limited to 'lib/System')
-rw-r--r--lib/System/Unix/Signals.inc4
-rw-r--r--lib/System/Win32/Signals.inc4
2 files changed, 7 insertions, 1 deletions
diff --git a/lib/System/Unix/Signals.inc b/lib/System/Unix/Signals.inc
index 56bf9e76e60a2..9548816e1d413 100644
--- a/lib/System/Unix/Signals.inc
+++ b/lib/System/Unix/Signals.inc
@@ -152,7 +152,9 @@ static RETSIGTYPE SignalHandler(int Sig) {
CallBacksToRun[i].first(CallBacksToRun[i].second);
}
-
+void llvm::sys::RunInterruptHandlers() {
+ SignalHandler(SIGINT);
+}
void llvm::sys::SetInterruptFunction(void (*IF)()) {
SignalsMutex.acquire();
diff --git a/lib/System/Win32/Signals.inc b/lib/System/Win32/Signals.inc
index f2b72ca70fdd7..a3a393c76e456 100644
--- a/lib/System/Win32/Signals.inc
+++ b/lib/System/Win32/Signals.inc
@@ -189,6 +189,10 @@ static void Cleanup() {
LeaveCriticalSection(&CriticalSection);
}
+void llvm::sys::RunInterruptHandlers() {
+ Cleanup();
+}
+
static LONG WINAPI LLVMUnhandledExceptionFilter(LPEXCEPTION_POINTERS ep) {
try {
Cleanup();