Lines Matching refs:II

51     for (auto II : Inputs)
52 delete II;
57 for (auto II : Inputs)
58 Res += II->U.size();
63 for (auto II : Inputs)
64 Res += !II->U.empty();
69 for (auto II : Inputs)
70 Res = std::max(Res, II->U.size());
75 return std::count_if(Inputs.begin(), Inputs.end(), [](const InputInfo *II) {
76 return II->HasFocusFunction;
81 return std::count_if(Inputs.begin(), Inputs.end(), [](const InputInfo *II) {
82 return !II->DataFlowTraceForFocusFunction.empty();
96 InputInfo &II = *Inputs.back();
97 II.U = U;
98 II.NumFeatures = NumFeatures;
99 II.MayDeleteFile = MayDeleteFile;
100 II.UniqFeatureSet = FeatureSet;
101 II.HasFocusFunction = HasFocusFunction;
102 std::sort(II.UniqFeatureSet.begin(), II.UniqFeatureSet.end());
103 ComputeSHA1(U.data(), U.size(), II.Sha1);
104 auto Sha1Str = Sha1ToString(II.Sha1);
108 II.DataFlowTraceForFocusFunction = *V;
112 if (II.DataFlowTraceForFocusFunction.empty() && BaseII)
113 II.DataFlowTraceForFocusFunction = BaseII->DataFlowTraceForFocusFunction;
117 return ⅈ
144 for (auto II : Inputs) {
145 if (std::find(II->U.begin(), II->U.end(), 'F') != II->U.end()) {
147 Printf("%s sz=%zd ", Sha1ToString(II->Sha1).c_str(), II->U.size());
148 PrintUnit(II->U);
150 PrintFeatureSet(II->UniqFeatureSet);
157 void Replace(InputInfo *II, const Unit &U) {
158 assert(II->U.size() > U.size());
159 Hashes.erase(Sha1ToString(II->Sha1));
160 DeleteFile(*II);
161 ComputeSHA1(U.data(), U.size(), II->Sha1);
162 Hashes.insert(Sha1ToString(II->Sha1));
163 II->U = U;
164 II->Reduced = true;
171 InputInfo &II = *Inputs[ChooseUnitIdxToMutate(Rand)];
172 assert(!II.U.empty());
173 return II;
185 const auto &II = *Inputs[i];
187 Sha1ToString(II.Sha1).c_str(), II.U.size(),
188 II.NumExecutedMutations, II.NumSuccessfullMutations, II.HasFocusFunction);
204 void DeleteFile(const InputInfo &II) {
205 if (!OutputCorpus.empty() && II.MayDeleteFile)
206 RemoveFile(DirPlusFile(OutputCorpus, Sha1ToString(II.Sha1)));
210 InputInfo &II = *Inputs[Idx];
211 DeleteFile(II);
212 Unit().swap(II.U);
224 InputInfo &II = *Inputs[OldIdx];
225 assert(II.NumFeatures > 0);
226 II.NumFeatures--;
227 if (II.NumFeatures == 0)
257 for (auto II: Inputs) {
258 if (II->Tmp != II->NumFeatures)
259 Printf("ZZZ %zd %zd\n", II->Tmp, II->NumFeatures);
260 assert(II->Tmp == II->NumFeatures);
261 II->Tmp = 0;