summaryrefslogtreecommitdiff
path: root/lib/fuzzer/FuzzerCorpus.h
diff options
context:
space:
mode:
authorKostya Serebryany <kcc@google.com>2018-06-06 23:24:41 +0000
committerKostya Serebryany <kcc@google.com>2018-06-06 23:24:41 +0000
commita9cc8ed2df816611876cd51f6e273b427fb6c38c (patch)
tree8b40371bc10026b92198c44a040a294ec56627ad /lib/fuzzer/FuzzerCorpus.h
parent4099396c4c843a8bcc685a51665c2acc85490c66 (diff)
[libFuzzer] remove an experimental flag -use_feature_frequency
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@334146 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/fuzzer/FuzzerCorpus.h')
-rw-r--r--lib/fuzzer/FuzzerCorpus.h23
1 files changed, 1 insertions, 22 deletions
diff --git a/lib/fuzzer/FuzzerCorpus.h b/lib/fuzzer/FuzzerCorpus.h
index d09702b3a..b4ba64b4b 100644
--- a/lib/fuzzer/FuzzerCorpus.h
+++ b/lib/fuzzer/FuzzerCorpus.h
@@ -37,7 +37,6 @@ struct InputInfo {
bool Reduced = false;
bool HasFocusFunction = false;
Vector<uint32_t> UniqFeatureSet;
- float FeatureFrequencyScore = 1.0;
};
class InputCorpus {
@@ -46,7 +45,6 @@ class InputCorpus {
InputCorpus(const std::string &OutputCorpus) : OutputCorpus(OutputCorpus) {
memset(InputSizesPerFeature, 0, sizeof(InputSizesPerFeature));
memset(SmallestElementPerFeature, 0, sizeof(SmallestElementPerFeature));
- memset(FeatureFrequency, 0, sizeof(FeatureFrequency));
}
~InputCorpus() {
for (auto II : Inputs)
@@ -222,20 +220,6 @@ class InputCorpus {
return false;
}
- void UpdateFeatureFrequency(size_t Idx) {
- FeatureFrequency[Idx % kFeatureSetSize]++;
- }
- float GetFeatureFrequency(size_t Idx) const {
- return FeatureFrequency[Idx % kFeatureSetSize];
- }
- void UpdateFeatureFrequencyScore(InputInfo *II) {
- const float kMin = 0.01, kMax = 100.;
- II->FeatureFrequencyScore = kMin;
- for (auto Idx : II->UniqFeatureSet)
- II->FeatureFrequencyScore += 1. / (GetFeatureFrequency(Idx) + 1.);
- II->FeatureFrequencyScore = Min(II->FeatureFrequencyScore, kMax);
- }
-
size_t NumFeatures() const { return NumAddedFeatures; }
size_t NumFeatureUpdates() const { return NumUpdatedFeatures; }
@@ -273,15 +257,11 @@ private:
std::iota(Intervals.begin(), Intervals.end(), 0);
for (size_t i = 0; i < N; i++)
Weights[i] = Inputs[i]->NumFeatures
- ? (i + 1) * Inputs[i]->FeatureFrequencyScore
- * (Inputs[i]->HasFocusFunction ? 1000 : 1)
+ ? (i + 1) * (Inputs[i]->HasFocusFunction ? 1000 : 1)
: 0.;
if (FeatureDebug) {
for (size_t i = 0; i < N; i++)
Printf("%zd ", Inputs[i]->NumFeatures);
- Printf("NUM\n");
- for (size_t i = 0; i < N; i++)
- Printf("%f ", Inputs[i]->FeatureFrequencyScore);
Printf("SCORE\n");
for (size_t i = 0; i < N; i++)
Printf("%f ", Weights[i]);
@@ -302,7 +282,6 @@ private:
size_t NumUpdatedFeatures = 0;
uint32_t InputSizesPerFeature[kFeatureSetSize];
uint32_t SmallestElementPerFeature[kFeatureSetSize];
- float FeatureFrequency[kFeatureSetSize];
std::string OutputCorpus;
};