[Mlir-commits] [mlir] [MLIR] [NFC] Add static assert to subclass AbstractSparseLattice (PR #162547)
Jasmine Tang
llvmlistbot at llvm.org
Wed Oct 8 13:36:10 PDT 2025
https://github.com/badumbatish created https://github.com/llvm/llvm-project/pull/162547
SparseForwardDataFlowAnalysis, with the comments specifying that StateT must be sublclassing AbstractSparseLattice, also places a static assert in the class itself.
This commit adds the same missing assert for SparseBackwardDataFlowAnalysis
>From c53e21b9583dd1fb6a9a6ef817ac8ba204e7707f Mon Sep 17 00:00:00 2001
From: badumbatish <tanghocle456 at gmail.com>
Date: Wed, 8 Oct 2025 13:33:51 -0700
Subject: [PATCH] Add static assert to subclass AbstractSparseLattice
---
mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h b/mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
index 3f8874d02afad..1a33ecf8b5aa9 100644
--- a/mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
+++ b/mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
@@ -518,6 +518,10 @@ class AbstractSparseBackwardDataFlowAnalysis : public DataFlowAnalysis {
template <typename StateT>
class SparseBackwardDataFlowAnalysis
: public AbstractSparseBackwardDataFlowAnalysis {
+ static_assert(
+ std::is_base_of<AbstractSparseLattice, StateT>::value,
+ "analysis state class expected to subclass AbstractSparseLattice");
+
public:
explicit SparseBackwardDataFlowAnalysis(DataFlowSolver &solver,
SymbolTableCollection &symbolTable)
More information about the Mlir-commits
mailing list