[llvm] 2da21a1 - [Utils] Add missing attributes in syntax files
Andrzej Warzynski via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 5 09:36:36 PST 2021
Author: Andrzej Warzynski
Date: 2021-03-05T17:36:09Z
New Revision: 2da21a1bd466c7f42dd07a3da2d4501e95731951
URL: https://github.com/llvm/llvm-project/commit/2da21a1bd466c7f42dd07a3da2d4501e95731951
DIFF: https://github.com/llvm/llvm-project/commit/2da21a1bd466c7f42dd07a3da2d4501e95731951.diff
LOG: [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
Added:
Modified:
llvm/utils/emacs/llvm-mode.el
llvm/utils/kate/llvm.xml
llvm/utils/vim/syntax/llvm.vim
llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml
Removed:
################################################################################
diff --git a/llvm/utils/emacs/llvm-mode.el b/llvm/utils/emacs/llvm-mode.el
index bc24b12fb01f..80ca930aeade 100644
--- a/llvm/utils/emacs/llvm-mode.el
+++ b/llvm/utils/emacs/llvm-mode.el
@@ -22,12 +22,12 @@
(list
;; Attributes
`(,(regexp-opt
- '("alwaysinline" "argmemonly" "builtin" "cold" "convergent" "inaccessiblememonly"
- "inaccessiblemem_or_argmemonly" "inlinehint" "jumptable" "minsize" "mustprogress" "naked" "nobuiltin"
- "noduplicate" "nofree" "noimplicitfloat" "noinline" "nonlazybind" "noredzone" "noreturn"
- "norecurse" "noundef" "nounwind" "optnone" "optsize" "readnone" "readonly" "returns_twice"
- "speculatable" "ssp" "sspreq" "sspstrong" "safestack" "sanitize_address" "sanitize_hwaddress" "sanitize_memtag"
- "sanitize_thread" "sanitize_memory" "strictfp" "uwtable" "willreturn" "writeonly" "immarg") 'symbols) . font-lock-constant-face)
+ '("alwaysinline" "argmemonly" "allocsize" "builtin" "cold" "convergent" "dereferenceable_or_null" "hot" "inaccessiblememonly"
+ "inaccessiblemem_or_argmemonly" "inalloca" "inlinehint" "jumptable" "minsize" "mustprogress" "naked" "nobuiltin"
+ "nocallback" "nocf_check" "noduplicate" "nofree" "noimplicitfloat" "noinline" "nomerge" "nonlazybind" "noprofile" "noredzone" "noreturn"
+ "norecurse" "nosync" "noundef" "nounwind" "null_pointer_is_valid" "optforfuzzing" "optnone" "optsize" "preallocated" "readnone" "readonly" "returns_twice"
+ "shadowcallstack" "speculatable" "speculative_load_hardening" "ssp" "sspreq" "sspstrong" "safestack" "sanitize_address" "sanitize_hwaddress" "sanitize_memtag"
+ "sanitize_thread" "sanitize_memory" "strictfp" "swifterror" "uwtable" "willreturn" "writeonly" "immarg") 'symbols) . font-lock-constant-face)
;; Variables
'("%[-a-zA-Z$._][-a-zA-Z$._0-9]*" . font-lock-variable-name-face)
;; Labels
diff --git a/llvm/utils/kate/llvm.xml b/llvm/utils/kate/llvm.xml
index e5fd74848bcc..9f7ec77bf315 100644
--- a/llvm/utils/kate/llvm.xml
+++ b/llvm/utils/kate/llvm.xml
@@ -77,25 +77,59 @@
</list>
<list name="function-attributes">
<item> alignstack </item>
+ <item> allocsize </item>
<item> alwaysinline </item>
<item> argmemonly </item>
+ <item> arm_aapcscc </item>
+ <item> catch </item>
+ <item> cold </item>
<item> convergent </item>
+ <item> dereferenceable_or_null </item>
+ <item> extern_weak </item>
+ <item> hhvmcc </item>
+ <item> hot </item>
+ <item> inaccessiblemem_or_argmemonly </item>
+ <item> inaccessiblememonly </item>
+ <item> inalloca </item>
<item> inlinehint </item>
+ <item> inteldialect </item>
+ <item> jumptable </item>
+ <item> local_unnamed_addr </item>
<item> mustprogress </item>
<item> naked </item>
<item> nobuiltin </item>
+ <item> nocallback </item>
+ <item> nocf_check </item>
+ <item> noduplicate </item>
+ <item> nofree </item>
<item> noimplicitfloat </item>
<item> noinline </item>
+ <item> nomerge </item>
+ <item> noprofile </item>
<item> noredzone </item>
<item> noreturn </item>
+ <item> nosync </item>
<item> nounwind </item>
+ <item> null_pointer_is_valid </item>
+ <item> optforfuzzing </item>
<item> optnone </item>
<item> optsize </item>
+ <item> preallocated </item>
<item> readnone </item>
<item> readonly </item>
+ <item> safestack </item>
+ <item> sanitize_hwaddress </item>
+ <item> sanitize_memtag </item>
+ <item> shadowcallstack </item>
+ <item> speculative_load_hardening </item>
<item> ssp </item>
<item> sspreq </item>
<item> sspstrong </item>
+ <item> swifterror </item>
+ <item> syncscope </item>
+ <item> tailcc </item>
+ <item> willreturn </item>
+ <item> willreturn </item>
</list>
<list name="types">
<item> addrspace </item>
diff --git a/llvm/utils/vim/syntax/llvm.vim b/llvm/utils/vim/syntax/llvm.vim
index 9277eeb36af7..48d3daf581ca 100644
--- a/llvm/utils/vim/syntax/llvm.vim
+++ b/llvm/utils/vim/syntax/llvm.vim
@@ -44,11 +44,12 @@ syn keyword llvmKeyword
\ alias
\ align
\ alignstack
+ \ allocsize
\ alwaysinline
\ appending
\ argmemonly
- \ arm_aapcscc
\ arm_aapcs_vfpcc
+ \ arm_aapcscc
\ arm_apcscc
\ asm
\ atomic
@@ -58,51 +59,58 @@ syn keyword llvmKeyword
\ byref
\ byval
\ c
- \ catch
\ caller
+ \ catch
\ cc
\ ccc
\ cleanup
+ \ cold
\ coldcc
\ comdat
\ common
\ constant
+ \ convergent
\ datalayout
\ declare
\ default
\ define
\ deplibs
\ dereferenceable
+ \ dereferenceable_or_null
\ distinct
\ dllexport
\ dllimport
\ dso_local
\ dso_preemptable
\ except
+ \ extern_weak
\ external
\ externally_initialized
- \ extern_weak
\ fastcc
- \ tailcc
\ filter
\ from
\ gc
\ global
- \ hhvmcc
\ hhvm_ccc
+ \ hhvmcc
\ hidden
+ \ hot
\ immarg
+ \ inaccessiblemem_or_argmemonly
+ \ inaccessiblememonly
+ \ inalloca
\ initialexec
\ inlinehint
\ inreg
- \ inteldialect
\ intel_ocl_bicc
+ \ inteldialect
\ internal
+ \ jumptable
\ linkonce
\ linkonce_odr
+ \ local_unnamed_addr
\ localdynamic
\ localexec
- \ local_unnamed_addr
\ minsize
\ module
\ monotonic
@@ -113,19 +121,29 @@ syn keyword llvmKeyword
\ nest
\ noalias
\ nobuiltin
+ \ nocallback
\ nocapture
+ \ nocf_check
+ \ noduplicate
+ \ nofree
\ noimplicitfloat
\ noinline
+ \ nomerge
\ nonlazybind
\ nonnull
+ \ noprofile
\ norecurse
\ noredzone
\ noreturn
+ \ nosync
\ noundef
\ nounwind
+ \ null_pointer_is_valid
+ \ optforfuzzing
\ optnone
\ optsize
\ personality
+ \ preallocated
\ private
\ protected
\ ptx_device
@@ -135,16 +153,20 @@ syn keyword llvmKeyword
\ release
\ returned
\ returns_twice
+ \ safestack
\ sanitize_address
+ \ sanitize_hwaddress
\ sanitize_memory
+ \ sanitize_memtag
\ sanitize_thread
\ section
\ seq_cst
+ \ shadowcallstack
\ sideeffect
\ signext
- \ syncscope
\ source_filename
\ speculatable
+ \ speculative_load_hardening
\ spir_func
\ spir_kernel
\ sret
@@ -153,8 +175,11 @@ syn keyword llvmKeyword
\ sspstrong
\ strictfp
\ swiftcc
+ \ swifterror
\ swiftself
+ \ syncscope
\ tail
+ \ tailcc
\ target
\ thread_local
\ to
@@ -167,10 +192,11 @@ syn keyword llvmKeyword
\ volatile
\ weak
\ weak_odr
+ \ willreturn
+ \ win64cc
\ within
\ writeonly
\ x86_64_sysvcc
- \ win64cc
\ x86_fastcallcc
\ x86_stdcallcc
\ x86_thiscallcc
diff --git a/llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml b/llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml
index ddb1ea5ac3c2..ff6707b21687 100644
--- a/llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml
+++ b/llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml
@@ -143,11 +143,12 @@ patterns:
\\balias\\b|\
\\balign\\b|\
\\balignstack\\b|\
+ \\ballocsize\\b|\
\\balwaysinline\\b|\
\\bappending\\b|\
\\bargmemonly\\b|\
- \\barm_aapcscc\\b|\
\\barm_aapcs_vfpcc\\b|\
+ \\barm_aapcscc\\b|\
\\barm_apcscc\\b|\
\\basm\\b|\
\\batomic\\b|\
@@ -157,51 +158,58 @@ patterns:
\\bbyref\\b|\
\\bbyval\\b|\
\\bc\\b|\
- \\bcatch\\b|\
\\bcaller\\b|\
+ \\bcatch\\b|\
\\bcc\\b|\
\\bccc\\b|\
\\bcleanup\\b|\
+ \\bcold\\b|\
\\bcoldcc\\b|\
\\bcomdat\\b|\
\\bcommon\\b|\
\\bconstant\\b|\
+ \\bconvergent\\b|\
\\bdatalayout\\b|\
\\bdeclare\\b|\
\\bdefault\\b|\
\\bdefine\\b|\
\\bdeplibs\\b|\
\\bdereferenceable\\b|\
+ \\bdereferenceable_or_null\\b|\
\\bdistinct\\b|\
\\bdllexport\\b|\
\\bdllimport\\b|\
\\bdso_local\\b|\
\\bdso_preemptable\\b|\
\\bexcept\\b|\
+ \\bextern_weak\\b|\
\\bexternal\\b|\
\\bexternally_initialized\\b|\
- \\bextern_weak\\b|\
\\bfastcc\\b|\
- \\btailcc\\b|\
\\bfilter\\b|\
\\bfrom\\b|\
\\bgc\\b|\
\\bglobal\\b|\
- \\bhhvmcc\\b|\
\\bhhvm_ccc\\b|\
+ \\bhhvmcc\\b|\
\\bhidden\\b|\
+ \\bhot\\b|\
\\bimmarg\\b|\
+ \\binaccessiblemem_or_argmemonly\\b|\
+ \\binaccessiblememonly\\b|\
+ \\binalloc\\b|\
\\binitialexec\\b|\
\\binlinehint\\b|\
\\binreg\\b|\
- \\binteldialect\\b|\
\\bintel_ocl_bicc\\b|\
+ \\binteldialect\\b|\
\\binternal\\b|\
+ \\bjumptable\\b|\
\\blinkonce\\b|\
\\blinkonce_odr\\b|\
+ \\blocal_unnamed_addr\\b|\
\\blocaldynamic\\b|\
\\blocalexec\\b|\
- \\blocal_unnamed_addr\\b|\
\\bminsize\\b|\
\\bmodule\\b|\
\\bmonotonic\\b|\
@@ -212,19 +220,29 @@ patterns:
\\bnest\\b|\
\\bnoalias\\b|\
\\bnobuiltin\\b|\
+ \\bnocallback\\b|\
\\bnocapture\\b|\
+ \\bnocf_check\\b|\
+ \\bnoduplicate\\b|\
+ \\bnofree\\b|\
\\bnoimplicitfloat\\b|\
\\bnoinline\\b|\
+ \\bnomerge\\b|\
\\bnonlazybind\\b|\
\\bnonnull\\b|\
+ \\bnoprofile\\b|\
\\bnorecurse\\b|\
\\bnoredzone\\b|\
\\bnoreturn\\b|\
+ \\bnosync\\b|\
\\bnoundef\\b|\
\\bnounwind\\b|\
+ \\bnull_pointer_is_valid\\b|\
+ \\boptforfuzzing\\b|\
\\boptnone\\b|\
\\boptsize\\b|\
\\bpersonality\\b|\
+ \\bpreallocated\\b|\
\\bprivate\\b|\
\\bprotected\\b|\
\\bptx_device\\b|\
@@ -234,16 +252,20 @@ patterns:
\\brelease\\b|\
\\breturned\\b|\
\\breturns_twice\\b|\
+ \\bsafestack\\b|\
\\bsanitize_address\\b|\
+ \\bsanitize_hwaddress\\b|\
\\bsanitize_memory\\b|\
+ \\bsanitize_memtag\\b|\
\\bsanitize_thread\\b|\
\\bsection\\b|\
\\bseq_cst\\b|\
+ \\bshadowcallstack\\b|\
\\bsideeffect\\b|\
\\bsignext\\b|\
- \\bsyncscope\\b|\
\\bsource_filename\\b|\
\\bspeculatable\\b|\
+ \\bspeculative_load_hardening\\b|\
\\bspir_func\\b|\
\\bspir_kernel\\b|\
\\bsret\\b|\
@@ -252,8 +274,11 @@ patterns:
\\bsspstrong\\b|\
\\bstrictfp\\b|\
\\bswiftcc\\b|\
+ \\bswifterror\\b|\
\\bswiftself\\b|\
+ \\bsyncscope\\b|\
\\btail\\b|\
+ \\btailcc\\b|\
\\btarget\\b|\
\\bthread_local\\b|\
\\bto\\b|\
@@ -266,10 +291,11 @@ patterns:
\\bvolatile\\b|\
\\bweak\\b|\
\\bweak_odr\\b|\
+ \\bwillreturn\\b|\
+ \\bwin64cc\\b|\
\\bwithin\\b|\
\\bwriteonly\\b|\
\\bx86_64_sysvcc\\b|\
- \\bwin64cc\\b|\
\\bx86_fastcallcc\\b|\
\\bx86_stdcallcc\\b|\
\\bx86_thiscallcc\\b|\
More information about the llvm-commits
mailing list