[clang] 2a61eeb - Cleanup asserts in BranchParameters and DecisionParameters
NAKAMURA Takumi via cfe-commits
cfe-commits at lists.llvm.org
Fri May 10 00:00:37 PDT 2024
Author: NAKAMURA Takumi
Date: 2024-05-10T16:00:16+09:00
New Revision: 2a61eebc66c0903cf3834a520b1f975ac3cdf92b
URL: https://github.com/llvm/llvm-project/commit/2a61eebc66c0903cf3834a520b1f975ac3cdf92b
DIFF: https://github.com/llvm/llvm-project/commit/2a61eebc66c0903cf3834a520b1f975ac3cdf92b.diff
LOG: Cleanup asserts in BranchParameters and DecisionParameters
Added:
Modified:
clang/lib/CodeGen/CoverageMappingGen.cpp
llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h
llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
Removed:
################################################################################
diff --git a/clang/lib/CodeGen/CoverageMappingGen.cpp b/clang/lib/CodeGen/CoverageMappingGen.cpp
index 733686d4946b3..ce2f39aeb0821 100644
--- a/clang/lib/CodeGen/CoverageMappingGen.cpp
+++ b/clang/lib/CodeGen/CoverageMappingGen.cpp
@@ -191,10 +191,7 @@ class SourceMappingRegion {
bool isBranch() const { return FalseCount.has_value(); }
bool isMCDCDecision() const {
- const auto *DecisionParams =
- std::get_if<mcdc::DecisionParameters>(&MCDCParams);
- assert(!DecisionParams || DecisionParams->NumConditions > 0);
- return DecisionParams;
+ return std::holds_alternative<mcdc::DecisionParameters>(MCDCParams);
}
const auto &getMCDCDecisionParams() const {
diff --git a/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h b/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
index 7a8b6639f2971..da03104045249 100644
--- a/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
+++ b/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
@@ -462,10 +462,7 @@ struct MCDCRecord {
CounterMappingRegion getDecisionRegion() const { return Region; }
unsigned getNumConditions() const {
- unsigned NumConditions = Region.getDecisionParams().NumConditions;
- assert(NumConditions != 0 &&
- "In MC/DC, NumConditions should never be zero!");
- return NumConditions;
+ return Region.getDecisionParams().NumConditions;
}
unsigned getNumTestVectors() const { return TV.size(); }
bool isCondFolded(unsigned Condition) const { return Folded[Condition]; }
diff --git a/llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h b/llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h
index 8c78bed4dec52..191e4ead95ea2 100644
--- a/llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h
+++ b/llvm/include/llvm/ProfileData/Coverage/MCDCTypes.h
@@ -33,7 +33,9 @@ struct DecisionParameters {
DecisionParameters() = delete;
DecisionParameters(unsigned BitmapIdx, unsigned NumConditions)
- : BitmapIdx(BitmapIdx), NumConditions(NumConditions) {}
+ : BitmapIdx(BitmapIdx), NumConditions(NumConditions) {
+ assert(NumConditions > 0);
+ }
};
struct BranchParameters {
@@ -44,7 +46,9 @@ struct BranchParameters {
BranchParameters() = delete;
BranchParameters(ConditionID ID, const ConditionIDs &Conds)
- : ID(ID), Conds(Conds) {}
+ : ID(ID), Conds(Conds) {
+ assert(ID >= 0);
+ }
};
/// The type of MC/DC-specific parameters.
diff --git a/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp b/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
index 6c77ce017c036..8c81bbe8e9c4e 100644
--- a/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
+++ b/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
@@ -338,7 +338,6 @@ class NextIDsBuilder {
#endif
for (const auto *Branch : Branches) {
const auto &BranchParams = Branch->getBranchParams();
- assert(BranchParams.ID >= 0 && "CondID isn't set");
assert(SeenIDs.insert(BranchParams.ID).second && "Duplicate CondID");
NextIDs[BranchParams.ID] = BranchParams.Conds;
}
@@ -694,7 +693,6 @@ class MCDCDecisionRecorder {
assert(Branch.Kind == CounterMappingRegion::MCDCBranchRegion);
auto ConditionID = Branch.getBranchParams().ID;
- assert(ConditionID >= 0 && "ConditionID should be positive");
if (ConditionIDs.contains(ConditionID) ||
ConditionID >= DecisionParams.NumConditions)
diff --git a/llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp b/llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
index 5036bde5aca72..adfd22804356e 100644
--- a/llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
+++ b/llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
@@ -256,7 +256,6 @@ void CoverageMappingWriter::write(raw_ostream &OS) {
// They are written as internal values plus 1.
const auto &BranchParams = I->getBranchParams();
ParamsShouldBeNull = false;
- assert(BranchParams.ID >= 0);
unsigned ID1 = BranchParams.ID + 1;
unsigned TID1 = BranchParams.Conds[true] + 1;
unsigned FID1 = BranchParams.Conds[false] + 1;
More information about the cfe-commits
mailing list