[PATCH] D92269: [TableGen] Eliminate the 'code' type

Paul C. Anagnostopoulos via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Nov 28 11:40:06 PST 2020


Paul-C-Anagnostopoulos created this revision.
Paul-C-Anagnostopoulos added reviewers: lattner, nhaehnle, madhur13490, asb.
Herald added subscribers: llvm-commits, cfe-commits, teijeong, frasercrmck, rdzhabarov, tatianashp, msifontes, jurahul, Kayjukh, grosul1, Joonsoo, kerbowa, liufengdb, aartbik, lucyrfox, mgester, arpith-jacob, csigg, antiagainst, shauheen, rriddle, mehdi_amini, luismarques, apazos, sameer.abuasal, pzheng, s.egerton, lenary, Jim, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, niosHD, sabuasal, simoncook, johnrusso, rbar, hiraditya, jvesely, arsenm.
Herald added a reviewer: antiagainst.
Herald added projects: clang, MLIR, LLVM.
Paul-C-Anagnostopoulos requested review of this revision.
Herald added subscribers: stephenneuendorffer, nicolasvasilache, MaskRay.

This extensive revision eliminates the 'code' type in TableGen. The purpose of this revision is to simplify TableGen and make all the string-manipulation bang operators available for code manipulation.

The 'code' keyword remains, as a synonym for 'string'. The [{...}] code brackets remain.

I updated the documentation. I found all the uses of the CodeInit value class in the backends and updated them to use StringInit instead. I updated tests.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92269

Files:
  clang/utils/TableGen/ClangOptionDocEmitter.cpp
  llvm/docs/TableGen/BackEnds.rst
  llvm/docs/TableGen/BackGuide.rst
  llvm/docs/TableGen/ProgRef.rst
  llvm/include/llvm/TableGen/Error.h
  llvm/include/llvm/TableGen/Record.h
  llvm/include/llvm/TableGen/SearchableTable.td
  llvm/lib/TableGen/Error.cpp
  llvm/lib/TableGen/JSONBackend.cpp
  llvm/lib/TableGen/Record.cpp
  llvm/lib/TableGen/TGLexer.cpp
  llvm/lib/TableGen/TGLexer.h
  llvm/lib/TableGen/TGParser.cpp
  llvm/lib/Target/AMDGPU/MIMGInstructions.td
  llvm/test/TableGen/code.td
  llvm/test/TableGen/generic-tables.td
  llvm/test/TableGen/interleave.td
  llvm/test/TableGen/unterminated-code-block.td
  llvm/utils/TableGen/AsmWriterEmitter.cpp
  llvm/utils/TableGen/DFAEmitter.cpp
  llvm/utils/TableGen/GICombinerEmitter.cpp
  llvm/utils/TableGen/RISCVCompressInstEmitter.cpp
  llvm/utils/TableGen/SearchableTableEmitter.cpp
  mlir/include/mlir/TableGen/Operator.h
  mlir/lib/TableGen/Attribute.cpp
  mlir/lib/TableGen/Dialect.cpp
  mlir/lib/TableGen/Operator.cpp
  mlir/lib/TableGen/Pattern.cpp
  mlir/lib/TableGen/Type.cpp
  mlir/lib/TableGen/TypeDef.cpp
  mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92269.308182.patch
Type: text/x-patch
Size: 49413 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20201128/84e8e864/attachment-0001.bin>


More information about the cfe-commits mailing list