From d594bac68b3b9d3c896c3c4fab1ac63060dafa16 Mon Sep 17 00:00:00 2001 From: Kostya Serebryany Date: Thu, 1 Dec 2011 18:54:53 +0000 Subject: [PATCH] [asan] two minor fixes: use UnreachableInst after the neverreturn function call; use report_fatal_error when blacklist file can not be found llvm-svn: 145611 --- llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp index b6175396d360..83be31eada62 100644 --- a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp +++ b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp @@ -434,6 +434,7 @@ void AddressSanitizer::instrumentAddress(Instruction *OrigIns, IRBuilder<> IRB1(CheckTerm); Instruction *Crash = generateCrashCode(IRB1, AddrLong, IsWrite, TypeSize); Crash->setDebugLoc(OrigIns->getDebugLoc()); + ReplaceInstWithInst(CheckTerm, new UnreachableInst(*C)); } // This function replaces all global variables with new variables that have @@ -951,8 +952,8 @@ BlackList::BlackList(const std::string &Path) { OwningPtr File; if (error_code EC = MemoryBuffer::getFile(ClBlackListFile.c_str(), File)) { - errs() << EC.message(); - exit(1); + report_fatal_error("Can't open blacklist file " + ClBlackListFile + ": " + + EC.message()); } MemoryBuffer *Buff = File.take(); const char *Data = Buff->getBufferStart();