[all-commits] [llvm/llvm-project] 5de12b: [mlir][Tablegen-LSP] Add support for a basic Table...

River Riddle via All-commits all-commits at lists.llvm.org
Mon May 16 16:04:25 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5de12bb703c5104b3fd64ee51c6900d6171d826a
      https://github.com/llvm/llvm-project/commit/5de12bb703c5104b3fd64ee51c6900d6171d826a
  Author: River Riddle <riddleriver at gmail.com>
  Date:   2022-05-16 (Mon, 16 May 2022)

  Changed paths:
    M mlir/docs/Tools/MLIRLSP.md
    A mlir/include/mlir/Tools/tblgen-lsp-server/TableGenLspServerMain.h
    M mlir/lib/Tools/CMakeLists.txt
    M mlir/lib/Tools/lsp-server-support/CMakeLists.txt
    A mlir/lib/Tools/lsp-server-support/SourceMgrUtils.cpp
    A mlir/lib/Tools/lsp-server-support/SourceMgrUtils.h
    M mlir/lib/Tools/mlir-lsp-server/MLIRServer.cpp
    A mlir/lib/Tools/tblgen-lsp-server/CMakeLists.txt
    A mlir/lib/Tools/tblgen-lsp-server/LSPServer.cpp
    A mlir/lib/Tools/tblgen-lsp-server/LSPServer.h
    A mlir/lib/Tools/tblgen-lsp-server/TableGenLspServerMain.cpp
    A mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp
    A mlir/lib/Tools/tblgen-lsp-server/TableGenServer.h
    M mlir/test/CMakeLists.txt
    A mlir/test/tblgen-lsp-server/diagnostics.test
    A mlir/test/tblgen-lsp-server/exit-eof.test
    A mlir/test/tblgen-lsp-server/exit-with-shutdown.test
    A mlir/test/tblgen-lsp-server/exit-without-shutdown.test
    A mlir/test/tblgen-lsp-server/initialize-params-invalid.test
    A mlir/test/tblgen-lsp-server/initialize-params.test
    M mlir/tools/CMakeLists.txt
    A mlir/tools/tblgen-lsp-server/CMakeLists.txt
    A mlir/tools/tblgen-lsp-server/tblgen-lsp-server.cpp
    M mlir/utils/vscode/.gitignore
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/src/mlirContext.ts
    A mlir/utils/vscode/tablegen-language-configuration.json

  Log Message:
  -----------
  [mlir][Tablegen-LSP] Add support for a basic TableGen language server

This follows the same general structure of the MLIR and PDLL language
servers. This commits adds the basic functionality for setting up the server,
and initially only supports providing diagnostics. Followon commits will
build out more comprehensive behavior.

Realistically this should eventually live in llvm/, but building in MLIR is an easier
initial step given that:
* All of the necessary LSP functionality is already here
* It allows for proving out useful language features (e.g. compilation databases)
  without affecting wider scale tablegen users
* MLIR has a vscode extension that can immediately take advantage of it

Differential Revision: https://reviews.llvm.org/D125440




More information about the All-commits mailing list