Rename BlackList class to SpecialCaseList and move it to Transforms/Utils.

Differential Revision: http://llvm-reviews.chandlerc.com/D1089

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185975 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Peter Collingbourne 2013-07-09 22:02:49 +00:00
parent 8c5c6f0e09
commit 405515d55f
7 changed files with 24 additions and 24 deletions

View File

@ -1,4 +1,4 @@
//===-- BlackList.h - blacklist for sanitizers ------------------*- C++ -*-===//
//===-- SpecialCaseList.h - blacklist for sanitizers ------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@ -39,9 +39,9 @@ class Module;
class Regex;
class StringRef;
class BlackList {
class SpecialCaseList {
public:
BlackList(const StringRef Path);
SpecialCaseList(const StringRef Path);
// Returns whether either this function or it's source file are blacklisted.
bool isIn(const Function &F) const;
// Returns whether either this global or it's source file are blacklisted.

View File

@ -43,10 +43,10 @@
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/system_error.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/BlackList.h"
#include "llvm/Transforms/Utils/Cloning.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Transforms/Utils/ModuleUtils.h"
#include "llvm/Transforms/Utils/SpecialCaseList.h"
#include <algorithm>
#include <string>
@ -318,7 +318,7 @@ struct AddressSanitizer : public FunctionPass {
Function *AsanCtorFunction;
Function *AsanInitFunction;
Function *AsanHandleNoReturnFunc;
OwningPtr<BlackList> BL;
OwningPtr<SpecialCaseList> BL;
// This array is indexed by AccessIsWrite and log2(AccessSize).
Function *AsanErrorCallback[2][kNumberOfAccessSizes];
// This array is indexed by AccessIsWrite.
@ -358,7 +358,7 @@ class AddressSanitizerModule : public ModulePass {
SmallString<64> BlacklistFile;
bool ZeroBaseShadow;
OwningPtr<BlackList> BL;
OwningPtr<SpecialCaseList> BL;
SetOfDynamicallyInitializedGlobals DynamicallyInitializedGlobals;
Type *IntptrTy;
LLVMContext *C;
@ -880,7 +880,7 @@ bool AddressSanitizerModule::runOnModule(Module &M) {
TD = getAnalysisIfAvailable<DataLayout>();
if (!TD)
return false;
BL.reset(new BlackList(BlacklistFile));
BL.reset(new SpecialCaseList(BlacklistFile));
if (BL->isIn(M)) return false;
C = &(M.getContext());
int LongSize = TD->getPointerSizeInBits();
@ -1070,7 +1070,7 @@ bool AddressSanitizer::doInitialization(Module &M) {
if (!TD)
return false;
BL.reset(new BlackList(BlacklistFile));
BL.reset(new SpecialCaseList(BlacklistFile));
DynamicallyInitializedGlobals.Init(M);
C = &(M.getContext());

View File

@ -1,6 +1,5 @@
add_llvm_library(LLVMInstrumentation
AddressSanitizer.cpp
BlackList.cpp
BoundsChecking.cpp
DebugIR.cpp
EdgeProfiling.cpp

View File

@ -91,9 +91,9 @@
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/BlackList.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Transforms/Utils/ModuleUtils.h"
#include "llvm/Transforms/Utils/SpecialCaseList.h"
using namespace llvm;
@ -232,7 +232,7 @@ class MemorySanitizer : public FunctionPass {
/// \brief Path to blacklist file.
SmallString<64> BlacklistFile;
/// \brief The blacklist.
OwningPtr<BlackList> BL;
OwningPtr<SpecialCaseList> BL;
/// \brief An empty volatile inline asm that prevents callback merge.
InlineAsm *EmptyAsm;
@ -338,7 +338,7 @@ bool MemorySanitizer::doInitialization(Module &M) {
TD = getAnalysisIfAvailable<DataLayout>();
if (!TD)
return false;
BL.reset(new BlackList(BlacklistFile));
BL.reset(new SpecialCaseList(BlacklistFile));
C = &(M.getContext());
unsigned PtrSize = TD->getPointerSizeInBits(/* AddressSpace */0);
switch (PtrSize) {

View File

@ -41,8 +41,8 @@
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/BlackList.h"
#include "llvm/Transforms/Utils/ModuleUtils.h"
#include "llvm/Transforms/Utils/SpecialCaseList.h"
using namespace llvm;
@ -99,7 +99,7 @@ struct ThreadSanitizer : public FunctionPass {
DataLayout *TD;
Type *IntptrTy;
SmallString<64> BlacklistFile;
OwningPtr<BlackList> BL;
OwningPtr<SpecialCaseList> BL;
IntegerType *OrdTy;
// Callbacks to run-time library are computed in doInitialization.
Function *TsanFuncEntry;
@ -227,7 +227,7 @@ bool ThreadSanitizer::doInitialization(Module &M) {
TD = getAnalysisIfAvailable<DataLayout>();
if (!TD)
return false;
BL.reset(new BlackList(BlacklistFile));
BL.reset(new SpecialCaseList(BlacklistFile));
// Always insert a call to __tsan_init into the module's CTORs.
IRBuilder<> IRB(M.getContext());

View File

@ -28,6 +28,7 @@ add_llvm_library(LLVMTransformUtils
SimplifyIndVar.cpp
SimplifyInstructions.cpp
SimplifyLibCalls.cpp
SpecialCaseList.cpp
UnifyFunctionExitNodes.cpp
Utils.cpp
ValueMapper.cpp

View File

@ -1,4 +1,4 @@
//===-- BlackList.cpp - blacklist for sanitizers --------------------------===//
//===-- SpecialCaseList.cpp - blacklist for sanitizers --------------------===//
//
// The LLVM Compiler Infrastructure
//
@ -13,7 +13,7 @@
//
//===----------------------------------------------------------------------===//
#include "llvm/Transforms/Utils/BlackList.h"
#include "llvm/Transforms/Utils/SpecialCaseList.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
@ -30,7 +30,7 @@
namespace llvm {
BlackList::BlackList(const StringRef Path) {
SpecialCaseList::SpecialCaseList(const StringRef Path) {
// Validate and open blacklist file.
if (Path.empty()) return;
OwningPtr<MemoryBuffer> File;
@ -84,15 +84,15 @@ BlackList::BlackList(const StringRef Path) {
}
}
bool BlackList::isIn(const Function &F) const {
bool SpecialCaseList::isIn(const Function &F) const {
return isIn(*F.getParent()) || inSection("fun", F.getName());
}
bool BlackList::isIn(const GlobalVariable &G) const {
bool SpecialCaseList::isIn(const GlobalVariable &G) const {
return isIn(*G.getParent()) || inSection("global", G.getName());
}
bool BlackList::isIn(const Module &M) const {
bool SpecialCaseList::isIn(const Module &M) const {
return inSection("src", M.getModuleIdentifier());
}
@ -107,15 +107,15 @@ static StringRef GetGVTypeString(const GlobalVariable &G) {
return "<unknown type>";
}
bool BlackList::isInInit(const GlobalVariable &G) const {
bool SpecialCaseList::isInInit(const GlobalVariable &G) const {
return (isIn(*G.getParent()) ||
inSection("global-init", G.getName()) ||
inSection("global-init-type", GetGVTypeString(G)) ||
inSection("global-init-src", G.getParent()->getModuleIdentifier()));
}
bool BlackList::inSection(const StringRef Section,
const StringRef Query) const {
bool SpecialCaseList::inSection(const StringRef Section,
const StringRef Query) const {
StringMap<Regex*>::const_iterator I = Entries.find(Section);
if (I == Entries.end()) return false;