IDE setup

You can find on this page some opinionated IDE setup instructions. Of course the best IDE is the one that works for you.

If you have an improvement or recommendation to any of the setups, we welcome contributions.

Visual Studio Code (vscode)

CMake

Visual Studio Code (vscode) can work pretty well with the CMake build system.

The following extensions are recommended:

We include a CmakePresets.json file in the root of the repository. This file is used by the CMake Tools extension to provide a list of presets that can be used to configure the build. The CMake Tools extension will automatically detect this file and provide the presets.

Additionally, all the configured presets generate the compile_commands.json file in the build directory which will then be picked up by clangd.

We recommend additionally setting the following in your .vscode/settings.json file:

{
    "files.exclude": {
        "**/bazel-*": true
    }
}

Vim

LLVM/MLIR settings

Check out the official instructions for LLVM and MLIR settings to enable syntax highlighting and other goodies.

IDE-like features

Check out the official documentation for clangd to enable features like autocompletion, go to definition, etc.