[llvm] [TableGen] Remove TypeInfer::isConcrete/getConcreate. NFC (PR #174235)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 2 11:22:44 PST 2026
https://github.com/topperc created https://github.com/llvm/llvm-project/pull/174235
These don't use any state from TypeInfer and only wrap methods in TypeSetByHwMode. We can use the TypeSetByHwMode methods directly.
>From 7d3832731cedcbadf7366f188fa2728737ac83ac Mon Sep 17 00:00:00 2001
From: Craig Topper <craig.topper at sifive.com>
Date: Fri, 2 Jan 2026 11:11:40 -0800
Subject: [PATCH] [TableGen] Remove TypeInfer::isConcrete/getConcreate. NFC
These don't use any state from TypeInfer and only wrap methods in
TypeSetByHwMode. We can use the TypeSetByHwMode methods directly.
---
llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp | 9 +++++----
llvm/utils/TableGen/Common/CodeGenDAGPatterns.h | 9 ---------
2 files changed, 5 insertions(+), 13 deletions(-)
diff --git a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
index bf17038626f79..35f8a06916298 100644
--- a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
+++ b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
@@ -1862,7 +1862,7 @@ bool TreePatternNode::UpdateNodeTypeFromInst(unsigned ResNo,
bool TreePatternNode::ContainsUnresolvedType(TreePattern &TP) const {
for (const TypeSetByHwMode &Type : Types)
- if (!TP.getInfer().isConcrete(Type, true))
+ if (!Type.isValueTypeByHwMode(/*AllowEmpty=*/true))
return true;
for (const TreePatternNode &Child : children())
if (Child.ContainsUnresolvedType(TP))
@@ -2585,10 +2585,10 @@ bool TreePatternNode::ApplyTypeConstraints(TreePattern &TP, bool NotRegisters) {
// Int inits are always integers. :)
bool MadeChange = TP.getInfer().EnforceInteger(Types[0]);
- if (!TP.getInfer().isConcrete(Types[0], false))
+ if (!Types[0].isValueTypeByHwMode(/*AllowEmpty=*/false))
return MadeChange;
- ValueTypeByHwMode VVT = TP.getInfer().getConcrete(Types[0], false);
+ ValueTypeByHwMode VVT = Types[0].getValueTypeByHwMode();
for (auto &P : VVT) {
MVT VT = P.second;
// Can only check for types of a known size
@@ -4349,7 +4349,8 @@ static bool ForceArbitraryInstResultType(TreePatternNode &N, TreePattern &TP) {
// anything.
TypeInfer &TI = TP.getInfer();
for (unsigned i = 0, e = N.getNumTypes(); i != e; ++i) {
- if (N.getExtType(i).empty() || TI.isConcrete(N.getExtType(i), false))
+ if (N.getExtType(i).empty() ||
+ N.getExtType(i).isValueTypeByHwMode(/*AllowEmpty=*/false))
continue;
// Otherwise, force its type to an arbitrary choice.
diff --git a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.h b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
index a624f938e8564..220fa43bf5037 100644
--- a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
+++ b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
@@ -237,15 +237,6 @@ raw_ostream &operator<<(raw_ostream &OS, const TypeSetByHwMode &T);
struct TypeInfer {
TypeInfer(TreePattern &T) : TP(T) {}
- bool isConcrete(const TypeSetByHwMode &VTS, bool AllowEmpty) const {
- return VTS.isValueTypeByHwMode(AllowEmpty);
- }
- ValueTypeByHwMode getConcrete(const TypeSetByHwMode &VTS,
- bool AllowEmpty) const {
- assert(VTS.isValueTypeByHwMode(AllowEmpty));
- return VTS.getValueTypeByHwMode();
- }
-
/// The protocol in the following functions (Merge*, force*, Enforce*,
/// expand*) is to return "true" if a change has been made, "false"
/// otherwise.
More information about the llvm-commits
mailing list