[PATCH] D95312: [TableGen] [DetailedRecords] Print record name that is null string as ""
Paul C. Anagnostopoulos via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 26 07:31:52 PST 2021
Paul-C-Anagnostopoulos updated this revision to Diff 319293.
Paul-C-Anagnostopoulos added a comment.
Made change suggested by David and added a test.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D95312/new/
https://reviews.llvm.org/D95312
Files:
llvm/lib/TableGen/DetailedRecordsBackend.cpp
llvm/test/TableGen/detailed-records.td
Index: llvm/test/TableGen/detailed-records.td
===================================================================
--- /dev/null
+++ llvm/test/TableGen/detailed-records.td
@@ -0,0 +1,36 @@
+// RUN: llvm-tblgen -print-detailed-records %s | FileCheck %s
+
+// This test file ensures that the DetailedRecords backend prints all
+// the global variables, classes, and records.
+
+// CHECK: ----- Global Variables
+// CHECK: Answer
+// CHECK: Greeting
+
+// CHECK: ----- Classes
+// CHECK: Class1
+// CHECK: Class2
+
+// CHECK: ----- Records
+// CHECK: ""
+// CHECK: Info
+// CHECK: Rec1
+// CHECK: anonymous_0
+
+defvar Greeting = "Hello there.";
+defvar Answer = 42;
+
+class Class1 {
+}
+
+class Class2 {
+}
+
+def : Class1;
+
+def "" : Class2;
+
+def Rec1;
+
+def Info : Class1;
+
Index: llvm/lib/TableGen/DetailedRecordsBackend.cpp
===================================================================
--- llvm/lib/TableGen/DetailedRecordsBackend.cpp
+++ llvm/lib/TableGen/DetailedRecordsBackend.cpp
@@ -104,7 +104,8 @@
for (const auto &RecPair : RecordList) {
auto *const Rec = RecPair.second.get();
- OS << formatv("\n{0} |{1}|\n", Rec->getNameInitAsString(),
+ std::string Name = Rec->getNameInitAsString();
+ OS << formatv("\n{0} |{1}|\n", Name.empty() ? "\"\"" : Name,
SrcMgr.getFormattedLocationNoOffset(Rec->getLoc().front()));
printDefms(Rec, OS);
printSuperclasses(Rec, OS);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D95312.319293.patch
Type: text/x-patch
Size: 1431 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210126/5756401a/attachment.bin>
More information about the llvm-commits
mailing list