Lines Matching refs:BinaryFunction
50 const BinaryFunction &FunctionA, in equalJumpTables()
51 const BinaryFunction &FunctionB) { in equalJumpTables()
149 bool isIdenticalWith(const BinaryFunction &A, const BinaryFunction &B, in isIdenticalWith()
166 const BinaryFunction::BasicBlockOrderType OrderA = in isIdenticalWith()
169 : BinaryFunction::BasicBlockOrderType(A.getLayout().block_begin(), in isIdenticalWith()
171 const BinaryFunction::BasicBlockOrderType OrderB = in isIdenticalWith()
174 : BinaryFunction::BasicBlockOrderType(B.getLayout().block_begin(), in isIdenticalWith()
220 const BinaryFunction *FunctionA = in isIdenticalWith()
222 const BinaryFunction *FunctionB = in isIdenticalWith()
303 size_t operator()(const BinaryFunction *F) const { return F->getHash(); } in operator ()()
314 bool operator()(const BinaryFunction *A, const BinaryFunction *B) const { in operator ()()
322 bool operator()(const BinaryFunction *A, const BinaryFunction *B) const { in operator ()()
329 typedef std::unordered_map<BinaryFunction *, std::set<BinaryFunction *>,
333 typedef std::unordered_map<BinaryFunction *, std::vector<BinaryFunction *>,
422 ParallelUtilities::WorkFuncTy WorkFun = [&](BinaryFunction &BF) { in runOnFunctions()
433 ParallelUtilities::PredicateTy SkipFunc = [&](const BinaryFunction &BF) { in runOnFunctions()
449 BinaryFunction &BF = BFI.second; in runOnFunctions()
470 auto processSingleBucket = [&](std::set<BinaryFunction *> &Candidates) { in runOnFunctions()
476 for (BinaryFunction *BF : Candidates) { in runOnFunctions()
482 std::vector<BinaryFunction *> &Twins = IBI.second; in runOnFunctions()
489 Twins, [](const BinaryFunction *A, const BinaryFunction *B) { in runOnFunctions()
493 BinaryFunction *ParentBF = Twins[0]; in runOnFunctions()
495 BinaryFunction *ChildBF = Twins[I]; in runOnFunctions()
523 std::set<BinaryFunction *> &Bucket = Entry.second; in runOnFunctions()
558 std::set<BinaryFunction *> &Candidates = CBI.second; in runOnFunctions()
564 for (BinaryFunction *BF : Candidates) { in runOnFunctions()