mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-12 13:38:21 +00:00
Add a new watchdog timer interface. The interface does not permit handling timeouts, so
it's only really useful if you're going to crash anyways. Use it in the pretty stack trace printer to kill the compiler if we hang while printing the stack trace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177962 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -17,6 +17,7 @@
|
||||
#include "llvm/Config/config.h" // Get autoconf configuration settings
|
||||
#include "llvm/Support/Signals.h"
|
||||
#include "llvm/Support/ThreadLocal.h"
|
||||
#include "llvm/Support/Watchdog.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
|
||||
#ifdef HAVE_CRASHREPORTERCLIENT_H
|
||||
@ -37,7 +38,10 @@ static unsigned PrintStack(const PrettyStackTraceEntry *Entry, raw_ostream &OS){
|
||||
if (Entry->getNextEntry())
|
||||
NextID = PrintStack(Entry->getNextEntry(), OS);
|
||||
OS << NextID << ".\t";
|
||||
Entry->print(OS);
|
||||
{
|
||||
sys::Watchdog W(5);
|
||||
Entry->print(OS);
|
||||
}
|
||||
|
||||
return NextID+1;
|
||||
}
|
||||
|
Reference in New Issue
Block a user