1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/utils/vscode/llvm
Andrzej Warzynski bed7df6e8b [Utils] Add missing attributes in syntax files
Added the following attributes to all LLVM syntax files:
  * allocsize
  * cold
  * convergent
  * dereferenceable_or_null
  * hot
  * inaccessiblemem_or_argmemonly
  * inaccessiblememonly
  * inalloca
  * jumptable
  * nocallback
  * nocf_check
  * noduplicate
  * nofree
  * nomerge
  * noprofile
  * nosync
  * null_pointer_is_valid
  * optforfuzzing
  * preallocated
  * safestack
  * sanitize_hwaddress
  * sanitize_memtag
  * shadowcallstack
  * speculative_load_hardening
  * swifterror
  * syncscope
  * tailcc
  * willreturn

I generated that list by comparing:
  * Attributes.inc (generated from Attributes.td), and
  * the Vim syntax file: llvm/utils/vim/syntax/llvm.vim

My original intention was to focus on the Vim syntax file. Since other
syntax files are also out-of-date, I added these attributes (if missing)
to other files as well. Note that in the other sytnax files (i.e. for
Emacs, VScode and Kate), there will be other attributes missing too.

I've also sorted all attributes alphabetically. Otherwise it's really
hard to automate adding new attributes. And I think that it was the
original intent to keep all of them ordered alphabetically.

Differential Revision: https://reviews.llvm.org/D97627
2021-03-05 17:36:09 +00:00
..
src
syntaxes [Utils] Add missing attributes in syntax files 2021-03-05 17:36:09 +00:00
.gitignore
.vscodeignore Add some more vscode files 2020-03-05 19:31:28 -08:00
CHANGELOG.md
language-configuration-tablegen.json Add some more vscode files 2020-03-05 19:31:28 -08:00
language-configuration.json Add some more vscode files 2020-03-05 19:31:28 -08:00
package-lock.json
package.json Add some more vscode files 2020-03-05 19:31:28 -08:00
README.md
tsconfig.json
vsc-extension-quickstart.md

VS Code Extension For LLVM Dev

Features

  • LLVM IR files (.ll) syntax highlighting. (manually translated from llvm/utils/vim/syntax/llvm.vim)
  • TableGen files (.td) syntax highlighting. (translated from llvm/utils/textmate)
  • PatternMatchers for LIT test output. ($llvm-lit, $llvm-filecheck)
  • Tasks to run LIT on current selected file. (Terminal -> Run Task -> llvm-lit)

Installation

sudo apt-get install nodejs-dev node-gyp npm
sudo npm install -g typescript npx vsce

Install From Source

cd <extensions-installation-folder>
cp -r llvm/utils/vscode/llvm .
cd llvm
npm install
npm run vscode:prepublish

<extensions-installation-folder> is OS dependent.

Please refer to https://code.visualstudio.com/docs/editor/extension-gallery#_where-are-extensions-installed

Install From Package (.vsix)

First package the extension according to https://code.visualstudio.com/api/working-with-extensions/publishing-extension#usage.

Then install the package according to https://code.visualstudio.com/docs/editor/extension-gallery#_install-from-a-vsix.

Setup

Set cmake.buildDirectory to your build directory.

https://code.visualstudio.com/docs/getstarted/settings

https://vector-of-bool.github.io/docs/vscode-cmake-tools/settings.html#cmake-builddirectory