================
@@ -216,6 +217,59 @@ void Generate(const Record *OpRecord) {
LLVMLoweringPatternsList.push_back(std::move(PatternName));
}
}
+
+static std::string getCIRAttrCppClassRef(const Record *AttrRecord) {
+ const Record *DialectRec = AttrRecord->getValueAsDef("dialect");
+ llvm::StringRef Ns = DialectRec->getValueAsString("cppNamespace");
+ Ns.consume_front("::");
+ std::string Result = Ns.str();
+ Result += "::";
+ Result += AttrRecord->getValueAsString("cppClassName");
+ return Result;
+}
+
+static void emitCIRAttrToValueVisitor(const llvm::RecordKeeper &RK,
+ llvm::raw_ostream &OS) {
+ std::vector<const Record *> Attrs;
+ for (const Record *R : RK.getAllDerivedDefinitions("CIR_Attr")) {
----------------
erichkeane wrote:
This is a `llvm::copy_if(RK.getAll...(), Attrs, [](auto *R) {
R->getValueAsBit(...); });
https://github.com/llvm/llvm-project/pull/187607
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits