[PATCH] D119900: [PDLL] Add support for tablegen includes and importing ODS information

River Riddle via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 15 15:20:35 PST 2022


rriddle created this revision.
Herald added subscribers: sdasgup3, wenzhicui, wrengr, Chia-hungDuan, dcaballe, cota, teijeong, dexonsmith, rdzhabarov, tatianashp, msifontes, jurahul, Kayjukh, grosul1, Joonsoo, liufengdb, aartbik, mgester, arpith-jacob, antiagainst, shauheen, mehdi_amini, mgrang, bollu, mgorny.
Herald added a reviewer: antiagainst.
rriddle requested review of this revision.
Herald added subscribers: llvm-commits, stephenneuendorffer, nicolasvasilache.
Herald added projects: MLIR, LLVM.

This commit adds support for processing tablegen include files, and importing
various information from ODS. This includes operations, attribute+type constraints,
attribute/operation/type interfaces, etc. This will allow for much more robust tooling,
and also allows for referencing ODS constructs directly within PDLL (imported interfaces
can be used as constraints, operation result names can be used for member access, etc).

Depends on D119899 <https://reviews.llvm.org/D119899>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D119900

Files:
  llvm/include/llvm/Support/SourceMgr.h
  mlir/include/mlir/IR/OpBase.td
  mlir/include/mlir/TableGen/Constraint.h
  mlir/include/mlir/Tools/PDLL/AST/Context.h
  mlir/include/mlir/Tools/PDLL/ODS/Constraint.h
  mlir/include/mlir/Tools/PDLL/ODS/Context.h
  mlir/include/mlir/Tools/PDLL/ODS/Dialect.h
  mlir/include/mlir/Tools/PDLL/ODS/Operation.h
  mlir/lib/TableGen/Constraint.cpp
  mlir/lib/Tools/PDLL/AST/CMakeLists.txt
  mlir/lib/Tools/PDLL/AST/Context.cpp
  mlir/lib/Tools/PDLL/CMakeLists.txt
  mlir/lib/Tools/PDLL/CodeGen/MLIRGen.cpp
  mlir/lib/Tools/PDLL/ODS/CMakeLists.txt
  mlir/lib/Tools/PDLL/ODS/Context.cpp
  mlir/lib/Tools/PDLL/ODS/Dialect.cpp
  mlir/lib/Tools/PDLL/ODS/Operation.cpp
  mlir/lib/Tools/PDLL/Parser/CMakeLists.txt
  mlir/lib/Tools/PDLL/Parser/Parser.cpp
  mlir/test/mlir-pdll/CodeGen/MLIR/expr.pdll
  mlir/test/mlir-pdll/CodeGen/MLIR/include/ops.td
  mlir/test/mlir-pdll/Parser/directive-failure.pdll
  mlir/test/mlir-pdll/Parser/expr-failure.pdll
  mlir/test/mlir-pdll/Parser/expr.pdll
  mlir/test/mlir-pdll/Parser/include/interfaces.td
  mlir/test/mlir-pdll/Parser/include/ops.td
  mlir/test/mlir-pdll/Parser/include_td.pdll
  mlir/test/mlir-pdll/Parser/stmt-failure.pdll
  mlir/tools/mlir-pdll/mlir-pdll.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D119900.409075.patch
Type: text/x-patch
Size: 66425 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220215/b32817cc/attachment-0001.bin>


More information about the llvm-commits mailing list