Skip to content

Commit 659192b

Browse files
authored
[NFC][MLIR][TableGen] Eliminate llvm:: for commonly used types (llvm#112456)
Eliminate `llvm::` namespace qualifier for commonly used types in MLIR TableGen backends to reduce code clutter.
1 parent 6e02e19 commit 659192b

File tree

9 files changed

+193
-177
lines changed

9 files changed

+193
-177
lines changed

mlir/lib/TableGen/AttrOrTypeDef.cpp

Lines changed: 41 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,12 @@
1717

1818
using namespace mlir;
1919
using namespace mlir::tblgen;
20+
using llvm::DefInit;
21+
using llvm::Init;
22+
using llvm::ListInit;
23+
using llvm::Record;
24+
using llvm::RecordVal;
25+
using llvm::StringInit;
2026

2127
//===----------------------------------------------------------------------===//
2228
// AttrOrTypeBuilder
@@ -35,14 +41,13 @@ bool AttrOrTypeBuilder::hasInferredContextParameter() const {
3541
// AttrOrTypeDef
3642
//===----------------------------------------------------------------------===//
3743

38-
AttrOrTypeDef::AttrOrTypeDef(const llvm::Record *def) : def(def) {
44+
AttrOrTypeDef::AttrOrTypeDef(const Record *def) : def(def) {
3945
// Populate the builders.
40-
auto *builderList =
41-
dyn_cast_or_null<llvm::ListInit>(def->getValueInit("builders"));
46+
const auto *builderList =
47+
dyn_cast_or_null<ListInit>(def->getValueInit("builders"));
4248
if (builderList && !builderList->empty()) {
43-
for (const llvm::Init *init : builderList->getValues()) {
44-
AttrOrTypeBuilder builder(cast<llvm::DefInit>(init)->getDef(),
45-
def->getLoc());
49+
for (const Init *init : builderList->getValues()) {
50+
AttrOrTypeBuilder builder(cast<DefInit>(init)->getDef(), def->getLoc());
4651

4752
// Ensure that all parameters have names.
4853
for (const AttrOrTypeBuilder::Parameter &param :
@@ -56,16 +61,16 @@ AttrOrTypeDef::AttrOrTypeDef(const llvm::Record *def) : def(def) {
5661

5762
// Populate the traits.
5863
if (auto *traitList = def->getValueAsListInit("traits")) {
59-
SmallPtrSet<const llvm::Init *, 32> traitSet;
64+
SmallPtrSet<const Init *, 32> traitSet;
6065
traits.reserve(traitSet.size());
61-
llvm::unique_function<void(const llvm::ListInit *)> processTraitList =
62-
[&](const llvm::ListInit *traitList) {
66+
llvm::unique_function<void(const ListInit *)> processTraitList =
67+
[&](const ListInit *traitList) {
6368
for (auto *traitInit : *traitList) {
6469
if (!traitSet.insert(traitInit).second)
6570
continue;
6671

6772
// If this is an interface, add any bases to the trait list.
68-
auto *traitDef = cast<llvm::DefInit>(traitInit)->getDef();
73+
auto *traitDef = cast<DefInit>(traitInit)->getDef();
6974
if (traitDef->isSubClassOf("Interface")) {
7075
if (auto *bases = traitDef->getValueAsListInit("baseInterfaces"))
7176
processTraitList(bases);
@@ -111,7 +116,7 @@ AttrOrTypeDef::AttrOrTypeDef(const llvm::Record *def) : def(def) {
111116
}
112117

113118
Dialect AttrOrTypeDef::getDialect() const {
114-
auto *dialect = dyn_cast<llvm::DefInit>(def->getValue("dialect")->getValue());
119+
const auto *dialect = dyn_cast<DefInit>(def->getValue("dialect")->getValue());
115120
return Dialect(dialect ? dialect->getDef() : nullptr);
116121
}
117122

@@ -126,17 +131,17 @@ StringRef AttrOrTypeDef::getCppBaseClassName() const {
126131
}
127132

128133
bool AttrOrTypeDef::hasDescription() const {
129-
const llvm::RecordVal *desc = def->getValue("description");
130-
return desc && isa<llvm::StringInit>(desc->getValue());
134+
const RecordVal *desc = def->getValue("description");
135+
return desc && isa<StringInit>(desc->getValue());
131136
}
132137

133138
StringRef AttrOrTypeDef::getDescription() const {
134139
return def->getValueAsString("description");
135140
}
136141

137142
bool AttrOrTypeDef::hasSummary() const {
138-
const llvm::RecordVal *summary = def->getValue("summary");
139-
return summary && isa<llvm::StringInit>(summary->getValue());
143+
const RecordVal *summary = def->getValue("summary");
144+
return summary && isa<StringInit>(summary->getValue());
140145
}
141146

142147
StringRef AttrOrTypeDef::getSummary() const {
@@ -249,9 +254,9 @@ StringRef TypeDef::getTypeName() const {
249254
template <typename InitT>
250255
auto AttrOrTypeParameter::getDefValue(StringRef name) const {
251256
std::optional<decltype(std::declval<InitT>().getValue())> result;
252-
if (auto *param = dyn_cast<llvm::DefInit>(getDef()))
253-
if (auto *init = param->getDef()->getValue(name))
254-
if (auto *value = dyn_cast_or_null<InitT>(init->getValue()))
257+
if (const auto *param = dyn_cast<DefInit>(getDef()))
258+
if (const auto *init = param->getDef()->getValue(name))
259+
if (const auto *value = dyn_cast_or_null<InitT>(init->getValue()))
255260
result = value->getValue();
256261
return result;
257262
}
@@ -270,20 +275,20 @@ std::string AttrOrTypeParameter::getAccessorName() const {
270275
}
271276

272277
std::optional<StringRef> AttrOrTypeParameter::getAllocator() const {
273-
return getDefValue<llvm::StringInit>("allocator");
278+
return getDefValue<StringInit>("allocator");
274279
}
275280

276281
StringRef AttrOrTypeParameter::getComparator() const {
277-
return getDefValue<llvm::StringInit>("comparator").value_or("$_lhs == $_rhs");
282+
return getDefValue<StringInit>("comparator").value_or("$_lhs == $_rhs");
278283
}
279284

280285
StringRef AttrOrTypeParameter::getCppType() const {
281-
if (auto *stringType = dyn_cast<llvm::StringInit>(getDef()))
286+
if (auto *stringType = dyn_cast<StringInit>(getDef()))
282287
return stringType->getValue();
283-
auto cppType = getDefValue<llvm::StringInit>("cppType");
288+
auto cppType = getDefValue<StringInit>("cppType");
284289
if (cppType)
285290
return *cppType;
286-
if (auto *init = dyn_cast<llvm::DefInit>(getDef()))
291+
if (const auto *init = dyn_cast<DefInit>(getDef()))
287292
llvm::PrintFatalError(
288293
init->getDef()->getLoc(),
289294
Twine("Missing `cppType` field in Attribute/Type parameter: ") +
@@ -295,52 +300,48 @@ StringRef AttrOrTypeParameter::getCppType() const {
295300
}
296301

297302
StringRef AttrOrTypeParameter::getCppAccessorType() const {
298-
return getDefValue<llvm::StringInit>("cppAccessorType")
299-
.value_or(getCppType());
303+
return getDefValue<StringInit>("cppAccessorType").value_or(getCppType());
300304
}
301305

302306
StringRef AttrOrTypeParameter::getCppStorageType() const {
303-
return getDefValue<llvm::StringInit>("cppStorageType").value_or(getCppType());
307+
return getDefValue<StringInit>("cppStorageType").value_or(getCppType());
304308
}
305309

306310
StringRef AttrOrTypeParameter::getConvertFromStorage() const {
307-
return getDefValue<llvm::StringInit>("convertFromStorage").value_or("$_self");
311+
return getDefValue<StringInit>("convertFromStorage").value_or("$_self");
308312
}
309313

310314
std::optional<StringRef> AttrOrTypeParameter::getParser() const {
311-
return getDefValue<llvm::StringInit>("parser");
315+
return getDefValue<StringInit>("parser");
312316
}
313317

314318
std::optional<StringRef> AttrOrTypeParameter::getPrinter() const {
315-
return getDefValue<llvm::StringInit>("printer");
319+
return getDefValue<StringInit>("printer");
316320
}
317321

318322
std::optional<StringRef> AttrOrTypeParameter::getSummary() const {
319-
return getDefValue<llvm::StringInit>("summary");
323+
return getDefValue<StringInit>("summary");
320324
}
321325

322326
StringRef AttrOrTypeParameter::getSyntax() const {
323-
if (auto *stringType = dyn_cast<llvm::StringInit>(getDef()))
327+
if (auto *stringType = dyn_cast<StringInit>(getDef()))
324328
return stringType->getValue();
325-
return getDefValue<llvm::StringInit>("syntax").value_or(getCppType());
329+
return getDefValue<StringInit>("syntax").value_or(getCppType());
326330
}
327331

328332
bool AttrOrTypeParameter::isOptional() const {
329333
return getDefaultValue().has_value();
330334
}
331335

332336
std::optional<StringRef> AttrOrTypeParameter::getDefaultValue() const {
333-
std::optional<StringRef> result =
334-
getDefValue<llvm::StringInit>("defaultValue");
337+
std::optional<StringRef> result = getDefValue<StringInit>("defaultValue");
335338
return result && !result->empty() ? result : std::nullopt;
336339
}
337340

338-
const llvm::Init *AttrOrTypeParameter::getDef() const {
339-
return def->getArg(index);
340-
}
341+
const Init *AttrOrTypeParameter::getDef() const { return def->getArg(index); }
341342

342343
std::optional<Constraint> AttrOrTypeParameter::getConstraint() const {
343-
if (auto *param = dyn_cast<llvm::DefInit>(getDef()))
344+
if (const auto *param = dyn_cast<DefInit>(getDef()))
344345
if (param->getDef()->isSubClassOf("Constraint"))
345346
return Constraint(param->getDef());
346347
return std::nullopt;
@@ -351,8 +352,8 @@ std::optional<Constraint> AttrOrTypeParameter::getConstraint() const {
351352
//===----------------------------------------------------------------------===//
352353

353354
bool AttributeSelfTypeParameter::classof(const AttrOrTypeParameter *param) {
354-
const llvm::Init *paramDef = param->getDef();
355-
if (auto *paramDefInit = dyn_cast<llvm::DefInit>(paramDef))
355+
const Init *paramDef = param->getDef();
356+
if (const auto *paramDefInit = dyn_cast<DefInit>(paramDef))
356357
return paramDefInit->getDef()->isSubClassOf("AttributeSelfTypeParameter");
357358
return false;
358359
}

mlir/lib/TableGen/Attribute.cpp

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ StringRef Attribute::getReturnType() const {
7171
// Return the type constraint corresponding to the type of this attribute, or
7272
// std::nullopt if this is not a TypedAttr.
7373
std::optional<Type> Attribute::getValueType() const {
74-
if (auto *defInit = dyn_cast<llvm::DefInit>(def->getValueInit("valueType")))
74+
if (const auto *defInit = dyn_cast<DefInit>(def->getValueInit("valueType")))
7575
return Type(defInit->getDef());
7676
return std::nullopt;
7777
}
@@ -92,8 +92,7 @@ StringRef Attribute::getConstBuilderTemplate() const {
9292
}
9393

9494
Attribute Attribute::getBaseAttr() const {
95-
if (const auto *defInit =
96-
llvm::dyn_cast<llvm::DefInit>(def->getValueInit("baseAttr"))) {
95+
if (const auto *defInit = dyn_cast<DefInit>(def->getValueInit("baseAttr"))) {
9796
return Attribute(defInit).getBaseAttr();
9897
}
9998
return *this;
@@ -132,7 +131,7 @@ Dialect Attribute::getDialect() const {
132131
return Dialect(nullptr);
133132
}
134133

135-
const llvm::Record &Attribute::getDef() const { return *def; }
134+
const Record &Attribute::getDef() const { return *def; }
136135

137136
ConstantAttr::ConstantAttr(const DefInit *init) : def(init->getDef()) {
138137
assert(def->isSubClassOf("ConstantAttr") &&
@@ -147,12 +146,12 @@ StringRef ConstantAttr::getConstantValue() const {
147146
return def->getValueAsString("value");
148147
}
149148

150-
EnumAttrCase::EnumAttrCase(const llvm::Record *record) : Attribute(record) {
149+
EnumAttrCase::EnumAttrCase(const Record *record) : Attribute(record) {
151150
assert(isSubClassOf("EnumAttrCaseInfo") &&
152151
"must be subclass of TableGen 'EnumAttrInfo' class");
153152
}
154153

155-
EnumAttrCase::EnumAttrCase(const llvm::DefInit *init)
154+
EnumAttrCase::EnumAttrCase(const DefInit *init)
156155
: EnumAttrCase(init->getDef()) {}
157156

158157
StringRef EnumAttrCase::getSymbol() const {
@@ -163,16 +162,16 @@ StringRef EnumAttrCase::getStr() const { return def->getValueAsString("str"); }
163162

164163
int64_t EnumAttrCase::getValue() const { return def->getValueAsInt("value"); }
165164

166-
const llvm::Record &EnumAttrCase::getDef() const { return *def; }
165+
const Record &EnumAttrCase::getDef() const { return *def; }
167166

168-
EnumAttr::EnumAttr(const llvm::Record *record) : Attribute(record) {
167+
EnumAttr::EnumAttr(const Record *record) : Attribute(record) {
169168
assert(isSubClassOf("EnumAttrInfo") &&
170169
"must be subclass of TableGen 'EnumAttr' class");
171170
}
172171

173-
EnumAttr::EnumAttr(const llvm::Record &record) : Attribute(&record) {}
172+
EnumAttr::EnumAttr(const Record &record) : Attribute(&record) {}
174173

175-
EnumAttr::EnumAttr(const llvm::DefInit *init) : EnumAttr(init->getDef()) {}
174+
EnumAttr::EnumAttr(const DefInit *init) : EnumAttr(init->getDef()) {}
176175

177176
bool EnumAttr::classof(const Attribute *attr) {
178177
return attr->isSubClassOf("EnumAttrInfo");
@@ -218,8 +217,8 @@ std::vector<EnumAttrCase> EnumAttr::getAllCases() const {
218217
std::vector<EnumAttrCase> cases;
219218
cases.reserve(inits->size());
220219

221-
for (const llvm::Init *init : *inits) {
222-
cases.emplace_back(cast<llvm::DefInit>(init));
220+
for (const Init *init : *inits) {
221+
cases.emplace_back(cast<DefInit>(init));
223222
}
224223

225224
return cases;
@@ -229,7 +228,7 @@ bool EnumAttr::genSpecializedAttr() const {
229228
return def->getValueAsBit("genSpecializedAttr");
230229
}
231230

232-
const llvm::Record *EnumAttr::getBaseAttrClass() const {
231+
const Record *EnumAttr::getBaseAttrClass() const {
233232
return def->getValueAsDef("baseAttrClass");
234233
}
235234

mlir/lib/TableGen/Builder.cpp

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,21 @@
1212

1313
using namespace mlir;
1414
using namespace mlir::tblgen;
15+
using llvm::DagInit;
16+
using llvm::DefInit;
17+
using llvm::Init;
18+
using llvm::Record;
19+
using llvm::StringInit;
1520

1621
//===----------------------------------------------------------------------===//
1722
// Builder::Parameter
1823
//===----------------------------------------------------------------------===//
1924

2025
/// Return a string containing the C++ type of this parameter.
2126
StringRef Builder::Parameter::getCppType() const {
22-
if (const auto *stringInit = dyn_cast<llvm::StringInit>(def))
27+
if (const auto *stringInit = dyn_cast<StringInit>(def))
2328
return stringInit->getValue();
24-
const llvm::Record *record = cast<llvm::DefInit>(def)->getDef();
29+
const Record *record = cast<DefInit>(def)->getDef();
2530
// Inlining the first part of `Record::getValueAsString` to give better
2631
// error messages.
2732
const llvm::RecordVal *type = record->getValue("type");
@@ -35,9 +40,9 @@ StringRef Builder::Parameter::getCppType() const {
3540
/// Return an optional string containing the default value to use for this
3641
/// parameter.
3742
std::optional<StringRef> Builder::Parameter::getDefaultValue() const {
38-
if (isa<llvm::StringInit>(def))
43+
if (isa<StringInit>(def))
3944
return std::nullopt;
40-
const llvm::Record *record = cast<llvm::DefInit>(def)->getDef();
45+
const Record *record = cast<DefInit>(def)->getDef();
4146
std::optional<StringRef> value =
4247
record->getValueAsOptionalString("defaultValue");
4348
return value && !value->empty() ? value : std::nullopt;
@@ -47,18 +52,17 @@ std::optional<StringRef> Builder::Parameter::getDefaultValue() const {
4752
// Builder
4853
//===----------------------------------------------------------------------===//
4954

50-
Builder::Builder(const llvm::Record *record, ArrayRef<SMLoc> loc)
51-
: def(record) {
55+
Builder::Builder(const Record *record, ArrayRef<SMLoc> loc) : def(record) {
5256
// Initialize the parameters of the builder.
53-
const llvm::DagInit *dag = def->getValueAsDag("dagParams");
54-
auto *defInit = dyn_cast<llvm::DefInit>(dag->getOperator());
57+
const DagInit *dag = def->getValueAsDag("dagParams");
58+
auto *defInit = dyn_cast<DefInit>(dag->getOperator());
5559
if (!defInit || defInit->getDef()->getName() != "ins")
5660
PrintFatalError(def->getLoc(), "expected 'ins' in builders");
5761

5862
bool seenDefaultValue = false;
5963
for (unsigned i = 0, e = dag->getNumArgs(); i < e; ++i) {
60-
const llvm::StringInit *paramName = dag->getArgName(i);
61-
const llvm::Init *paramValue = dag->getArg(i);
64+
const StringInit *paramName = dag->getArgName(i);
65+
const Init *paramValue = dag->getArg(i);
6266
Parameter param(paramName ? paramName->getValue()
6367
: std::optional<StringRef>(),
6468
paramValue);

0 commit comments

Comments
 (0)