summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/fuzzer/FuzzerMerge.h
diff options
context:
space:
mode:
authorGeorge Karpenkov <ekarpenkov@apple.com>2017-08-27 23:20:09 +0000
committerGeorge Karpenkov <ekarpenkov@apple.com>2017-08-27 23:20:09 +0000
commitbebcbfb46dc7c89d32eb11254123211f87087dca (patch)
treeac7ca788e2445caf8b5ff0a60eab3f220a126975 /compiler-rt/lib/fuzzer/FuzzerMerge.h
parent41395022a32a29d8bab5af989a59af4cb83b1191 (diff)
downloadbcm5719-llvm-bebcbfb46dc7c89d32eb11254123211f87087dca.tar.gz
bcm5719-llvm-bebcbfb46dc7c89d32eb11254123211f87087dca.zip
[libFuzzer] Use custom allocators for STL containers in libFuzzer.
Avoids ODR violations causing spurious ASAN warnings. Differential Revision: https://reviews.llvm.org/D37086 llvm-svn: 311866
Diffstat (limited to 'compiler-rt/lib/fuzzer/FuzzerMerge.h')
-rw-r--r--compiler-rt/lib/fuzzer/FuzzerMerge.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/compiler-rt/lib/fuzzer/FuzzerMerge.h b/compiler-rt/lib/fuzzer/FuzzerMerge.h
index dd4c37b6e39..e54885a1eba 100644
--- a/compiler-rt/lib/fuzzer/FuzzerMerge.h
+++ b/compiler-rt/lib/fuzzer/FuzzerMerge.h
@@ -52,11 +52,11 @@ namespace fuzzer {
struct MergeFileInfo {
std::string Name;
size_t Size = 0;
- std::vector<uint32_t> Features;
+ Vector<uint32_t> Features;
};
struct Merger {
- std::vector<MergeFileInfo> Files;
+ Vector<MergeFileInfo> Files;
size_t NumFilesInFirstCorpus = 0;
size_t FirstNotProcessedFile = 0;
std::string LastFailure;
@@ -65,14 +65,14 @@ struct Merger {
bool Parse(const std::string &Str, bool ParseCoverage);
void ParseOrExit(std::istream &IS, bool ParseCoverage);
void PrintSummary(std::ostream &OS);
- std::set<uint32_t> ParseSummary(std::istream &IS);
- size_t Merge(const std::set<uint32_t> &InitialFeatures,
- std::vector<std::string> *NewFiles);
- size_t Merge(std::vector<std::string> *NewFiles) {
- return Merge(std::set<uint32_t>{}, NewFiles);
+ Set<uint32_t> ParseSummary(std::istream &IS);
+ size_t Merge(const Set<uint32_t> &InitialFeatures,
+ Vector<std::string> *NewFiles);
+ size_t Merge(Vector<std::string> *NewFiles) {
+ return Merge(Set<uint32_t>{}, NewFiles);
}
size_t ApproximateMemoryConsumption() const;
- std::set<uint32_t> AllFeatures() const;
+ Set<uint32_t> AllFeatures() const;
};
} // namespace fuzzer
OpenPOWER on IntegriCloud