llvm-project/llvm/utils/vim
Duncan P. N. Exon Smith 70ab3d2af6 AsmParser/Writer: Handle symbolic constants in DI 'flags:'
Parse (and write) symbolic constants in debug info `flags:` fields.
This prevents a readability (and CHECK-ability) regression with the new
debug info hierarchy.

Old (well, current) assembly, with pretty-printing:

    !{!"...\\0016387", ...} ; ... [public] [rvalue reference]

Flags field without this change:

   !MDDerivedType(flags: 16387, ...)

Flags field with this change:

   !MDDerivedType(flags: DIFlagPublic | DIFlagRValueReference, ...)

As discussed in the review thread, this isn't a final state.  Most of
these flags correspond to `DW_AT_` symbolic constants, and we might
eventually want to support arbitrary attributes in some form.  However,
as it stands now, some of the flags correspond to other concepts (like
`FlagStaticMember`); until things are refactored this is the simplest
way to move forward without regressing assembly.

llvm-svn: 230111
2015-02-21 01:02:18 +00:00
..
README
llvm.vim AsmParser/Writer: Handle symbolic constants in DI 'flags:' 2015-02-21 01:02:18 +00:00
tablegen.vim Add Foreach Loop 2012-02-22 16:09:41 +00:00
vimrc Enable syntax highlighting for reStructuredText files. 2013-02-28 06:43:24 +00:00

README

-*- llvm/utils/vim/README -*-

These are syntax highlighting files for the VIM editor. Included are:

* llvm.vim

  Syntax highlighting mode for LLVM assembly files. To use, copy `llvm.vim' to
  ~/.vim/syntax and add this code to your ~/.vimrc :

  augroup filetype
    au! BufRead,BufNewFile *.ll     set filetype=llvm
  augroup END

* tablegen.vim

  Syntax highlighting mode for TableGen description files. To use, copy
  `tablegen.vim' to ~/.vim/syntax and add this code to your ~/.vimrc :

  augroup filetype
    au! BufRead,BufNewFile *.td     set filetype=tablegen
  augroup END


If you prefer, instead of making copies you can make symlinks from
~/.vim/syntax/... to the syntax files in your LLVM source tree. Apparently
this did not work with older versions of vim however, so if this doesn't
work you may need to make actual copies of the files.

Another option, if you do not already have a ~/.vim/syntax directory, is
to symlink ~/.vim/syntax itself to llvm/utils/vim .

Note: If you notice missing or incorrect syntax highlighting, please contact
<llvmbugs [at] cs.uiuc.edu>; if you wish to provide a patch to improve the
functionality, it will be most appreciated. Thank you.

If you find yourself working with LLVM Makefiles often, but you don't get syntax
highlighting (because the files have names such as Makefile.rules or
TEST.nightly.Makefile), add the following to your ~/.vimrc:

  " LLVM Makefile highlighting mode
  augroup filetype
    au! BufRead,BufNewFile *Makefile*     set filetype=make
  augroup END