cmtice created this revision. cmtice added a reviewer: pcc. Herald added a subscriber: cfe-commits.
Currently LLVM CFI tries to use an implicit blacklist file, currently in /usr/lib64/clang/<version>/share. If the file is not there, LLVM happily continues, which causes CFI to add checks to files/functions that are known to fail, generating binaries that fail. This CL causes LLVM to die (I hope) if it can't find these implicit blacklist files. Repository: rC Clang https://reviews.llvm.org/D46403 Files: SanitizerArgs.cpp Index: SanitizerArgs.cpp =================================================================== --- SanitizerArgs.cpp +++ SanitizerArgs.cpp @@ -115,6 +115,8 @@ llvm::sys::path::append(Path, "share", BL.File); if (llvm::sys::fs::exists(Path)) BlacklistFiles.push_back(Path.str()); + else + D.Diag(clang::diag::err_drv_no_such_file) << Path; } }
Index: SanitizerArgs.cpp =================================================================== --- SanitizerArgs.cpp +++ SanitizerArgs.cpp @@ -115,6 +115,8 @@ llvm::sys::path::append(Path, "share", BL.File); if (llvm::sys::fs::exists(Path)) BlacklistFiles.push_back(Path.str()); + else + D.Diag(clang::diag::err_drv_no_such_file) << Path; } }
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits