Unverified Commit 05ad0d46 authored by NAKAMURA Takumi's avatar NAKAMURA Takumi Committed by GitHub
Browse files

CoverageMapping.cpp: Apply std::move to MCDCRecord (#81220)

parent f0db35b9
Loading
Loading
Loading
Loading
+10 −6
Original line number Diff line number Diff line
@@ -396,11 +396,13 @@ private:
  LineColPairMap CondLoc;

public:
  MCDCRecord(CounterMappingRegion Region, TestVectors TV,
             TVPairMap IndependencePairs, BoolVector Folded, CondIDMap PosToID,
             LineColPairMap CondLoc)
      : Region(Region), TV(TV), IndependencePairs(IndependencePairs),
        Folded(Folded), PosToID(PosToID), CondLoc(CondLoc){};
  MCDCRecord(const CounterMappingRegion &Region, TestVectors &&TV,
             TVPairMap &&IndependencePairs, BoolVector &&Folded,
             CondIDMap &&PosToID, LineColPairMap &&CondLoc)
      : Region(Region), TV(std::move(TV)),
        IndependencePairs(std::move(IndependencePairs)),
        Folded(std::move(Folded)), PosToID(std::move(PosToID)),
        CondLoc(std::move(CondLoc)){};

  CounterMappingRegion getDecisionRegion() const { return Region; }
  unsigned getNumConditions() const {
@@ -603,7 +605,9 @@ struct FunctionRecord {
  FunctionRecord(FunctionRecord &&FR) = default;
  FunctionRecord &operator=(FunctionRecord &&) = default;

  void pushMCDCRecord(MCDCRecord Record) { MCDCRecords.push_back(Record); }
  void pushMCDCRecord(MCDCRecord &&Record) {
    MCDCRecords.push_back(std::move(Record));
  }

  void pushRegion(CounterMappingRegion Region, uint64_t Count,
                  uint64_t FalseCount) {
+4 −4
Original line number Diff line number Diff line
@@ -385,9 +385,9 @@ public:
    findIndependencePairs();

    // Record Test vectors, executed vectors, and independence pairs.
    MCDCRecord Res(Region, ExecVectors, IndependencePairs, Folded, PosToID,
                   CondLoc);
    return Res;
    return MCDCRecord(Region, std::move(ExecVectors),
                      std::move(IndependencePairs), std::move(Folded),
                      std::move(PosToID), std::move(CondLoc));
  }
};

@@ -761,7 +761,7 @@ Error CoverageMapping::loadFunctionRecord(
    }

    // Save the MC/DC Record so that it can be visualized later.
    Function.pushMCDCRecord(*Record);
    Function.pushMCDCRecord(std::move(*Record));
  }

  // Don't create records for (filenames, function) pairs we've already seen.