Introduce a SpecialCaseList ctor which takes a MemoryBuffer to make

it more unit testable, and fix memory leak in the other ctor.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185976 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Peter Collingbourne
2013-07-09 22:03:09 +00:00
parent 405515d55f
commit c5afb9ed5e
2 changed files with 13 additions and 1 deletions

View File

@ -35,6 +35,7 @@
namespace llvm {
class Function;
class GlobalVariable;
class MemoryBuffer;
class Module;
class Regex;
class StringRef;
@ -42,6 +43,8 @@ class StringRef;
class SpecialCaseList {
public:
SpecialCaseList(const StringRef Path);
SpecialCaseList(const MemoryBuffer *MB);
// 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.
@ -53,6 +56,7 @@ class SpecialCaseList {
private:
StringMap<Regex*> Entries;
void init(const MemoryBuffer *MB);
bool inSection(const StringRef Section, const StringRef Query) const;
};