[asan] fix bug 14277 (asan needs to fail with fata error if an __asan interface function is being redefined. Before this fix asan asserts)

llvm-svn: 167529
This commit is contained in:
Kostya Serebryany 2012-11-07 12:42:18 +00:00
parent 3ca33acb95
commit 157a515376
1 changed files with 3 additions and 2 deletions

View File

@ -731,8 +731,9 @@ bool AddressSanitizer::doInitialization(Module &M) {
std::string FunctionName = std::string(kAsanReportErrorTemplate) +
(AccessIsWrite ? "store" : "load") + itostr(1 << AccessSizeIndex);
// If we are merging crash callbacks, they have two parameters.
AsanErrorCallback[AccessIsWrite][AccessSizeIndex] = cast<Function>(
M.getOrInsertFunction(FunctionName, IRB.getVoidTy(), IntptrTy, NULL));
AsanErrorCallback[AccessIsWrite][AccessSizeIndex] =
checkInterfaceFunction(M.getOrInsertFunction(
FunctionName, IRB.getVoidTy(), IntptrTy, NULL));
}
}