forked from OSchip/llvm-project
5dc8aaac39
With Control-Flow Integrity (CFI), the LowerTypeTests pass replaces function references with CFI jump table references, which is a problem for low-level code that needs the address of the actual function body. For example, in the Linux kernel, the code that sets up interrupt handlers needs to take the address of the interrupt handler function instead of the CFI jump table, as the jump table may not even be mapped into memory when an interrupt is triggered. This change adds the no_cfi constant type, which wraps function references in a value that LowerTypeTestsModule::replaceCfiUses does not replace. Link: https://github.com/ClangBuiltLinux/linux/issues/1353 Reviewed By: nickdesaulniers, pcc Differential Revision: https://reviews.llvm.org/D108478 |
||
---|---|---|
.. | ||
ftdetect | ||
ftplugin | ||
indent | ||
syntax | ||
README | ||
vimrc |
README
-*- llvm/utils/vim/README -*- This directory contains settings for the vim editor to work on llvm *.ll and tablegen *.td files. It comes with filetype detection rules in the (ftdetect), syntax highlighting (syntax), some minimal sensible default settings (ftplugin) and indentation plugins (indent). To install copy all subdirectories to your $HOME/.vim or if you prefer create symlinks to the files here. Do not copy the vimrc file here it is only meant as an inspiration and starting point for those working on llvm c++ code. Note: If you notice missing or incorrect syntax highlighting, please contact <llvm-bugs [at] lists.llvm.org>; 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