]> git.ipfire.org Git - thirdparty/vectorscan.git/commitdiff
refactor bool to void setDistinctTops setDistinctRoseTops
authorgtsoul-tech <gtsoulkanakis@gmail.com>
Wed, 1 May 2024 12:21:36 +0000 (15:21 +0300)
committergtsoul-tech <gtsoulkanakis@gmail.com>
Wed, 1 May 2024 12:21:36 +0000 (15:21 +0300)
setDistinctSuffixTops

src/rose/rose_build_merge.cpp
src/rose/rose_build_merge.h
src/rose/rose_build_role_aliasing.cpp

index c0df576556cfe59b204bb182b6943c39dcdedb6a..21093a81718f5a6edc948c18977142b41c37f080 100644 (file)
@@ -1687,7 +1687,7 @@ void replaceTops(NGHolder &h, const map<u32, u32> &top_mapping) {
 }
 
 static
-bool setDistinctTops(NGHolder &h1, const NGHolder &h2,
+void setDistinctTops(NGHolder &h1, const NGHolder &h2,
                      map<u32, u32> &top_mapping) {
     flat_set<u32> tops1 = getTops(h1), tops2 = getTops(h2);
 
@@ -1697,7 +1697,7 @@ bool setDistinctTops(NGHolder &h1, const NGHolder &h2,
     // If our tops don't intersect, we're OK to merge with no changes.
     if (!has_intersection(tops1, tops2)) {
         DEBUG_PRINTF("tops don't intersect\n");
-        return true;
+        return ;
     }
 
     // Otherwise, we have to renumber the tops in h1 so that they don't overlap
@@ -1712,17 +1712,17 @@ bool setDistinctTops(NGHolder &h1, const NGHolder &h2,
     }
 
     replaceTops(h1, top_mapping);
-    return true;
+    return ;
 }
 
-bool setDistinctRoseTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
+void setDistinctRoseTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
                          const deque<RoseVertex> &verts1) {
     map<u32, u32> top_mapping;
 
     setDistinctTops(h1, h2, top_mapping);
 
     if (top_mapping.empty()) {
-        return true; // No remapping necessary.
+        return ; // No remapping necessary.
     }
 
     for (auto v : verts1) {
@@ -1740,17 +1740,17 @@ bool setDistinctRoseTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
         }
     }
 
-    return true;
+    return ;
 }
 
 static
-bool setDistinctSuffixTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
+void setDistinctSuffixTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
                            const deque<RoseVertex> &verts1) {
     map<u32, u32> top_mapping;
     setDistinctTops(h1, h2, top_mapping);
 
     if (top_mapping.empty()) {
-        return true; // No remapping necessary.
+        return ; // No remapping necessary.
     }
 
     for (auto v : verts1) {
@@ -1760,7 +1760,7 @@ bool setDistinctSuffixTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
         g[v].suffix.top = top_mapping[t];
     }
 
-    return true;
+    return ;
 }
 
 /** \brief Estimate the number of accel states in the given graph when built as
index 6de6c7786a79b6ddf2aef037b857422e49a417e2..e93a977f81a265486e3223eb45729ee6f0377d31 100644 (file)
@@ -62,7 +62,7 @@ bool mergeableRoseVertices(const RoseBuildImpl &tbi, RoseVertex u,
 bool mergeableRoseVertices(const RoseBuildImpl &tbi,
                            const std::set<RoseVertex> &v1,
                            const std::set<RoseVertex> &v2);
-bool setDistinctRoseTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
+void setDistinctRoseTops(RoseGraph &g, NGHolder &h1, const NGHolder &h2,
                          const std::deque<RoseVertex> &verts1);
 
 } // namespace ue2
index 2888b9a0f0969a5a8f3ed5c656a71920b9344f8e..39721d6fc2a490be0159dd90f62909856056ed8f 100644 (file)
@@ -1294,12 +1294,7 @@ bool attemptRoseGraphMerge(RoseBuildImpl &build, bool preds_same, RoseVertex a,
 
     DEBUG_PRINTF("victim %zu states\n", num_vertices(*a_h));
     DEBUG_PRINTF("winner %zu states\n", num_vertices(*b_h));
-
-    if (!setDistinctRoseTops(g, victim, *b_h, deque<RoseVertex>(1, a))) {
-        assert(roseHasTops(build, a));
-        assert(roseHasTops(build, b));
-        return false;
-    }
+    setDistinctRoseTops(g, victim, *b_h, deque<RoseVertex>(1, a));
 
     assert(victim.kind == b_h->kind);
     assert(!generates_callbacks(*b_h));