Co-authored-by: sarvel <sarvel@protonmail.com> Signed-off-by: Andrii Sokolov <andriy145@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
		
			
				
	
	
		
			1193 lines
		
	
	
		
			72 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			1193 lines
		
	
	
		
			72 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | ||
| " Language:	NASM - The Netwide Assembler (v0.98)
 | ||
| " Maintainer:	Andrii Sokolov	<andriy145@gmail.com>
 | ||
| " Original Author:	Manuel M.H. Stol	<Manuel.Stol@allieddata.nl>
 | ||
| " Former Maintainer:	Manuel M.H. Stol	<Manuel.Stol@allieddata.nl>
 | ||
| " Contributors:
 | ||
| " 	Leonard König <leonard.r.koenig@gmail.com> (C string highlighting),
 | ||
| " 	Peter Stanhope <dev.rptr@gmail.com> (Add missing 64-bit mode registers)
 | ||
| " 	Frédéric Hamel <frederic.hamel123@gmail.com> (F16c support, partial AVX
 | ||
| " 						     support, other)
 | ||
| "	sarvel <sarvel@protonmail.com> (Complete set of supported instructions)
 | ||
| " Last Change:	2024 Oct 8
 | ||
| " NASM Home:	http://www.nasm.us/
 | ||
| 
 | ||
| 
 | ||
| " Setup Syntax:
 | ||
| " quit when a syntax file was already loaded
 | ||
| if exists("b:current_syntax")
 | ||
|   finish
 | ||
| endif
 | ||
| "  Assembler syntax is case insensetive
 | ||
| syn case ignore
 | ||
| 
 | ||
| 
 | ||
| " Vim search and movement commands on identifers
 | ||
| "  Comments at start of a line inside which to skip search for indentifiers
 | ||
| setlocal comments=:;
 | ||
| "  Identifier Keyword characters (defines \k)
 | ||
| setlocal iskeyword=@,48-57,#,$,.,?,@-@,_,~
 | ||
| 
 | ||
| 
 | ||
| " Comments:
 | ||
| syn region  nasmComment		start=";" keepend end="$" contains=@nasmGrpInComments
 | ||
| syn region  nasmSpecialComment	start=";\*\*\*" keepend end="$"
 | ||
| syn keyword nasmInCommentTodo	contained TODO FIXME XXX[XXXXX]
 | ||
| syn cluster nasmGrpInComments	contains=nasmInCommentTodo
 | ||
| syn cluster nasmGrpComments	contains=@nasmGrpInComments,nasmComment,nasmSpecialComment
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| " Label Identifiers:
 | ||
| "  in NASM: 'Everything is a Label'
 | ||
| "  Definition Label = label defined by %[i]define or %[i]assign
 | ||
| "  Identifier Label = label defined as first non-keyword on a line or %[i]macro
 | ||
| syn match   nasmLabelError	"$\=\(\d\+\K\|[#.@]\|\$\$\k\)\k*\>"
 | ||
| syn match   nasmLabel		"\<\(\h\|[?@]\)\k*\>"
 | ||
| syn match   nasmLabel		"[\$\~]\(\h\|[?@]\)\k*\>"lc=1
 | ||
| "  Labels starting with one or two '.' are special
 | ||
| syn match   nasmLocalLabel	"\<\.\(\w\|[#$?@~]\)\k*\>"
 | ||
| syn match   nasmLocalLabel	"\<\$\.\(\w\|[#$?@~]\)\k*\>"ms=s+1
 | ||
| if !exists("nasm_no_warn")
 | ||
|   syn match  nasmLabelWarn	"\<\~\=\$\=[_.][_.\~]*\>"
 | ||
| endif
 | ||
| if exists("nasm_loose_syntax")
 | ||
|   syn match   nasmSpecialLabel	"\<\.\.@\k\+\>"
 | ||
|   syn match   nasmSpecialLabel	"\<\$\.\.@\k\+\>"ms=s+1
 | ||
|   if !exists("nasm_no_warn")
 | ||
|     syn match   nasmLabelWarn	"\<\$\=\.\.@\(\d\|[#$\.~]\)\k*\>"
 | ||
|   endif
 | ||
|   " disallow use of nasm internal label format
 | ||
|   syn match   nasmLabelError	"\<\$\=\.\.@\d\+\.\k*\>"
 | ||
| else
 | ||
|   syn match   nasmSpecialLabel	"\<\.\.@\(\h\|[?@]\)\k*\>"
 | ||
|   syn match   nasmSpecialLabel	"\<\$\.\.@\(\h\|[?@]\)\k*\>"ms=s+1
 | ||
| endif
 | ||
| "  Labels can be dereferenced with '$' to destinguish them from reserved words
 | ||
| syn match   nasmLabelError	"\<\$\K\k*\s*:"
 | ||
| syn match   nasmLabelError	"^\s*\$\K\k*\>"
 | ||
| syn match   nasmLabelError	"\<\~\s*\(\k*\s*:\|\$\=\.\k*\)"
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| " Constants:
 | ||
| syn match   nasmStringError	+["'`]+
 | ||
| " NASM is case sensitive here: eg. u-prefix allows for 4-digit, U-prefix for
 | ||
| " 8-digit Unicode characters
 | ||
| syn case match
 | ||
| " one-char escape-sequences
 | ||
| syn match   nasmCStringEscape  display contained "\\[’"‘\\\?abtnvfre]"
 | ||
| " hex and octal numbers
 | ||
| syn match   nasmCStringEscape  display contained "\\\(x\x\{2}\|\o\{1,3}\)"
 | ||
| " Unicode characters
 | ||
| syn match   nasmCStringEscape	display contained "\\\(u\x\{4}\|U\x\{8}\)"
 | ||
| " ISO C99 format strings (copied from cFormat in runtime/syntax/c.vim)
 | ||
| syn match   nasmCStringFormat	display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlLjzt]\|ll\|hh\)\=\([aAbdiuoxXDOUfFeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
 | ||
| syn match   nasmCStringFormat	display "%%" contained
 | ||
| syn match   nasmString		+\("[^"]\{-}"\|'[^']\{-}'\)+
 | ||
| " Highlight C escape- and format-sequences within ``-strings
 | ||
| syn match   nasmCString	+\(`[^`]\{-}`\)+ contains=nasmCStringEscape,nasmCStringFormat extend
 | ||
| syn case ignore
 | ||
| syn match   nasmBinNumber	"\<\([01][01_]*[by]\|0[by][01_]\+\)\>"
 | ||
| syn match   nasmBinNumber	"\<\~\([01][01_]*[by]\|0[by][01_]\+\)\>"lc=1
 | ||
| syn match   nasmOctNumber	"\<\(\o[0-7_]*[qo]\|0[qo][0-7_]\+\)\>"
 | ||
| syn match   nasmOctNumber	"\<\~\(\o[0-7_]*[qo]\|0[qo][0-7_]\+\)\>"lc=1
 | ||
| syn match   nasmDecNumber	"\<\(\d[0-9_]*\|\d[0-9_]*d\|0d[0-9_]\+\)\>"
 | ||
| syn match   nasmDecNumber	"\<\~\(\d[0-9_]*\|\d[0-9_]*d\|0d[0-9_]\+\)\>"lc=1
 | ||
| syn match   nasmHexNumber	"\<\(\d[0-9a-f_]*h\|0[xh][0-9a-f_]\+\|\$\d[0-9a-f_]*\)\>"
 | ||
| syn match   nasmHexNumber	"\<\~\(\d[0-9a-f_]*h\|0[xh][0-9a-f_]\+\|\$\d[0-9a-f_]*\)\>"lc=1
 | ||
| syn match   nasmBinFloat	"\<\(0[by][01_]*\.[01_]*\(p[+-]\=[0-9_]*\)\=\)\|\(0[by][01_]*p[+-]\=[0-9_]*\)\>"
 | ||
| syn match   nasmOctFloat	"\<\(0[qo][0-7_]*\.[0-7_]*\(p[+-]\=[0-9_]*\)\=\)\|\(0[qo][0-7_]*p[+-]\=[0-9_]*\)\>"
 | ||
| syn match   nasmDecFloat	"\<\(\d[0-9_]*\.[0-9_]*\(e[+-]\=[0-9_]*\)\=\)\|\(\d[0-9_]*e[+-]\=[0-9_]*\)\>"
 | ||
| syn match   nasmHexFloat	"\<\(0[xh][0-9a-f_]\+\.[0-9a-f_]*\(p[+-]\=[0-9_]*\)\=\)\|\(0[xh][0-9a-f_]\+p[+-]\=[0-9_]*\)\>"
 | ||
| syn keyword nasmSpecFloat	Inf NaN SNaN QNaN __?Infinity?__ __?NaN?__ __?SNaN?__ __?QNaN?__
 | ||
| syn match   nasmBcdConst	"\<\(\d[0-9_]*p\|0p[0-9_]\+\)\>"
 | ||
| syn match   nasmNumberError	"\<\~\s*\d\+\.\d*\(e[+-]\=\d\+\)\=\>"
 | ||
| 
 | ||
| 
 | ||
| " Netwide Assembler Storage Directives:
 | ||
| "  Storage types
 | ||
| syn keyword nasmTypeError	DF EXTRN FWORD RESF TBYTE
 | ||
| syn keyword nasmType		FAR NEAR SHORT
 | ||
| syn keyword nasmType		BYTE WORD DWORD QWORD DQWORD HWORD DHWORD TWORD
 | ||
| syn keyword nasmType		CDECL FASTCALL NONE PASCAL STDCALL
 | ||
| syn keyword nasmStorage		DB DW DD DQ DT DO DY DZ
 | ||
| syn keyword nasmStorage		RESB RESW RESD RESQ REST RESO RESY RESZ
 | ||
| syn keyword nasmStorage		EXTERN GLOBAL COMMON
 | ||
| "  Structured storage types
 | ||
| syn match   nasmTypeError	"\<\(AT\|I\=\(END\)\=\(STRUCT\=\|UNION\)\|I\=END\)\>"
 | ||
| syn match   nasmStructureLabel	contained "\<\(AT\|I\=\(END\)\=\(STRUCT\=\|UNION\)\|I\=END\)\>"
 | ||
| "   structures cannot be nested (yet) -> use: 'keepend' and 're='
 | ||
| syn cluster nasmGrpCntnStruc	contains=ALLBUT,@nasmGrpInComments,nasmMacroDef,@nasmGrpInMacros,@nasmGrpInPreCondits,nasmStructureDef,@nasmGrpInStrucs
 | ||
| syn region  nasmStructureDef	transparent matchgroup=nasmStructure keepend start="^\s*STRUCT\>"hs=e-5 end="^\s*ENDSTRUCT\>"re=e-9 contains=@nasmGrpCntnStruc
 | ||
| syn region  nasmStructureDef	transparent matchgroup=nasmStructure keepend start="^\s*STRUC\>"hs=e-4  end="^\s*ENDSTRUC\>"re=e-8  contains=@nasmGrpCntnStruc
 | ||
| syn region  nasmStructureDef	transparent matchgroup=nasmStructure keepend start="\<ISTRUCT\=\>" end="\<IEND\(STRUCT\=\)\=\>" contains=@nasmGrpCntnStruc,nasmInStructure
 | ||
| "   union types are not part of nasm (yet)
 | ||
| "syn region  nasmStructureDef	transparent matchgroup=nasmStructure keepend start="^\s*UNION\>"hs=e-4 end="^\s*ENDUNION\>"re=e-8 contains=@nasmGrpCntnStruc
 | ||
| "syn region  nasmStructureDef	transparent matchgroup=nasmStructure keepend start="\<IUNION\>" end="\<IEND\(UNION\)\=\>" contains=@nasmGrpCntnStruc,nasmInStructure
 | ||
| syn match   nasmInStructure	contained "^\s*AT\>"hs=e-1
 | ||
| syn cluster nasmGrpInStrucs	contains=nasmStructure,nasmInStructure,nasmStructureLabel
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| " PreProcessor Instructions:
 | ||
| " NAsm PreProcs start with %, but % is not a character
 | ||
| syn match   nasmPreProcError	"%{\=\(%\=\k\+\|%%\+\k*\|[+-]\=\d\+\)}\="
 | ||
| if exists("nasm_loose_syntax")
 | ||
|   syn cluster nasmGrpNxtCtx	contains=nasmStructureLabel,nasmLabel,nasmLocalLabel,nasmSpecialLabel,nasmLabelError,nasmPreProcError
 | ||
| else
 | ||
|   syn cluster nasmGrpNxtCtx	contains=nasmStructureLabel,nasmLabel,nasmLabelError,nasmPreProcError
 | ||
| endif
 | ||
| 
 | ||
| "  Multi-line macro
 | ||
| syn cluster nasmGrpCntnMacro	contains=ALLBUT,@nasmGrpInComments,nasmStructureDef,@nasmGrpInStrucs,nasmMacroDef,@nasmGrpPreCondits,nasmMemReference,nasmInMacPreCondit,nasmInMacStrucDef
 | ||
| syn region  nasmMacroDef	matchgroup=nasmMacro keepend start="^\s*%macro\>"hs=e-5 start="^\s*%imacro\>"hs=e-6 end="^\s*%endmacro\>"re=e-9 contains=@nasmGrpCntnMacro,nasmInMacStrucDef
 | ||
| if exists("nasm_loose_syntax")
 | ||
|   syn match  nasmInMacLabel	contained "%\(%\k\+\>\|{%\k\+}\)"
 | ||
|   syn match  nasmInMacLabel	contained "%\($\+\(\w\|[#\.?@~]\)\k*\>\|{$\+\(\w\|[#\.?@~]\)\k*}\)"
 | ||
|   syn match  nasmInMacPreProc	contained "^\s*%\(push\|repl\)\>"hs=e-4 skipwhite nextgroup=nasmStructureLabel,nasmLabel,nasmInMacParam,nasmLocalLabel,nasmSpecialLabel,nasmLabelError,nasmPreProcError
 | ||
|   if !exists("nasm_no_warn")
 | ||
|     syn match nasmInMacLblWarn	contained "%\(%[$\.]\k*\>\|{%[$\.]\k*}\)"
 | ||
|     syn match nasmInMacLblWarn	contained "%\($\+\(\d\|[#\.@~]\)\k*\|{\$\+\(\d\|[#\.@~]\)\k*}\)"
 | ||
|     hi link nasmInMacCatLabel	nasmInMacLblWarn
 | ||
|   else
 | ||
|     hi link nasmInMacCatLabel	nasmInMacLabel
 | ||
|   endif
 | ||
| else
 | ||
|   syn match  nasmInMacLabel	contained "%\(%\(\w\|[#?@~]\)\k*\>\|{%\(\w\|[#?@~]\)\k*}\)"
 | ||
|   syn match  nasmInMacLabel	contained "%\($\+\(\h\|[?@]\)\k*\>\|{$\+\(\h\|[?@]\)\k*}\)"
 | ||
|   hi link nasmInMacCatLabel	nasmLabelError
 | ||
| endif
 | ||
| syn match   nasmInMacCatLabel	contained "\d\K\k*"lc=1
 | ||
| syn match   nasmInMacLabel	contained "\d}\k\+"lc=2
 | ||
| if !exists("nasm_no_warn")
 | ||
|   syn match  nasmInMacLblWarn	contained "%\(\($\+\|%\)[_~][._~]*\>\|{\($\+\|%\)[_~][._~]*}\)"
 | ||
| endif
 | ||
| syn match   nasmInMacPreProc	contained "^\s*%pop\>"hs=e-3
 | ||
| syn match   nasmInMacPreProc	contained "^\s*%\(push\|repl\)\>"hs=e-4 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
| "   structures cannot be nested (yet) -> use: 'keepend' and 're='
 | ||
| syn region  nasmInMacStrucDef	contained transparent matchgroup=nasmStructure keepend start="^\s*STRUCT\>"hs=e-5 end="^\s*ENDSTRUCT\>"re=e-9 contains=@nasmGrpCntnMacro
 | ||
| syn region  nasmInMacStrucDef	contained transparent matchgroup=nasmStructure keepend start="^\s*STRUC\>"hs=e-4  end="^\s*ENDSTRUC\>"re=e-8  contains=@nasmGrpCntnMacro
 | ||
| syn region  nasmInMacStrucDef	contained transparent matchgroup=nasmStructure keepend start="\<ISTRUCT\=\>" end="\<IEND\(STRUCT\=\)\=\>" contains=@nasmGrpCntnMacro,nasmInStructure
 | ||
| "   union types are not part of nasm (yet)
 | ||
| "syn region  nasmInMacStrucDef	contained transparent matchgroup=nasmStructure keepend start="^\s*UNION\>"hs=e-4 end="^\s*ENDUNION\>"re=e-8 contains=@nasmGrpCntnMacro
 | ||
| "syn region  nasmInMacStrucDef	contained transparent matchgroup=nasmStructure keepend start="\<IUNION\>" end="\<IEND\(UNION\)\=\>" contains=@nasmGrpCntnMacro,nasmInStructure
 | ||
| syn region  nasmInMacPreConDef	contained transparent matchgroup=nasmInMacPreCondit start="^\s*%ifnidni\>"hs=e-7 start="^\s*%if\(idni\|n\(ctx\|def\|idn\|num\|str\)\)\>"hs=e-6 start="^\s*%if\(ctx\|def\|idn\|nid\|num\|str\)\>"hs=e-5 start="^\s*%ifid\>"hs=e-4 start="^\s*%if\>"hs=e-2 end="%endif\>" contains=@nasmGrpCntnMacro,nasmInMacPreCondit,nasmInPreCondit
 | ||
| " Todo: allow STRUC/ISTRUC to be used inside preprocessor conditional block
 | ||
| syn match   nasmInMacPreCondit	contained transparent "ctx\s"lc=3 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
| syn match   nasmInMacPreCondit	contained "^\s*%elifctx\>"hs=e-7 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
| syn match   nasmInMacPreCondit	contained "^\s*%elifnctx\>"hs=e-8 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
| syn match   nasmInMacParamNum	contained "\<\d\+\.list\>"me=e-5
 | ||
| syn match   nasmInMacParamNum	contained "\<\d\+\.nolist\>"me=e-7
 | ||
| syn match   nasmInMacDirective	contained "\.\(no\)\=list\>"
 | ||
| syn match   nasmInMacMacro	contained transparent "macro\s"lc=5 skipwhite nextgroup=nasmStructureLabel
 | ||
| syn match   nasmInMacMacro	contained "^\s*%rotate\>"hs=e-6
 | ||
| syn match   nasmInMacParam	contained "%\([+-]\=\d\+\|{[+-]\=\d\+}\)"
 | ||
| "   nasm conditional macro operands/arguments
 | ||
| "   Todo: check feasebility; add too nasmGrpInMacros, etc.
 | ||
| "syn match   nasmInMacCond	contained "\<\(N\=\([ABGL]E\=\|[CEOSZ]\)\|P[EO]\=\)\>"
 | ||
| syn cluster nasmGrpInMacros	contains=nasmMacro,nasmInMacMacro,nasmInMacParam,nasmInMacParamNum,nasmInMacDirective,nasmInMacLabel,nasmInMacLblWarn,nasmInMacMemRef,nasmInMacPreConDef,nasmInMacPreCondit,nasmInMacPreProc,nasmInMacStrucDef
 | ||
| 
 | ||
| "   Context pre-procs that are better used inside a macro
 | ||
| if exists("nasm_ctx_outside_macro")
 | ||
|   syn region nasmPreConditDef	transparent matchgroup=nasmCtxPreCondit start="^\s*%ifnctx\>"hs=e-6 start="^\s*%ifctx\>"hs=e-5 end="%endif\>" contains=@nasmGrpCntnPreCon
 | ||
|   syn match  nasmCtxPreProc	"^\s*%pop\>"hs=e-3
 | ||
|   if exists("nasm_loose_syntax")
 | ||
|     syn match   nasmCtxLocLabel	"%$\+\(\w\|[#.?@~]\)\k*\>"
 | ||
|   else
 | ||
|     syn match   nasmCtxLocLabel	"%$\+\(\h\|[?@]\)\k*\>"
 | ||
|   endif
 | ||
|   syn match nasmCtxPreProc	"^\s*%\(push\|repl\)\>"hs=e-4 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
|   syn match nasmCtxPreCondit	contained transparent "ctx\s"lc=3 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
|   syn match nasmCtxPreCondit	contained "^\s*%elifctx\>"hs=e-7 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
|   syn match nasmCtxPreCondit	contained "^\s*%elifnctx\>"hs=e-8 skipwhite nextgroup=@nasmGrpNxtCtx
 | ||
|   if exists("nasm_no_warn")
 | ||
|     hi link nasmCtxPreCondit	nasmPreCondit
 | ||
|     hi link nasmCtxPreProc	nasmPreProc
 | ||
|     hi link nasmCtxLocLabel	nasmLocalLabel
 | ||
|   else
 | ||
|     hi link nasmCtxPreCondit	nasmPreProcWarn
 | ||
|     hi link nasmCtxPreProc	nasmPreProcWarn
 | ||
|     hi link nasmCtxLocLabel	nasmLabelWarn
 | ||
|   endif
 | ||
| endif
 | ||
| 
 | ||
| "  Conditional assembly
 | ||
| syn cluster nasmGrpCntnPreCon	contains=ALLBUT,@nasmGrpInComments,@nasmGrpInMacros,@nasmGrpInStrucs
 | ||
| syn region  nasmPreConditDef	transparent matchgroup=nasmPreCondit start="^\s*%ifnidni\>"hs=e-7 start="^\s*%if\(idni\|n\(def\|idn\|num\|str\)\)\>"hs=e-6 start="^\s*%if\(def\|idn\|nid\|num\|str\)\>"hs=e-5 start="^\s*%ifid\>"hs=e-4 start="^\s*%if\>"hs=e-2 end="%endif\>" contains=@nasmGrpCntnPreCon
 | ||
| syn match   nasmInPreCondit	contained "^\s*%el\(if\|se\)\>"hs=e-4
 | ||
| syn match   nasmInPreCondit	contained "^\s*%elifid\>"hs=e-6
 | ||
| syn match   nasmInPreCondit	contained "^\s*%elif\(def\|idn\|nid\|num\|str\)\>"hs=e-7
 | ||
| syn match   nasmInPreCondit	contained "^\s*%elif\(n\(def\|idn\|num\|str\)\|idni\)\>"hs=e-8
 | ||
| syn match   nasmInPreCondit	contained "^\s*%elifnidni\>"hs=e-9
 | ||
| syn cluster nasmGrpInPreCondits	contains=nasmPreCondit,nasmInPreCondit,nasmCtxPreCondit
 | ||
| syn cluster nasmGrpPreCondits	contains=nasmPreConditDef,@nasmGrpInPreCondits,nasmCtxPreProc,nasmCtxLocLabel
 | ||
| 
 | ||
| "  Other pre-processor statements
 | ||
| syn match   nasmPreProc		"^\s*%\(rep\|use\)\>"hs=e-3
 | ||
| syn match   nasmPreProc		"^\s*%line\>"hs=e-4
 | ||
| syn match   nasmPreProc		"^\s*%\(clear\|error\|fatal\)\>"hs=e-5
 | ||
| syn match   nasmPreProc		"^\s*%\(endrep\|strlen\|substr\)\>"hs=e-6
 | ||
| syn match   nasmPreProc		"^\s*%\(exitrep\|warning\)\>"hs=e-7
 | ||
| syn match   nasmDefine		"^\s*%undef\>"hs=e-5
 | ||
| syn match   nasmDefine		"^\s*%\(assign\|define\)\>"hs=e-6
 | ||
| syn match   nasmDefine		"^\s*%i\(assign\|define\)\>"hs=e-7
 | ||
| syn match   nasmDefine		"^\s*%unmacro\>"hs=e-7
 | ||
| syn match   nasmInclude		"^\s*%include\>"hs=e-7
 | ||
| " Todo: Treat the line tail after %fatal, %error, %warning as text
 | ||
| 
 | ||
| "  Multiple pre-processor instructions on single line detection (obsolete)
 | ||
| "syn match   nasmPreProcError	+^\s*\([^\t "%';][^"%';]*\|[^\t "';][^"%';]\+\)%\a\+\>+
 | ||
| syn cluster nasmGrpPreProcs	contains=nasmMacroDef,@nasmGrpInMacros,@nasmGrpPreCondits,nasmPreProc,nasmDefine,nasmInclude,nasmPreProcWarn,nasmPreProcError
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| " Register Identifiers:
 | ||
| "  Register operands:
 | ||
| syn match   nasmGen08Register	"\<[A-D][HL]\>"
 | ||
| syn match   nasmGen16Register	"\<\([A-D]X\|[DS]I\|[BS]P\)\>"
 | ||
| syn match   nasmGen32Register	"\<E\([A-D]X\|[DS]I\|[BS]P\)\>"
 | ||
| syn match   nasmGen64Register	"\<R\([A-D]X\|[DS]I\|[BS]P\|[89]\|1[0-5]\|[89][WDB]\|1[0-5][WDB]\)\>"
 | ||
| syn match   nasmExtRegister     "\<\([SB]PL\|[SD]IL\)\>"
 | ||
| syn match   nasmSegRegister	"\<[C-GS]S\>"
 | ||
| syn match   nasmSpcRegister	"\<E\=IP\>"
 | ||
| syn match   nasmFpuRegister	"\<ST\o\>"
 | ||
| syn match   nasmMmxRegister	"\<MM\o\>"
 | ||
| syn match   nasmAvxRegister	"\<[XYZ]MM\d\{1,2}\>"
 | ||
| syn match   nasmCtrlRegister	"\<CR\o\>"
 | ||
| syn match   nasmDebugRegister	"\<DR\o\>"
 | ||
| syn match   nasmTestRegister	"\<TR\o\>"
 | ||
| syn match   nasmRegisterError	"\<\(CR[15-9]\|DR[4-58-9]\|TR[0-28-9]\)\>"
 | ||
| syn match   nasmRegisterError	"\<[XYZ]MM\(3[2-9]\|[04-9]\d\)\>"
 | ||
| syn match   nasmRegisterError	"\<ST\((\d)\|[8-9]\>\)"
 | ||
| syn match   nasmRegisterError	"\<E\([A-D][HL]\|[C-GS]S\)\>"
 | ||
| "  Memory reference operand (address):
 | ||
| syn match   nasmMemRefError	"[[\]]"
 | ||
| syn cluster nasmGrpCntnMemRef	contains=ALLBUT,@nasmGrpComments,@nasmGrpPreProcs,@nasmGrpInStrucs,nasmMemReference,nasmMemRefError
 | ||
| syn match   nasmInMacMemRef	contained "\[[^;[\]]\{-}\]" contains=@nasmGrpCntnMemRef,nasmPreProcError,nasmInMacLabel,nasmInMacLblWarn,nasmInMacParam
 | ||
| syn match   nasmMemReference	"\[[^;[\]]\{-}\]" contains=@nasmGrpCntnMemRef,nasmPreProcError,nasmCtxLocLabel
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| " Netwide Assembler Directives:
 | ||
| "  Compilation constants
 | ||
| syn keyword nasmConstant	__BITS__ __DATE__ __FILE__ __FORMAT__ __LINE__
 | ||
| syn keyword nasmConstant	__NASM_MAJOR__ __NASM_MINOR__ __NASM_VERSION__
 | ||
| syn keyword nasmConstant	__TIME__
 | ||
| "  Instruction modifiers
 | ||
| syn match   nasmInstrModifier	"\(^\|:\)\s*[C-GS]S\>"ms=e-1
 | ||
| syn keyword nasmInstrModifier	A16 A32 O16 O32
 | ||
| syn match   nasmInstrModifier	"\<F\(ADD\|MUL\|\(DIV\|SUB\)R\=\)\s\+TO\>"lc=5,ms=e-1
 | ||
| "   the 'to' keyword is not allowed for fpu-pop instructions (yet)
 | ||
| "syn match   nasmInstrModifier	"\<F\(ADD\|MUL\|\(DIV\|SUB\)R\=\)P\s\+TO\>"lc=6,ms=e-1
 | ||
| "  NAsm directives
 | ||
| syn keyword nasmRepeat		TIMES
 | ||
| syn keyword nasmDirective	ALIGN[B] INCBIN EQU NOSPLIT SPLIT
 | ||
| syn keyword nasmDirective	ABSOLUTE BITS SECTION SEGMENT DEFAULT
 | ||
| syn keyword nasmDirective	ENDSECTION ENDSEGMENT
 | ||
| syn keyword nasmDirective	__SECT__
 | ||
| "  Macro created standard directives: (requires %include)
 | ||
| syn case match
 | ||
| syn keyword nasmStdDirective	ENDPROC EPILOGUE LOCALS PROC PROLOGUE USES
 | ||
| syn keyword nasmStdDirective	ENDIF ELSE ELIF ELSIF IF
 | ||
| "syn keyword nasmStdDirective	BREAK CASE DEFAULT ENDSWITCH SWITCH
 | ||
| "syn keyword nasmStdDirective	CASE OF ENDCASE
 | ||
| syn keyword nasmStdDirective	ENDFOR ENDWHILE FOR REPEAT UNTIL WHILE EXIT
 | ||
| syn case ignore
 | ||
| "  Format specific directives: (all formats)
 | ||
| "  (excluded: extension directives to section, global, common and extern)
 | ||
| syn keyword nasmFmtDirective	ORG
 | ||
| syn keyword nasmFmtDirective	EXPORT IMPORT GROUP UPPERCASE SEG WRT
 | ||
| syn keyword nasmFmtDirective	LIBRARY
 | ||
| syn case match
 | ||
| syn keyword nasmFmtDirective	_GLOBAL_OFFSET_TABLE_ __GLOBAL_OFFSET_TABLE_
 | ||
| syn keyword nasmFmtDirective	..start ..got ..gotoff ..gotpc ..plt ..sym
 | ||
| syn case ignore
 | ||
| 
 | ||
| " Instruction errors:
 | ||
| "  Instruction modifiers
 | ||
| syn match   nasmInstructnError	"\<TO\>"
 | ||
| " Standard Instructions:
 | ||
| syn match   nasmInstructnError	"\<\(F\=CMOV\|SET\|J\)N\=\a\{0,2}\>"
 | ||
| syn match   nasmInstructnError	"\<CMP\a\{0,2}XADD\>"
 | ||
| syn keyword nasmInstructnError	CMPS MOVS LCS LODS STOS XLAT
 | ||
| syn match   nasmInstructnError	"\<MOV\s[^,;[]*\<CS\>\s*[^:]"he=e-1
 | ||
| "  Input and Output
 | ||
| syn keyword nasmInstructnError	INS OUTS
 | ||
| "  Standard MMX instructions: (requires MMX1 unit)
 | ||
| syn match   nasmInstructnError	"\<P\(ADD\|SUB\)U\=S\=[DQ]\=\>"
 | ||
| syn match   nasmInstructnError	"\<PCMP\a\{0,2}[BDWQ]\=\>"
 | ||
| " Streaming SIMD Extension Packed Instructions: (requires SSE unit)
 | ||
| syn match   nasmInstructnError	"\<CMP\a\{1,5}[PS]S\>"
 | ||
| " AVX Instructions
 | ||
| syn match   nasmInstructnError  "\<VP\a\{3}R\a\>"
 | ||
| 
 | ||
| 
 | ||
| " Instructions:
 | ||
| " Standard
 | ||
| syn keyword nasmInstructionStandard AAA AAD AAM AAS ADC
 | ||
| syn keyword nasmInstructionStandard ADD AND ARPL 
 | ||
| syn keyword nasmInstructionStandard BOUND BSF BSR BSWAP BT
 | ||
| syn keyword nasmInstructionStandard BTC BTR BTS CALL CBW
 | ||
| syn keyword nasmInstructionStandard CDQ CDQE CLC CLD CLI
 | ||
| syn keyword nasmInstructionStandard CLTS CMC CMP CMPSB CMPSD
 | ||
| syn keyword nasmInstructionStandard CMPSQ CMPSW CMPXCHG CMPXCHG486 CMPXCHG8B
 | ||
| syn keyword nasmInstructionStandard CMPXCHG16B CPUID CQO
 | ||
| syn keyword nasmInstructionStandard CWD CWDE DAA DAS DEC
 | ||
| syn keyword nasmInstructionStandard DIV EMMS ENTER EQU
 | ||
| syn keyword nasmInstructionStandard F2XM1 FABS FADD FADDP FBLD
 | ||
| syn keyword nasmInstructionStandard FBSTP FCHS FCLEX FCMOVB FCMOVBE
 | ||
| syn keyword nasmInstructionStandard FCMOVE FCMOVNB FCMOVNBE FCMOVNE FCMOVNU
 | ||
| syn keyword nasmInstructionStandard FCMOVU FCOM FCOMI FCOMIP FCOMP
 | ||
| syn keyword nasmInstructionStandard FCOMPP FCOS FDECSTP FDISI FDIV
 | ||
| syn keyword nasmInstructionStandard FDIVP FDIVR FDIVRP FEMMS FENI
 | ||
| syn keyword nasmInstructionStandard FFREE FFREEP FIADD FICOM FICOMP
 | ||
| syn keyword nasmInstructionStandard FIDIV FIDIVR FILD FIMUL FINCSTP
 | ||
| syn keyword nasmInstructionStandard FINIT FIST FISTP FISTTP FISUB
 | ||
| syn keyword nasmInstructionStandard FISUBR FLD FLD1 FLDCW FLDENV
 | ||
| syn keyword nasmInstructionStandard FLDL2E FLDL2T FLDLG2 FLDLN2 FLDPI
 | ||
| syn keyword nasmInstructionStandard FLDZ FMUL FMULP FNCLEX FNDISI
 | ||
| syn keyword nasmInstructionStandard FNENI FNINIT FNOP FNSAVE FNSTCW
 | ||
| syn keyword nasmInstructionStandard FNSTENV FNSTSW FPATAN FPREM FPREM1
 | ||
| syn keyword nasmInstructionStandard FPTAN FRNDINT FRSTOR FSAVE FSCALE
 | ||
| syn keyword nasmInstructionStandard FSETPM FSIN FSINCOS FSQRT FST
 | ||
| syn keyword nasmInstructionStandard FSTCW FSTENV FSTP FSTSW FSUB
 | ||
| syn keyword nasmInstructionStandard FSUBP FSUBR FSUBRP FTST FUCOM
 | ||
| syn keyword nasmInstructionStandard FUCOMI FUCOMIP FUCOMP FUCOMPP FXAM
 | ||
| syn keyword nasmInstructionStandard FXCH FXTRACT FYL2X FYL2XP1 HLT
 | ||
| syn keyword nasmInstructionStandard IBTS ICEBP IDIV IMUL IN
 | ||
| syn keyword nasmInstructionStandard INC INSB INSD INSW INT
 | ||
| syn keyword nasmInstructionStandard INTO
 | ||
| syn keyword nasmInstructionStandard INVD INVPCID INVLPG INVLPGA IRET
 | ||
| syn keyword nasmInstructionStandard IRETD IRETQ IRETW JCXZ JECXZ
 | ||
| syn keyword nasmInstructionStandard JRCXZ JMP JMPE LAHF LAR
 | ||
| syn keyword nasmInstructionStandard LDS LEA LEAVE LES LFENCE
 | ||
| syn keyword nasmInstructionStandard LFS LGDT LGS LIDT LLDT
 | ||
| syn keyword nasmInstructionStandard LMSW LOADALL LOADALL286 LODSB LODSD
 | ||
| syn keyword nasmInstructionStandard LODSQ LODSW LOOP LOOPE LOOPNE
 | ||
| syn keyword nasmInstructionStandard LOOPNZ LOOPZ LSL LSS LTR
 | ||
| syn keyword nasmInstructionStandard MFENCE MONITOR MONITORX MOV MOVD
 | ||
| syn keyword nasmInstructionStandard MOVQ MOVSB MOVSD MOVSQ MOVSW
 | ||
| syn keyword nasmInstructionStandard MOVSX MOVSXD MOVSX MOVZX MUL
 | ||
| syn keyword nasmInstructionStandard MWAIT MWAITX NEG NOP NOT
 | ||
| syn keyword nasmInstructionStandard OR OUT OUTSB OUTSD OUTSW
 | ||
| syn keyword nasmInstructionStandard PACKSSDW PACKSSWB PACKUSWB PADDB PADDD
 | ||
| syn keyword nasmInstructionStandard PADDSB PADDSW PADDUSB PADDUSW
 | ||
| syn keyword nasmInstructionStandard PADDW PAND PANDN PAUSE 
 | ||
| syn keyword nasmInstructionStandard PAVGUSB PCMPEQB PCMPEQD PCMPEQW PCMPGTB
 | ||
| syn keyword nasmInstructionStandard PCMPGTD PCMPGTW PF2ID PFACC
 | ||
| syn keyword nasmInstructionStandard PFADD PFCMPEQ PFCMPGE PFCMPGT PFMAX
 | ||
| syn keyword nasmInstructionStandard PFMIN PFMUL PFRCP PFRCPIT1 PFRCPIT2
 | ||
| syn keyword nasmInstructionStandard PFRSQIT1 PFRSQRT PFSUB PFSUBR PI2FD
 | ||
| syn keyword nasmInstructionStandard PMADDWD PMULHRWA
 | ||
| syn keyword nasmInstructionStandard PMULHW PMULLW 
 | ||
| syn keyword nasmInstructionStandard POP POPA POPAD
 | ||
| syn keyword nasmInstructionStandard POPAW POPF POPFD POPFQ POPFW
 | ||
| syn keyword nasmInstructionStandard POR PREFETCH PREFETCHW PSLLD PSLLQ
 | ||
| syn keyword nasmInstructionStandard PSLLW PSRAD PSRAW PSRLD PSRLQ
 | ||
| syn keyword nasmInstructionStandard PSRLW PSUBB PSUBD PSUBSB 
 | ||
| syn keyword nasmInstructionStandard PSUBSW PSUBUSB PSUBUSW PSUBW PUNPCKHBW
 | ||
| syn keyword nasmInstructionStandard PUNPCKHDQ PUNPCKHWD PUNPCKLBW PUNPCKLDQ PUNPCKLWD
 | ||
| syn keyword nasmInstructionStandard PUSH PUSHA PUSHAD PUSHAW PUSHF
 | ||
| syn keyword nasmInstructionStandard PUSHFD PUSHFQ PUSHFW PXOR RCL
 | ||
| syn keyword nasmInstructionStandard RCR 
 | ||
| syn keyword nasmInstructionStandard RDTSCP RET RETF RETN RETW
 | ||
| syn keyword nasmInstructionStandard RETFW RETNW RETD RETFD RETND
 | ||
| syn keyword nasmInstructionStandard RETQ RETFQ RETNQ ROL ROR
 | ||
| syn keyword nasmInstructionStandard RSM RSTS
 | ||
| syn keyword nasmInstructionStandard SAHF SAL SALC SAR SBB
 | ||
| syn keyword nasmInstructionStandard SCASB SCASD SCASQ SCASW SFENCE
 | ||
| syn keyword nasmInstructionStandard SGDT SHL SHLD SHR SHRD
 | ||
| syn keyword nasmInstructionStandard SIDT SLDT SKINIT SMI 
 | ||
| syn keyword nasmInstructionStandard SMSW STC STD STI
 | ||
| syn keyword nasmInstructionStandard STOSB STOSD STOSQ STOSW STR
 | ||
| syn keyword nasmInstructionStandard SUB SWAPGS
 | ||
| syn keyword nasmInstructionStandard SYSCALL SYSENTER SYSEXIT SYSRET TEST
 | ||
| syn keyword nasmInstructionStandard UD0 UD1 UD2B UD2 UD2A
 | ||
| syn keyword nasmInstructionStandard UMOV VERR VERW FWAIT WBINVD
 | ||
| syn keyword nasmInstructionStandard XADD XBTS XCHG
 | ||
| syn keyword nasmInstructionStandard XLATB XLAT XOR CMOVA CMOVAE
 | ||
| syn keyword nasmInstructionStandard CMOVB CMOVBE CMOVC CMOVE CMOVG
 | ||
| syn keyword nasmInstructionStandard CMOVGE CMOVL CMOVLE CMOVNA CMOVNAE
 | ||
| syn keyword nasmInstructionStandard CMOVNB CMOVNBE CMOVNC CMOVNE CMOVNG
 | ||
| syn keyword nasmInstructionStandard CMOVNGE CMOVNL CMOVNLE CMOVNO CMOVNP
 | ||
| syn keyword nasmInstructionStandard CMOVNS CMOVNZ CMOVO CMOVP CMOVPE
 | ||
| syn keyword nasmInstructionStandard CMOVPO CMOVS CMOVZ JA JAE
 | ||
| syn keyword nasmInstructionStandard JB JBE JC JCXZ JE
 | ||
| syn keyword nasmInstructionStandard JECXZ JG JGE JL JLE
 | ||
| syn keyword nasmInstructionStandard JNA JNAE JNB JNBE JNC
 | ||
| syn keyword nasmInstructionStandard JNE JNG JNGE JNL JNLE
 | ||
| syn keyword nasmInstructionStandard JNO JNP JNS JNZ JO
 | ||
| syn keyword nasmInstructionStandard JP JPE JPO JRCXZ JS
 | ||
| syn keyword nasmInstructionStandard JZ SETA SETAE SETB SETBE
 | ||
| syn keyword nasmInstructionStandard SETC SETE SETG SETGE SETL
 | ||
| syn keyword nasmInstructionStandard SETLE SETNA SETNAE SETNB SETNBE
 | ||
| syn keyword nasmInstructionStandard SETNC SETNE SETNG SETNGE SETNL
 | ||
| syn keyword nasmInstructionStandard SETNLE SETNO SETNP SETNS SETNZ
 | ||
| syn keyword nasmInstructionStandard SETO SETP SETPE SETPO SETS
 | ||
| syn keyword nasmInstructionStandard SETZ 
 | ||
| " SIMD
 | ||
| syn keyword nasmInstructionSIMD ADDPS ADDSS ANDNPS ANDPS CMPEQPS
 | ||
| syn keyword nasmInstructionSIMD CMPEQSS CMPLEPS CMPLESS CMPLTPS CMPLTSS
 | ||
| syn keyword nasmInstructionSIMD CMPNEQPS CMPNEQSS CMPNLEPS CMPNLESS CMPNLTPS
 | ||
| syn keyword nasmInstructionSIMD CMPNLTSS CMPORDPS CMPORDSS CMPUNORDPS CMPUNORDSS
 | ||
| syn keyword nasmInstructionSIMD CMPPS CMPSS COMISS CVTPI2PS CVTPS2PI
 | ||
| syn keyword nasmInstructionSIMD CVTSI2SS CVTSS2SI CVTTPS2PI CVTTSS2SI DIVPS
 | ||
| syn keyword nasmInstructionSIMD DIVSS LDMXCSR MAXPS MAXSS MINPS
 | ||
| syn keyword nasmInstructionSIMD MINSS MOVAPS MOVHPS MOVLHPS MOVLPS
 | ||
| syn keyword nasmInstructionSIMD MOVHLPS MOVMSKPS MOVNTPS MOVSS MOVUPS
 | ||
| syn keyword nasmInstructionSIMD MULPS MULSS ORPS RCPPS RCPSS
 | ||
| syn keyword nasmInstructionSIMD RSQRTPS RSQRTSS SHUFPS SQRTPS SQRTSS
 | ||
| syn keyword nasmInstructionSIMD STMXCSR SUBPS SUBSS UCOMISS UNPCKHPS
 | ||
| syn keyword nasmInstructionSIMD UNPCKLPS XORPS
 | ||
| " SSE
 | ||
| syn keyword nasmInstructionSSE FXRSTOR FXRSTOR64 FXSAVE FXSAVE64
 | ||
| " XSAVE
 | ||
| syn keyword nasmInstructionXSAVE XGETBV XSETBV XSAVE XSAVE64 XSAVEC
 | ||
| syn keyword nasmInstructionXSAVE XSAVEC64 XSAVEOPT XSAVEOPT64 XSAVES XSAVES64
 | ||
| syn keyword nasmInstructionXSAVE XRSTOR XRSTOR64 XRSTORS XRSTORS64
 | ||
| " MEM
 | ||
| syn keyword nasmInstructionMEM PREFETCHNTA PREFETCHT0 PREFETCHT1 PREFETCHT2 PREFETCHIT0
 | ||
| syn keyword nasmInstructionMEM PREFETCHIT1 SFENCE
 | ||
| " MMX
 | ||
| syn keyword nasmInstructionMMX MASKMOVQ MOVNTQ PAVGB PAVGW PEXTRW
 | ||
| syn keyword nasmInstructionMMX PINSRW PMAXSW PMAXUB PMINSW PMINUB
 | ||
| syn keyword nasmInstructionMMX PMOVMSKB PMULHUW PSADBW PSHUFW
 | ||
| " 3DNOW
 | ||
| syn keyword nasmInstruction3DNOW PF2IW PFNACC PFPNACC PI2FW PSWAPD
 | ||
| " SSE2
 | ||
| syn keyword nasmInstructionSSE2 MASKMOVDQU CLFLUSH MOVNTDQ MOVNTI MOVNTPD
 | ||
| syn keyword nasmInstructionSSE2 LFENCE MFENCE
 | ||
| " WMMX
 | ||
| syn keyword nasmInstructionWMMX MOVD MOVDQA MOVDQU MOVDQ2Q MOVQ
 | ||
| syn keyword nasmInstructionWMMX MOVQ2DQ PACKSSWB PACKSSDW PACKUSWB PADDB
 | ||
| syn keyword nasmInstructionWMMX PADDW PADDD PADDQ PADDSB PADDSW
 | ||
| syn keyword nasmInstructionWMMX PADDUSB PADDUSW PAND PANDN PAVGB
 | ||
| syn keyword nasmInstructionWMMX PAVGW PCMPEQB PCMPEQW PCMPEQD PCMPGTB
 | ||
| syn keyword nasmInstructionWMMX PCMPGTW PCMPGTD PEXTRW PINSRW PMADDWD
 | ||
| syn keyword nasmInstructionWMMX PMAXSW PMAXUB PMINSW PMINUB PMOVMSKB
 | ||
| syn keyword nasmInstructionWMMX PMULHUW PMULHW PMULLW PMULUDQ POR
 | ||
| syn keyword nasmInstructionWMMX PSADBW PSHUFD PSHUFHW PSHUFLW PSLLDQ
 | ||
| syn keyword nasmInstructionWMMX PSLLW PSLLD PSLLQ PSRAW PSRAD
 | ||
| syn keyword nasmInstructionWMMX PSRLDQ PSRLW PSRLD PSRLQ PSUBB
 | ||
| syn keyword nasmInstructionWMMX PSUBW PSUBD PSUBQ PSUBSB PSUBSW
 | ||
| syn keyword nasmInstructionWMMX PSUBUSB PSUBUSW PUNPCKHBW PUNPCKHWD PUNPCKHDQ
 | ||
| syn keyword nasmInstructionWMMX PUNPCKHQDQ PUNPCKLBW PUNPCKLWD PUNPCKLDQ PUNPCKLQDQ
 | ||
| syn keyword nasmInstructionWMMX PXOR
 | ||
| " WSSD
 | ||
| syn keyword nasmInstructionWSSD ADDPD ADDSD ANDNPD ANDPD CMPEQPD
 | ||
| syn keyword nasmInstructionWSSD CMPEQSD CMPLEPD CMPLESD CMPLTPD CMPLTSD
 | ||
| syn keyword nasmInstructionWSSD CMPNEQPD CMPNEQSD CMPNLEPD CMPNLESD CMPNLTPD
 | ||
| syn keyword nasmInstructionWSSD CMPNLTSD CMPORDPD CMPORDSD CMPUNORDPD CMPUNORDSD
 | ||
| syn keyword nasmInstructionWSSD CMPPD CMPSD COMISD CVTDQ2PD CVTDQ2PS
 | ||
| syn keyword nasmInstructionWSSD CVTPD2DQ CVTPD2PI CVTPD2PS CVTPI2PD CVTPS2DQ
 | ||
| syn keyword nasmInstructionWSSD CVTPS2PD CVTSD2SI CVTSD2SS CVTSI2SD CVTSS2SD
 | ||
| syn keyword nasmInstructionWSSD CVTTPD2PI CVTTPD2DQ CVTTPS2DQ CVTTSD2SI DIVPD
 | ||
| syn keyword nasmInstructionWSSD DIVSD MAXPD MAXSD MINPD MINSD
 | ||
| syn keyword nasmInstructionWSSD MOVAPD MOVHPD MOVLPD MOVMSKPD MOVSD
 | ||
| syn keyword nasmInstructionWSSD MOVUPD MULPD MULSD ORPD SHUFPD
 | ||
| syn keyword nasmInstructionWSSD SQRTPD SQRTSD SUBPD SUBSD UCOMISD
 | ||
| syn keyword nasmInstructionWSSD UNPCKHPD UNPCKLPD XORPD
 | ||
| " PRESSCOT
 | ||
| syn keyword nasmInstructionPRESSCOT ADDSUBPD ADDSUBPS HADDPD HADDPS HSUBPD
 | ||
| syn keyword nasmInstructionPRESSCOT HSUBPS LDDQU MOVDDUP MOVSHDUP MOVSLDUP
 | ||
| " VMXSVM
 | ||
| syn keyword nasmInstructionVMXSVM CLGI STGI VMCALL VMCLEAR VMFUNC
 | ||
| syn keyword nasmInstructionVMXSVM VMLAUNCH VMLOAD VMMCALL VMPTRLD VMPTRST
 | ||
| syn keyword nasmInstructionVMXSVM VMREAD VMRESUME VMRUN VMSAVE VMWRITE
 | ||
| syn keyword nasmInstructionVMXSVM VMXOFF VMXON
 | ||
| " PTVMX
 | ||
| syn keyword nasmInstructionPTVMX INVEPT INVVPID
 | ||
| " SEVSNPAMD
 | ||
| syn keyword nasmInstructionSEVSNPAMD PVALIDATE RMPADJUST VMGEXIT
 | ||
| " TEJAS
 | ||
| syn keyword nasmInstructionTEJAS PABSB PABSW PABSD PALIGNR PHADDW
 | ||
| syn keyword nasmInstructionTEJAS PHADDD PHADDSW PHSUBW PHSUBD PHSUBSW
 | ||
| syn keyword nasmInstructionTEJAS PMADDUBSW PMULHRSW PSHUFB PSIGNB PSIGNW
 | ||
| syn keyword nasmInstructionTEJAS PSIGND
 | ||
| " AMD_SSE4A
 | ||
| syn keyword nasmInstructionAMD_SSE4A EXTRQ INSERTQ MOVNTSD MOVNTSS
 | ||
| " BARCELONA
 | ||
| syn keyword nasmInstructionBARCELONA LZCNT 
 | ||
| " PENRY
 | ||
| syn keyword nasmInstructionPENRY BLENDPD BLENDPS BLENDVPD BLENDVPS DPPD
 | ||
| syn keyword nasmInstructionPENRY DPPS EXTRACTPS INSERTPS MOVNTDQA MPSADBW
 | ||
| syn keyword nasmInstructionPENRY PACKUSDW PBLENDVB PBLENDW PCMPEQQ PEXTRB
 | ||
| syn keyword nasmInstructionPENRY PEXTRD PEXTRQ PEXTRW PHMINPOSUW PINSRB
 | ||
| syn keyword nasmInstructionPENRY PINSRD PINSRQ PMAXSB PMAXSD PMAXUD
 | ||
| syn keyword nasmInstructionPENRY PMAXUW PMINSB PMINSD PMINUD PMINUW
 | ||
| syn keyword nasmInstructionPENRY PMOVSXBW PMOVSXBD PMOVSXBQ PMOVSXWD PMOVSXWQ
 | ||
| syn keyword nasmInstructionPENRY PMOVSXDQ PMOVZXBW PMOVZXBD PMOVZXBQ PMOVZXWD
 | ||
| syn keyword nasmInstructionPENRY PMOVZXWQ PMOVZXDQ PMULDQ PMULLD PTEST
 | ||
| syn keyword nasmInstructionPENRY ROUNDPD ROUNDPS ROUNDSD ROUNDSS
 | ||
| " NEHALEM
 | ||
| syn keyword nasmInstructionNEHALEM CRC32 PCMPESTRI PCMPESTRM PCMPISTRI PCMPISTRM
 | ||
| syn keyword nasmInstructionNEHALEM PCMPGTQ POPCNT
 | ||
| " SMX
 | ||
| syn keyword nasmInstructionSMX GETSEC 
 | ||
| " GEODE_3DNOW
 | ||
| syn keyword nasmInstructionGEODE_3DNOW PFRCPV PFRSQRTV
 | ||
| " INTEL_NEW
 | ||
| syn keyword nasmInstructionINTEL_NEW MOVBE 
 | ||
| " AES
 | ||
| syn keyword nasmInstructionAES AESENC AESENCLAST AESDEC AESDECLAST AESIMC
 | ||
| syn keyword nasmInstructionAES AESKEYGENASSIST
 | ||
| " AVX_AES
 | ||
| syn keyword nasmInstructionAVX_AES VAESENC VAESENCLAST VAESDEC VAESDECLAST VAESIMC
 | ||
| syn keyword nasmInstructionAVX_AES VAESKEYGENASSIST
 | ||
| " INTEL_PUB
 | ||
| syn keyword nasmInstructionINTEL_PUB VAESENC VAESENCLAST VAESDEC VAESDECLAST VAESENC
 | ||
| syn keyword nasmInstructionINTEL_PUB VAESENCLAST VAESDEC VAESDECLAST VAESENC VAESENCLAST
 | ||
| syn keyword nasmInstructionINTEL_PUB VAESDEC VAESDECLAST
 | ||
| " AVX
 | ||
| syn keyword nasmInstructionAVX VADDPD VADDPS VADDSD VADDSS VADDSUBPD
 | ||
| syn keyword nasmInstructionAVX VADDSUBPS VANDPD VANDPS VANDNPD VANDNPS
 | ||
| syn keyword nasmInstructionAVX VBLENDPD VBLENDPS VBLENDVPD VBLENDVPS VBROADCASTSS
 | ||
| syn keyword nasmInstructionAVX VBROADCASTSD VBROADCASTF128 VCMPEQ_OSPD VCMPEQPD VCMPLT_OSPD
 | ||
| syn keyword nasmInstructionAVX VCMPLTPD VCMPLE_OSPD VCMPLEPD VCMPUNORD_QPD VCMPUNORDPD
 | ||
| syn keyword nasmInstructionAVX VCMPNEQ_UQPD VCMPNEQPD VCMPNLT_USPD VCMPNLTPD VCMPNLE_USPD
 | ||
| syn keyword nasmInstructionAVX VCMPNLEPD VCMPORD_QPD VCMPORDPD VCMPEQ_UQPD VCMPNGE_USPD
 | ||
| syn keyword nasmInstructionAVX VCMPNGEPD VCMPNGT_USPD VCMPNGTPD VCMPFALSE_OQPD VCMPFALSEPD
 | ||
| syn keyword nasmInstructionAVX VCMPNEQ_OQPD VCMPGE_OSPD VCMPGEPD VCMPGT_OSPD VCMPGTPD
 | ||
| syn keyword nasmInstructionAVX VCMPTRUE_UQPD VCMPTRUEPD VCMPEQ_OSPD VCMPLT_OQPD VCMPLE_OQPD
 | ||
| syn keyword nasmInstructionAVX VCMPUNORD_SPD VCMPNEQ_USPD VCMPNLT_UQPD VCMPNLE_UQPD VCMPORD_SPD
 | ||
| syn keyword nasmInstructionAVX VCMPEQ_USPD VCMPNGE_UQPD VCMPNGT_UQPD VCMPFALSE_OSPD VCMPNEQ_OSPD
 | ||
| syn keyword nasmInstructionAVX VCMPGE_OQPD VCMPGT_OQPD VCMPTRUE_USPD VCMPPD VCMPEQ_OSPS
 | ||
| syn keyword nasmInstructionAVX VCMPEQPS VCMPLT_OSPS VCMPLTPS VCMPLE_OSPS VCMPLEPS
 | ||
| syn keyword nasmInstructionAVX VCMPUNORD_QPS VCMPUNORDPS VCMPNEQ_UQPS VCMPNEQPS VCMPNLT_USPS
 | ||
| syn keyword nasmInstructionAVX VCMPNLTPS VCMPNLE_USPS VCMPNLEPS VCMPORD_QPS VCMPORDPS
 | ||
| syn keyword nasmInstructionAVX VCMPEQ_UQPS VCMPNGE_USPS VCMPNGEPS VCMPNGT_USPS VCMPNGTPS
 | ||
| syn keyword nasmInstructionAVX VCMPFALSE_OQPS VCMPFALSEPS VCMPNEQ_OQPS VCMPGE_OSPS VCMPGEPS
 | ||
| syn keyword nasmInstructionAVX VCMPGT_OSPS VCMPGTPS VCMPTRUE_UQPS VCMPTRUEPS VCMPEQ_OSPS
 | ||
| syn keyword nasmInstructionAVX VCMPLT_OQPS VCMPLE_OQPS VCMPUNORD_SPS VCMPNEQ_USPS VCMPNLT_UQPS
 | ||
| syn keyword nasmInstructionAVX VCMPNLE_UQPS VCMPORD_SPS VCMPEQ_USPS VCMPNGE_UQPS VCMPNGT_UQPS
 | ||
| syn keyword nasmInstructionAVX VCMPFALSE_OSPS VCMPNEQ_OSPS VCMPGE_OQPS VCMPGT_OQPS VCMPTRUE_USPS
 | ||
| syn keyword nasmInstructionAVX VCMPPS VCMPEQ_OSSD VCMPEQSD VCMPLT_OSSD VCMPLTSD
 | ||
| syn keyword nasmInstructionAVX VCMPLE_OSSD VCMPLESD VCMPUNORD_QSD VCMPUNORDSD VCMPNEQ_UQSD
 | ||
| syn keyword nasmInstructionAVX VCMPNEQSD VCMPNLT_USSD VCMPNLTSD VCMPNLE_USSD VCMPNLESD
 | ||
| syn keyword nasmInstructionAVX VCMPORD_QSD VCMPORDSD VCMPEQ_UQSD VCMPNGE_USSD VCMPNGESD
 | ||
| syn keyword nasmInstructionAVX VCMPNGT_USSD VCMPNGTSD VCMPFALSE_OQSD VCMPFALSESD VCMPNEQ_OQSD
 | ||
| syn keyword nasmInstructionAVX VCMPGE_OSSD VCMPGESD VCMPGT_OSSD VCMPGTSD VCMPTRUE_UQSD
 | ||
| syn keyword nasmInstructionAVX VCMPTRUESD VCMPEQ_OSSD VCMPLT_OQSD VCMPLE_OQSD VCMPUNORD_SSD
 | ||
| syn keyword nasmInstructionAVX VCMPNEQ_USSD VCMPNLT_UQSD VCMPNLE_UQSD VCMPORD_SSD VCMPEQ_USSD
 | ||
| syn keyword nasmInstructionAVX VCMPNGE_UQSD VCMPNGT_UQSD VCMPFALSE_OSSD VCMPNEQ_OSSD VCMPGE_OQSD
 | ||
| syn keyword nasmInstructionAVX VCMPGT_OQSD VCMPTRUE_USSD VCMPSD VCMPEQ_OSSS VCMPEQSS
 | ||
| syn keyword nasmInstructionAVX VCMPLT_OSSS VCMPLTSS VCMPLE_OSSS VCMPLESS VCMPUNORD_QSS
 | ||
| syn keyword nasmInstructionAVX VCMPUNORDSS VCMPNEQ_UQSS VCMPNEQSS VCMPNLT_USSS VCMPNLTSS
 | ||
| syn keyword nasmInstructionAVX VCMPNLE_USSS VCMPNLESS VCMPORD_QSS VCMPORDSS VCMPEQ_UQSS
 | ||
| syn keyword nasmInstructionAVX VCMPNGE_USSS VCMPNGESS VCMPNGT_USSS VCMPNGTSS VCMPFALSE_OQSS
 | ||
| syn keyword nasmInstructionAVX VCMPFALSESS VCMPNEQ_OQSS VCMPGE_OSSS VCMPGESS VCMPGT_OSSS
 | ||
| syn keyword nasmInstructionAVX VCMPGTSS VCMPTRUE_UQSS VCMPTRUESS VCMPEQ_OSSS VCMPLT_OQSS
 | ||
| syn keyword nasmInstructionAVX VCMPLE_OQSS VCMPUNORD_SSS VCMPNEQ_USSS VCMPNLT_UQSS VCMPNLE_UQSS
 | ||
| syn keyword nasmInstructionAVX VCMPORD_SSS VCMPEQ_USSS VCMPNGE_UQSS VCMPNGT_UQSS VCMPFALSE_OSSS
 | ||
| syn keyword nasmInstructionAVX VCMPNEQ_OSSS VCMPGE_OQSS VCMPGT_OQSS VCMPTRUE_USSS VCMPSS
 | ||
| syn keyword nasmInstructionAVX VCOMISD VCOMISS VCVTDQ2PD VCVTDQ2PS VCVTPD2DQ
 | ||
| syn keyword nasmInstructionAVX VCVTPD2PS VCVTPS2DQ VCVTPS2PD VCVTSD2SI VCVTSD2SS
 | ||
| syn keyword nasmInstructionAVX VCVTSI2SD VCVTSI2SS VCVTSS2SD VCVTSS2SI VCVTTPD2DQ
 | ||
| syn keyword nasmInstructionAVX VCVTTPS2DQ VCVTTSD2SI VCVTTSS2SI VDIVPD VDIVPS
 | ||
| syn keyword nasmInstructionAVX VDIVSD VDIVSS VDPPD VDPPS VEXTRACTF128
 | ||
| syn keyword nasmInstructionAVX VEXTRACTPS VHADDPD VHADDPS VHSUBPD VHSUBPS
 | ||
| syn keyword nasmInstructionAVX VINSERTF128 VINSERTPS VLDDQU VLDQQU VLDDQU
 | ||
| syn keyword nasmInstructionAVX VLDMXCSR VMASKMOVDQU VMASKMOVPS VMASKMOVPD VMAXPD
 | ||
| syn keyword nasmInstructionAVX VMAXPS VMAXSD VMAXSS VMINPD VMINPS
 | ||
| syn keyword nasmInstructionAVX VMINSD VMINSS VMOVAPD VMOVAPS VMOVD
 | ||
| syn keyword nasmInstructionAVX VMOVQ VMOVDDUP VMOVDQA VMOVQQA VMOVDQA
 | ||
| syn keyword nasmInstructionAVX VMOVDQU VMOVQQU VMOVDQU VMOVHLPS VMOVHPD
 | ||
| syn keyword nasmInstructionAVX VMOVHPS VMOVLHPS VMOVLPD VMOVLPS VMOVMSKPD
 | ||
| syn keyword nasmInstructionAVX VMOVMSKPS VMOVNTDQ VMOVNTQQ VMOVNTDQ VMOVNTDQA
 | ||
| syn keyword nasmInstructionAVX VMOVNTPD VMOVNTPS VMOVSD VMOVSHDUP VMOVSLDUP
 | ||
| syn keyword nasmInstructionAVX VMOVSS VMOVUPD VMOVUPS VMPSADBW VMULPD
 | ||
| syn keyword nasmInstructionAVX VMULPS VMULSD VMULSS VORPD VORPS
 | ||
| syn keyword nasmInstructionAVX VPABSB VPABSW VPABSD VPACKSSWB VPACKSSDW
 | ||
| syn keyword nasmInstructionAVX VPACKUSWB VPACKUSDW VPADDB VPADDW VPADDD
 | ||
| syn keyword nasmInstructionAVX VPADDQ VPADDSB VPADDSW VPADDUSB VPADDUSW
 | ||
| syn keyword nasmInstructionAVX VPALIGNR VPAND VPANDN VPAVGB VPAVGW
 | ||
| syn keyword nasmInstructionAVX VPBLENDVB VPBLENDW VPCMPESTRI VPCMPESTRM VPCMPISTRI
 | ||
| syn keyword nasmInstructionAVX VPCMPISTRM VPCMPEQB VPCMPEQW VPCMPEQD VPCMPEQQ
 | ||
| syn keyword nasmInstructionAVX VPCMPGTB VPCMPGTW VPCMPGTD VPCMPGTQ VPERMILPD
 | ||
| syn keyword nasmInstructionAVX VPERMILPS VPERM2F128 VPEXTRB VPEXTRW VPEXTRD
 | ||
| syn keyword nasmInstructionAVX VPEXTRQ VPHADDW VPHADDD VPHADDSW VPHMINPOSUW
 | ||
| syn keyword nasmInstructionAVX VPHSUBW VPHSUBD VPHSUBSW VPINSRB VPINSRW
 | ||
| syn keyword nasmInstructionAVX VPINSRD VPINSRQ VPMADDWD VPMADDUBSW VPMAXSB
 | ||
| syn keyword nasmInstructionAVX VPMAXSW VPMAXSD VPMAXUB VPMAXUW VPMAXUD
 | ||
| syn keyword nasmInstructionAVX VPMINSB VPMINSW VPMINSD VPMINUB VPMINUW
 | ||
| syn keyword nasmInstructionAVX VPMINUD VPMOVMSKB VPMOVSXBW VPMOVSXBD VPMOVSXBQ
 | ||
| syn keyword nasmInstructionAVX VPMOVSXWD VPMOVSXWQ VPMOVSXDQ VPMOVZXBW VPMOVZXBD
 | ||
| syn keyword nasmInstructionAVX VPMOVZXBQ VPMOVZXWD VPMOVZXWQ VPMOVZXDQ VPMULHUW
 | ||
| syn keyword nasmInstructionAVX VPMULHRSW VPMULHW VPMULLW VPMULLD VPMULUDQ
 | ||
| syn keyword nasmInstructionAVX VPMULDQ VPOR VPSADBW VPSHUFB VPSHUFD
 | ||
| syn keyword nasmInstructionAVX VPSHUFHW VPSHUFLW VPSIGNB VPSIGNW VPSIGND
 | ||
| syn keyword nasmInstructionAVX VPSLLDQ VPSRLDQ VPSLLW VPSLLD VPSLLQ
 | ||
| syn keyword nasmInstructionAVX VPSRAW VPSRAD VPSRLW VPSRLD VPSRLQ
 | ||
| syn keyword nasmInstructionAVX VPTEST VPSUBB VPSUBW VPSUBD VPSUBQ
 | ||
| syn keyword nasmInstructionAVX VPSUBSB VPSUBSW VPSUBUSB VPSUBUSW VPUNPCKHBW
 | ||
| syn keyword nasmInstructionAVX VPUNPCKHWD VPUNPCKHDQ VPUNPCKHQDQ VPUNPCKLBW VPUNPCKLWD
 | ||
| syn keyword nasmInstructionAVX VPUNPCKLDQ VPUNPCKLQDQ VPXOR VRCPPS VRCPSS
 | ||
| syn keyword nasmInstructionAVX VRSQRTPS VRSQRTSS VROUNDPD VROUNDPS VROUNDSD
 | ||
| syn keyword nasmInstructionAVX VROUNDSS VSHUFPD VSHUFPS VSQRTPD VSQRTPS
 | ||
| syn keyword nasmInstructionAVX VSQRTSD VSQRTSS VSTMXCSR VSUBPD VSUBPS
 | ||
| syn keyword nasmInstructionAVX VSUBSD VSUBSS VTESTPS VTESTPD VUCOMISD
 | ||
| syn keyword nasmInstructionAVX VUCOMISS VUNPCKHPD VUNPCKHPS VUNPCKLPD VUNPCKLPS
 | ||
| syn keyword nasmInstructionAVX VXORPD VXORPS VZEROALL VZEROUPPER
 | ||
| " INTEL_CMUL
 | ||
| syn keyword nasmInstructionINTEL_CMUL PCLMULLQLQDQ PCLMULHQLQDQ PCLMULLQHQDQ PCLMULHQHQDQ PCLMULQDQ
 | ||
| " INTEL_AVX_CMUL
 | ||
| syn keyword nasmInstructionINTEL_AVX_CMUL VPCLMULLQLQDQ VPCLMULHQLQDQ VPCLMULLQHQDQ VPCLMULHQHQDQ VPCLMULQDQ
 | ||
| syn keyword nasmInstructionINTEL_AVX_CMUL VPCLMULLQLQDQ VPCLMULHQLQDQ VPCLMULLQHQDQ VPCLMULHQHQDQ VPCLMULQDQ
 | ||
| syn keyword nasmInstructionINTEL_AVX_CMUL VPCLMULLQLQDQ VPCLMULHQLQDQ VPCLMULLQHQDQ VPCLMULHQHQDQ VPCLMULQDQ
 | ||
| syn keyword nasmInstructionINTEL_AVX_CMUL VPCLMULLQLQDQ VPCLMULHQLQDQ VPCLMULLQHQDQ VPCLMULHQHQDQ VPCLMULQDQ
 | ||
| syn keyword nasmInstructionINTEL_AVX_CMUL VPCLMULLQLQDQ VPCLMULHQLQDQ VPCLMULLQHQDQ VPCLMULHQHQDQ VPCLMULQDQ
 | ||
| " INTEL_FMA
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADD132PS VFMADD132PD VFMADD312PS VFMADD312PD VFMADD213PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADD213PD VFMADD123PS VFMADD123PD VFMADD231PS VFMADD231PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADD321PS VFMADD321PD VFMADDSUB132PS VFMADDSUB132PD VFMADDSUB312PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADDSUB312PD VFMADDSUB213PS VFMADDSUB213PD VFMADDSUB123PS VFMADDSUB123PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADDSUB231PS VFMADDSUB231PD VFMADDSUB321PS VFMADDSUB321PD VFMSUB132PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUB132PD VFMSUB312PS VFMSUB312PD VFMSUB213PS VFMSUB213PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUB123PS VFMSUB123PD VFMSUB231PS VFMSUB231PD VFMSUB321PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUB321PD VFMSUBADD132PS VFMSUBADD132PD VFMSUBADD312PS VFMSUBADD312PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUBADD213PS VFMSUBADD213PD VFMSUBADD123PS VFMSUBADD123PD VFMSUBADD231PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUBADD231PD VFMSUBADD321PS VFMSUBADD321PD VFNMADD132PS VFNMADD132PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMADD312PS VFNMADD312PD VFNMADD213PS VFNMADD213PD VFNMADD123PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMADD123PD VFNMADD231PS VFNMADD231PD VFNMADD321PS VFNMADD321PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMSUB132PS VFNMSUB132PD VFNMSUB312PS VFNMSUB312PD VFNMSUB213PS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMSUB213PD VFNMSUB123PS VFNMSUB123PD VFNMSUB231PS VFNMSUB231PD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMSUB321PS VFNMSUB321PD VFMADD132SS VFMADD132SD VFMADD312SS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADD312SD VFMADD213SS VFMADD213SD VFMADD123SS VFMADD123SD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMADD231SS VFMADD231SD VFMADD321SS VFMADD321SD VFMSUB132SS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUB132SD VFMSUB312SS VFMSUB312SD VFMSUB213SS VFMSUB213SD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUB123SS VFMSUB123SD VFMSUB231SS VFMSUB231SD VFMSUB321SS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFMSUB321SD VFNMADD132SS VFNMADD132SD VFNMADD312SS VFNMADD312SD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMADD213SS VFNMADD213SD VFNMADD123SS VFNMADD123SD VFNMADD231SS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMADD231SD VFNMADD321SS VFNMADD321SD VFNMSUB132SS VFNMSUB132SD
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMSUB312SS VFNMSUB312SD VFNMSUB213SS VFNMSUB213SD VFNMSUB123SS
 | ||
| syn keyword nasmInstructionINTEL_FMA VFNMSUB123SD VFNMSUB231SS VFNMSUB231SD VFNMSUB321SS VFNMSUB321SD
 | ||
| " INTEL_POST32
 | ||
| syn keyword nasmInstructionINTEL_POST32 RDFSBASE RDGSBASE RDRAND WRFSBASE WRGSBASE
 | ||
| syn keyword nasmInstructionINTEL_POST32 VCVTPH2PS VCVTPS2PH ADCX ADOX RDSEED
 | ||
| " SUPERVISOR
 | ||
| syn keyword nasmInstructionSUPERVISOR CLAC STAC
 | ||
| " VIA_SECURITY
 | ||
| syn keyword nasmInstructionVIA_SECURITY XSTORE XCRYPTECB XCRYPTCBC XCRYPTCTR XCRYPTCFB
 | ||
| syn keyword nasmInstructionVIA_SECURITY XCRYPTOFB MONTMUL XSHA1 XSHA256
 | ||
| " AMD_PROFILING
 | ||
| syn keyword nasmInstructionAMD_PROFILING LLWPCB SLWPCB LWPVAL LWPINS
 | ||
| " XOP_FMA4
 | ||
| syn keyword nasmInstructionXOP_FMA4 VFMADDPD VFMADDPS VFMADDSD VFMADDSS VFMADDSUBPD
 | ||
| syn keyword nasmInstructionXOP_FMA4 VFMADDSUBPS VFMSUBADDPD VFMSUBADDPS VFMSUBPD VFMSUBPS
 | ||
| syn keyword nasmInstructionXOP_FMA4 VFMSUBSD VFMSUBSS VFNMADDPD VFNMADDPS VFNMADDSD
 | ||
| syn keyword nasmInstructionXOP_FMA4 VFNMADDSS VFNMSUBPD VFNMSUBPS VFNMSUBSD VFNMSUBSS
 | ||
| syn keyword nasmInstructionXOP_FMA4 VFRCZPD VFRCZPS VFRCZSD VFRCZSS VPCMOV
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPCOMB VPCOMD VPCOMQ VPCOMUB VPCOMUD
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPCOMUQ VPCOMUW VPCOMW VPHADDBD VPHADDBQ
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPHADDBW VPHADDDQ VPHADDUBD VPHADDUBQ VPHADDUBW
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPHADDUDQ VPHADDUWD VPHADDUWQ VPHADDWD VPHADDWQ
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPHSUBBW VPHSUBDQ VPHSUBWD VPMACSDD VPMACSDQH
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPMACSDQL VPMACSSDD VPMACSSDQH VPMACSSDQL VPMACSSWD
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPMACSSWW VPMACSWD VPMACSWW VPMADCSSWD VPMADCSWD
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPPERM VPROTB VPROTD VPROTQ VPROTW
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPSHAB VPSHAD VPSHAQ VPSHAW VPSHLB
 | ||
| syn keyword nasmInstructionXOP_FMA4 VPSHLD VPSHLQ VPSHLW
 | ||
| " AVX2
 | ||
| syn keyword nasmInstructionAVX2 VMPSADBW VPABSB VPABSW VPABSD VPACKSSWB
 | ||
| syn keyword nasmInstructionAVX2 VPACKSSDW VPACKUSDW VPACKUSWB VPADDB VPADDW
 | ||
| syn keyword nasmInstructionAVX2 VPADDD VPADDQ VPADDSB VPADDSW VPADDUSB
 | ||
| syn keyword nasmInstructionAVX2 VPADDUSW VPALIGNR VPAND VPANDN VPAVGB
 | ||
| syn keyword nasmInstructionAVX2 VPAVGW VPBLENDVB VPBLENDW VPCMPEQB VPCMPEQW
 | ||
| syn keyword nasmInstructionAVX2 VPCMPEQD VPCMPEQQ VPCMPGTB VPCMPGTW VPCMPGTD
 | ||
| syn keyword nasmInstructionAVX2 VPCMPGTQ VPHADDW VPHADDD VPHADDSW VPHSUBW
 | ||
| syn keyword nasmInstructionAVX2 VPHSUBD VPHSUBSW VPMADDUBSW VPMADDWD VPMAXSB
 | ||
| syn keyword nasmInstructionAVX2 VPMAXSW VPMAXSD VPMAXUB VPMAXUW VPMAXUD
 | ||
| syn keyword nasmInstructionAVX2 VPMINSB VPMINSW VPMINSD VPMINUB VPMINUW
 | ||
| syn keyword nasmInstructionAVX2 VPMINUD VPMOVMSKB VPMOVSXBW VPMOVSXBD VPMOVSXBQ
 | ||
| syn keyword nasmInstructionAVX2 VPMOVSXWD VPMOVSXWQ VPMOVSXDQ VPMOVZXBW VPMOVZXBD
 | ||
| syn keyword nasmInstructionAVX2 VPMOVZXBQ VPMOVZXWD VPMOVZXWQ VPMOVZXDQ VPMULDQ
 | ||
| syn keyword nasmInstructionAVX2 VPMULHRSW VPMULHUW VPMULHW VPMULLW VPMULLD
 | ||
| syn keyword nasmInstructionAVX2 VPMULUDQ VPOR VPSADBW VPSHUFB VPSHUFD
 | ||
| syn keyword nasmInstructionAVX2 VPSHUFHW VPSHUFLW VPSIGNB VPSIGNW VPSIGND
 | ||
| syn keyword nasmInstructionAVX2 VPSLLDQ VPSLLW VPSLLD VPSLLQ VPSRAW
 | ||
| syn keyword nasmInstructionAVX2 VPSRAD VPSRLDQ VPSRLW VPSRLD VPSRLQ
 | ||
| syn keyword nasmInstructionAVX2 VPSUBB VPSUBW VPSUBD VPSUBQ VPSUBSB
 | ||
| syn keyword nasmInstructionAVX2 VPSUBSW VPSUBUSB VPSUBUSW VPUNPCKHBW VPUNPCKHWD
 | ||
| syn keyword nasmInstructionAVX2 VPUNPCKHDQ VPUNPCKHQDQ VPUNPCKLBW VPUNPCKLWD VPUNPCKLDQ
 | ||
| syn keyword nasmInstructionAVX2 VPUNPCKLQDQ VPXOR VMOVNTDQA VBROADCASTSS VBROADCASTSD
 | ||
| syn keyword nasmInstructionAVX2 VBROADCASTI128 VPBLENDD VPBROADCASTB VPBROADCASTW VPBROADCASTD
 | ||
| syn keyword nasmInstructionAVX2 VPBROADCASTQ VPERMD VPERMPD VPERMPS VPERMQ
 | ||
| syn keyword nasmInstructionAVX2 VPERM2I128 VEXTRACTI128 VINSERTI128 VPMASKMOVD VPMASKMOVQ
 | ||
| syn keyword nasmInstructionAVX2 VPMASKMOVD VPMASKMOVQ VPSLLVD VPSLLVQ VPSLLVD
 | ||
| syn keyword nasmInstructionAVX2 VPSLLVQ VPSRAVD VPSRLVD VPSRLVQ VPSRLVD
 | ||
| syn keyword nasmInstructionAVX2 VPSRLVQ VGATHERDPD VGATHERQPD VGATHERDPD VGATHERQPD
 | ||
| syn keyword nasmInstructionAVX2 VGATHERDPS VGATHERQPS VGATHERDPS VGATHERQPS VPGATHERDD
 | ||
| syn keyword nasmInstructionAVX2 VPGATHERQD VPGATHERDD VPGATHERQD VPGATHERDQ VPGATHERQQ
 | ||
| syn keyword nasmInstructionAVX2 VPGATHERDQ VPGATHERQQ
 | ||
| " TRANSACTIONS
 | ||
| syn keyword nasmInstructionTRANSACTIONS XABORT XBEGIN XEND XTEST
 | ||
| " BMI_ABM
 | ||
| syn keyword nasmInstructionBMI_ABM ANDN BEXTR BLCI BLCIC BLSI
 | ||
| syn keyword nasmInstructionBMI_ABM BLSIC BLCFILL BLSFILL BLCMSK BLSMSK
 | ||
| syn keyword nasmInstructionBMI_ABM BLSR BLCS BZHI MULX PDEP
 | ||
| syn keyword nasmInstructionBMI_ABM PEXT RORX SARX SHLX SHRX
 | ||
| syn keyword nasmInstructionBMI_ABM TZCNT TZMSK T1MSKC PREFETCHWT1
 | ||
| " MPE
 | ||
| syn keyword nasmInstructionMPE BNDMK BNDCL BNDCU BNDCN BNDMOV
 | ||
| syn keyword nasmInstructionMPE BNDLDX BNDSTX
 | ||
| " SHA
 | ||
| syn keyword nasmInstructionSHA SHA1MSG1 SHA1MSG2 SHA1NEXTE SHA1RNDS4 SHA256MSG1
 | ||
| syn keyword nasmInstructionSHA SHA256MSG2 SHA256RNDS2 VSHA512MSG1 VSHA512MSG2 VSHA512RNDS2
 | ||
| " SM3
 | ||
| syn keyword nasmInstructionSM3 VSM3MSG1 VSM3MSG2 VSM3RNDS2
 | ||
| " SM4
 | ||
| syn keyword nasmInstructionSM4 VSM4KEY4 VSM4RNDS4
 | ||
| " AVX_NOEXCEPT
 | ||
| syn keyword nasmInstructionAVX_NOEXCEPT VBCSTNEBF16PS VBCSTNESH2PS VCVTNEEBF162PS VCVTNEEPH2PS VCVTNEOBF162PS
 | ||
| syn keyword nasmInstructionAVX_NOEXCEPT VCVTNEOPH2PS VCVTNEPS2BF16
 | ||
| " AVX_VECTOR_NN
 | ||
| syn keyword nasmInstructionAVX_VECTOR_NN VPDPBSSD VPDPBSSDS VPDPBSUD VPDPBSUDS VPDPBUUD
 | ||
| syn keyword nasmInstructionAVX_VECTOR_NN VPDPBUUDS
 | ||
| " AVX_IFMA
 | ||
| syn keyword nasmInstructionAVX_IFMA VPMADD52HUQ VPMADD52LUQ
 | ||
| " AVX512_MASK
 | ||
| syn keyword nasmInstructionAVX512_MASK KADDB KADDD KADDQ KADDW KANDB
 | ||
| syn keyword nasmInstructionAVX512_MASK KANDD KANDNB KANDND KANDNQ KANDNW
 | ||
| syn keyword nasmInstructionAVX512_MASK KANDQ KANDW KMOVB KMOVD KMOVQ
 | ||
| syn keyword nasmInstructionAVX512_MASK KMOVW KNOTB KNOTD KNOTQ KNOTW
 | ||
| syn keyword nasmInstructionAVX512_MASK KORB KORD KORQ KORW KORTESTB
 | ||
| syn keyword nasmInstructionAVX512_MASK KORTESTD KORTESTQ KORTESTW KSHIFTLB KSHIFTLD
 | ||
| syn keyword nasmInstructionAVX512_MASK KSHIFTLQ KSHIFTLW KSHIFTRB KSHIFTRD KSHIFTRQ
 | ||
| syn keyword nasmInstructionAVX512_MASK KSHIFTRW KTESTB KTESTD KTESTQ KTESTW
 | ||
| syn keyword nasmInstructionAVX512_MASK KUNPCKBW KUNPCKDQ KUNPCKWD KXNORB KXNORD
 | ||
| syn keyword nasmInstructionAVX512_MASK KXNORQ KXNORW KXORB KXORD KXORQ
 | ||
| syn keyword nasmInstructionAVX512_MASK KXORW
 | ||
| " AVX512_MASK_REG
 | ||
| syn keyword nasmInstructionAVX512_MASK_REG KADD KAND KANDN KAND KMOV
 | ||
| syn keyword nasmInstructionAVX512_MASK_REG KNOT KOR KORTEST KSHIFTL KSHIFTR
 | ||
| syn keyword nasmInstructionAVX512_MASK_REG KTEST KUNPCK KXNOR KXOR
 | ||
| " AVX512
 | ||
| syn keyword nasmInstructionAVX512 VADDPD VADDPS VADDSD VADDSS VALIGND
 | ||
| syn keyword nasmInstructionAVX512 VALIGNQ VANDNPD VANDNPS VANDPD VANDPS
 | ||
| syn keyword nasmInstructionAVX512 VBLENDMPD VBLENDMPS VBROADCASTF32X2 VBROADCASTF32X4 VBROADCASTF32X8
 | ||
| syn keyword nasmInstructionAVX512 VBROADCASTF64X2 VBROADCASTF64X4 VBROADCASTI32X2 VBROADCASTI32X4 VBROADCASTI32X8
 | ||
| syn keyword nasmInstructionAVX512 VBROADCASTI64X2 VBROADCASTI64X4 VBROADCASTSD VBROADCASTSS VCMPEQPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPEQPS VCMPEQSD VCMPEQSS VCMPEQ_OQPD VCMPEQ_OQPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPEQ_OQSD VCMPEQ_OQSS VCMPLTPD VCMPLTPS VCMPLTSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPLTSS VCMPLT_OSPD VCMPLT_OSPS VCMPLT_OSSD VCMPLT_OSSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPLEPD VCMPLEPS VCMPLESD VCMPLESS VCMPLE_OSPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPLE_OSPS VCMPLE_OSSD VCMPLE_OSSS VCMPUNORDPD VCMPUNORDPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPUNORDSD VCMPUNORDSS VCMPUNORD_QPD VCMPUNORD_QPS VCMPUNORD_QSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPUNORD_QSS VCMPNEQPD VCMPNEQPS VCMPNEQSD VCMPNEQSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPNEQ_UQPD VCMPNEQ_UQPS VCMPNEQ_UQSD VCMPNEQ_UQSS VCMPNLTPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNLTPS VCMPNLTSD VCMPNLTSS VCMPNLT_USPD VCMPNLT_USPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPNLT_USSD VCMPNLT_USSS VCMPNLEPD VCMPNLEPS VCMPNLESD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNLESS VCMPNLE_USPD VCMPNLE_USPS VCMPNLE_USSD VCMPNLE_USSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPORDPD VCMPORDPS VCMPORDSD VCMPORDSS VCMPORD_QPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPORD_QPS VCMPORD_QSD VCMPORD_QSS VCMPEQ_UQPD VCMPEQ_UQPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPEQ_UQSD VCMPEQ_UQSS VCMPNGEPD VCMPNGEPS VCMPNGESD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNGESS VCMPNGE_USPD VCMPNGE_USPS VCMPNGE_USSD VCMPNGE_USSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPNGTPD VCMPNGTPS VCMPNGTSD VCMPNGTSS VCMPNGT_USPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNGT_USPS VCMPNGT_USSD VCMPNGT_USSS VCMPFALSEPD VCMPFALSEPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPFALSESD VCMPFALSESS VCMPFALSE_OQPD VCMPFALSE_OQPS VCMPFALSE_OQSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPFALSE_OQSS VCMPNEQ_OQPD VCMPNEQ_OQPS VCMPNEQ_OQSD VCMPNEQ_OQSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPGEPD VCMPGEPS VCMPGESD VCMPGESS VCMPGE_OSPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPGE_OSPS VCMPGE_OSSD VCMPGE_OSSS VCMPGTPD VCMPGTPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPGTSD VCMPGTSS VCMPGT_OSPD VCMPGT_OSPS VCMPGT_OSSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPGT_OSSS VCMPTRUEPD VCMPTRUEPS VCMPTRUESD VCMPTRUESS
 | ||
| syn keyword nasmInstructionAVX512 VCMPTRUE_UQPD VCMPTRUE_UQPS VCMPTRUE_UQSD VCMPTRUE_UQSS VCMPEQ_OSPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPEQ_OSPS VCMPEQ_OSSD VCMPEQ_OSSS VCMPLT_OQPD VCMPLT_OQPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPLT_OQSD VCMPLT_OQSS VCMPLE_OQPD VCMPLE_OQPS VCMPLE_OQSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPLE_OQSS VCMPUNORD_SPD VCMPUNORD_SPS VCMPUNORD_SSD VCMPUNORD_SSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPNEQ_USPD VCMPNEQ_USPS VCMPNEQ_USSD VCMPNEQ_USSS VCMPNLT_UQPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNLT_UQPS VCMPNLT_UQSD VCMPNLT_UQSS VCMPNLE_UQPD VCMPNLE_UQPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPNLE_UQSD VCMPNLE_UQSS VCMPORD_SPD VCMPORD_SPS VCMPORD_SSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPORD_SSS VCMPEQ_USPD VCMPEQ_USPS VCMPEQ_USSD VCMPEQ_USSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPNGE_UQPD VCMPNGE_UQPS VCMPNGE_UQSD VCMPNGE_UQSS VCMPNGT_UQPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNGT_UQPS VCMPNGT_UQSD VCMPNGT_UQSS VCMPFALSE_OSPD VCMPFALSE_OSPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPFALSE_OSSD VCMPFALSE_OSSS VCMPNEQ_OSPD VCMPNEQ_OSPS VCMPNEQ_OSSD
 | ||
| syn keyword nasmInstructionAVX512 VCMPNEQ_OSSS VCMPGE_OQPD VCMPGE_OQPS VCMPGE_OQSD VCMPGE_OQSS
 | ||
| syn keyword nasmInstructionAVX512 VCMPGT_OQPD VCMPGT_OQPS VCMPGT_OQSD VCMPGT_OQSS VCMPTRUE_USPD
 | ||
| syn keyword nasmInstructionAVX512 VCMPTRUE_USPS VCMPTRUE_USSD VCMPTRUE_USSS VCMPPD VCMPPS
 | ||
| syn keyword nasmInstructionAVX512 VCMPSD VCMPSS VCOMISD VCOMISS VCOMPRESSPD
 | ||
| syn keyword nasmInstructionAVX512 VCOMPRESSPS VCVTDQ2PD VCVTDQ2PS VCVTPD2DQ VCVTPD2PS
 | ||
| syn keyword nasmInstructionAVX512 VCVTPD2QQ VCVTPD2UDQ VCVTPD2UQQ VCVTPH2PS VCVTPS2DQ
 | ||
| syn keyword nasmInstructionAVX512 VCVTPS2PD VCVTPS2PH VCVTPS2QQ VCVTPS2UDQ VCVTPS2UQQ
 | ||
| syn keyword nasmInstructionAVX512 VCVTQQ2PD VCVTQQ2PS VCVTSD2SI VCVTSD2SS VCVTSD2USI
 | ||
| syn keyword nasmInstructionAVX512 VCVTSI2SD VCVTSI2SS VCVTSS2SD VCVTSS2SI VCVTSS2USI
 | ||
| syn keyword nasmInstructionAVX512 VCVTTPD2DQ VCVTTPD2QQ VCVTTPD2UDQ VCVTTPD2UQQ VCVTTPS2DQ
 | ||
| syn keyword nasmInstructionAVX512 VCVTTPS2QQ VCVTTPS2UDQ VCVTTPS2UQQ VCVTTSD2SI VCVTTSD2USI
 | ||
| syn keyword nasmInstructionAVX512 VCVTTSS2SI VCVTTSS2USI VCVTUDQ2PD VCVTUDQ2PS VCVTUQQ2PD
 | ||
| syn keyword nasmInstructionAVX512 VCVTUQQ2PS VCVTUSI2SD VCVTUSI2SS VDBPSADBW VDIVPD
 | ||
| syn keyword nasmInstructionAVX512 VDIVPS VDIVSD VDIVSS VEXP2PD VEXP2PS
 | ||
| syn keyword nasmInstructionAVX512 VEXPANDPD VEXPANDPS VEXTRACTF32X4 VEXTRACTF32X8 VEXTRACTF64X2
 | ||
| syn keyword nasmInstructionAVX512 VEXTRACTF64X4 VEXTRACTI32X4 VEXTRACTI32X8 VEXTRACTI64X2 VEXTRACTI64X4
 | ||
| syn keyword nasmInstructionAVX512 VEXTRACTPS VFIXUPIMMPD VFIXUPIMMPS VFIXUPIMMSD VFIXUPIMMSS
 | ||
| syn keyword nasmInstructionAVX512 VFMADD132PD VFMADD132PS VFMADD132SD VFMADD132SS VFMADD213PD
 | ||
| syn keyword nasmInstructionAVX512 VFMADD213PS VFMADD213SD VFMADD213SS VFMADD231PD VFMADD231PS
 | ||
| syn keyword nasmInstructionAVX512 VFMADD231SD VFMADD231SS VFMADDSUB132PD VFMADDSUB132PS VFMADDSUB213PD
 | ||
| syn keyword nasmInstructionAVX512 VFMADDSUB213PS VFMADDSUB231PD VFMADDSUB231PS VFMSUB132PD VFMSUB132PS
 | ||
| syn keyword nasmInstructionAVX512 VFMSUB132SD VFMSUB132SS VFMSUB213PD VFMSUB213PS VFMSUB213SD
 | ||
| syn keyword nasmInstructionAVX512 VFMSUB213SS VFMSUB231PD VFMSUB231PS VFMSUB231SD VFMSUB231SS
 | ||
| syn keyword nasmInstructionAVX512 VFMSUBADD132PD VFMSUBADD132PS VFMSUBADD213PD VFMSUBADD213PS VFMSUBADD231PD
 | ||
| syn keyword nasmInstructionAVX512 VFMSUBADD231PS VFNMADD132PD VFNMADD132PS VFNMADD132SD VFNMADD132SS
 | ||
| syn keyword nasmInstructionAVX512 VFNMADD213PD VFNMADD213PS VFNMADD213SD VFNMADD213SS VFNMADD231PD
 | ||
| syn keyword nasmInstructionAVX512 VFNMADD231PS VFNMADD231SD VFNMADD231SS VFNMSUB132PD VFNMSUB132PS
 | ||
| syn keyword nasmInstructionAVX512 VFNMSUB132SD VFNMSUB132SS VFNMSUB213PD VFNMSUB213PS VFNMSUB213SD
 | ||
| syn keyword nasmInstructionAVX512 VFNMSUB213SS VFNMSUB231PD VFNMSUB231PS VFNMSUB231SD VFNMSUB231SS
 | ||
| syn keyword nasmInstructionAVX512 VFPCLASSPD VFPCLASSPS VFPCLASSSD VFPCLASSSS VGATHERDPD
 | ||
| syn keyword nasmInstructionAVX512 VGATHERDPS VGATHERPF0DPD VGATHERPF0DPS VGATHERPF0QPD VGATHERPF0QPS
 | ||
| syn keyword nasmInstructionAVX512 VGATHERPF1DPD VGATHERPF1DPS VGATHERPF1QPD VGATHERPF1QPS VGATHERQPD
 | ||
| syn keyword nasmInstructionAVX512 VGATHERQPS VGETEXPPD VGETEXPPS VGETEXPSD VGETEXPSS
 | ||
| syn keyword nasmInstructionAVX512 VGETMANTPD VGETMANTPS VGETMANTSD VGETMANTSS VINSERTF32X4
 | ||
| syn keyword nasmInstructionAVX512 VINSERTF32X8 VINSERTF64X2 VINSERTF64X4 VINSERTI32X4 VINSERTI32X8
 | ||
| syn keyword nasmInstructionAVX512 VINSERTI64X2 VINSERTI64X4 VINSERTPS VMAXPD VMAXPS
 | ||
| syn keyword nasmInstructionAVX512 VMAXSD VMAXSS VMINPD VMINPS VMINSD
 | ||
| syn keyword nasmInstructionAVX512 VMINSS VMOVAPD VMOVAPS VMOVD VMOVDDUP
 | ||
| syn keyword nasmInstructionAVX512 VMOVDQA32 VMOVDQA64 VMOVDQU16 VMOVDQU32 VMOVDQU64
 | ||
| syn keyword nasmInstructionAVX512 VMOVDQU8 VMOVHLPS VMOVHPD VMOVHPS VMOVLHPS
 | ||
| syn keyword nasmInstructionAVX512 VMOVLPD VMOVLPS VMOVNTDQ VMOVNTDQA VMOVNTPD
 | ||
| syn keyword nasmInstructionAVX512 VMOVNTPS VMOVQ VMOVSD VMOVSHDUP VMOVSLDUP
 | ||
| syn keyword nasmInstructionAVX512 VMOVSS VMOVUPD VMOVUPS VMULPD VMULPS
 | ||
| syn keyword nasmInstructionAVX512 VMULSD VMULSS VORPD VORPS VPABSB
 | ||
| syn keyword nasmInstructionAVX512 VPABSD VPABSQ VPABSW VPACKSSDW VPACKSSWB
 | ||
| syn keyword nasmInstructionAVX512 VPACKUSDW VPACKUSWB VPADDB VPADDD VPADDQ
 | ||
| syn keyword nasmInstructionAVX512 VPADDSB VPADDSW VPADDUSB VPADDUSW VPADDW
 | ||
| syn keyword nasmInstructionAVX512 VPALIGNR VPANDD VPANDND VPANDNQ VPANDQ
 | ||
| syn keyword nasmInstructionAVX512 VPAVGB VPAVGW VPBLENDMB VPBLENDMD VPBLENDMQ
 | ||
| syn keyword nasmInstructionAVX512 VPBLENDMW VPBROADCASTB VPBROADCASTD VPBROADCASTMB2Q VPBROADCASTMW2D
 | ||
| syn keyword nasmInstructionAVX512 VPBROADCASTQ VPBROADCASTW VPCMPEQB VPCMPEQD VPCMPEQQ
 | ||
| syn keyword nasmInstructionAVX512 VPCMPEQW VPCMPGTB VPCMPGTD VPCMPGTQ VPCMPGTW
 | ||
| syn keyword nasmInstructionAVX512 VPCMPEQB VPCMPEQD VPCMPEQQ VPCMPEQUB VPCMPEQUD
 | ||
| syn keyword nasmInstructionAVX512 VPCMPEQUQ VPCMPEQUW VPCMPEQW VPCMPGEB VPCMPGED
 | ||
| syn keyword nasmInstructionAVX512 VPCMPGEQ VPCMPGEUB VPCMPGEUD VPCMPGEUQ VPCMPGEUW
 | ||
| syn keyword nasmInstructionAVX512 VPCMPGEW VPCMPGTB VPCMPGTD VPCMPGTQ VPCMPGTUB
 | ||
| syn keyword nasmInstructionAVX512 VPCMPGTUD VPCMPGTUQ VPCMPGTUW VPCMPGTW VPCMPLEB
 | ||
| syn keyword nasmInstructionAVX512 VPCMPLED VPCMPLEQ VPCMPLEUB VPCMPLEUD VPCMPLEUQ
 | ||
| syn keyword nasmInstructionAVX512 VPCMPLEUW VPCMPLEW VPCMPLTB VPCMPLTD VPCMPLTQ
 | ||
| syn keyword nasmInstructionAVX512 VPCMPLTUB VPCMPLTUD VPCMPLTUQ VPCMPLTUW VPCMPLTW
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNEQB VPCMPNEQD VPCMPNEQQ VPCMPNEQUB VPCMPNEQUD
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNEQUQ VPCMPNEQUW VPCMPNEQW VPCMPNGTB VPCMPNGTD
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNGTQ VPCMPNGTUB VPCMPNGTUD VPCMPNGTUQ VPCMPNGTUW
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNGTW VPCMPNLEB VPCMPNLED VPCMPNLEQ VPCMPNLEUB
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNLEUD VPCMPNLEUQ VPCMPNLEUW VPCMPNLEW VPCMPNLTB
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNLTD VPCMPNLTQ VPCMPNLTUB VPCMPNLTUD VPCMPNLTUQ
 | ||
| syn keyword nasmInstructionAVX512 VPCMPNLTUW VPCMPNLTW VPCMPB VPCMPD VPCMPQ
 | ||
| syn keyword nasmInstructionAVX512 VPCMPUB VPCMPUD VPCMPUQ VPCMPUW VPCMPW
 | ||
| syn keyword nasmInstructionAVX512 VPCOMPRESSD VPCOMPRESSQ VPCONFLICTD VPCONFLICTQ VPERMB
 | ||
| syn keyword nasmInstructionAVX512 VPERMD VPERMI2B VPERMI2D VPERMI2PD VPERMI2PS
 | ||
| syn keyword nasmInstructionAVX512 VPERMI2Q VPERMI2W VPERMILPD VPERMILPS VPERMPD
 | ||
| syn keyword nasmInstructionAVX512 VPERMPS VPERMQ VPERMT2B VPERMT2D VPERMT2PD
 | ||
| syn keyword nasmInstructionAVX512 VPERMT2PS VPERMT2Q VPERMT2W VPERMW VPEXPANDD
 | ||
| syn keyword nasmInstructionAVX512 VPEXPANDQ VPEXTRB VPEXTRD VPEXTRQ VPEXTRW
 | ||
| syn keyword nasmInstructionAVX512 VPGATHERDD VPGATHERDQ VPGATHERQD VPGATHERQQ VPINSRB
 | ||
| syn keyword nasmInstructionAVX512 VPINSRD VPINSRQ VPINSRW VPLZCNTD VPLZCNTQ
 | ||
| syn keyword nasmInstructionAVX512 VPMADD52HUQ VPMADD52LUQ VPMADDUBSW VPMADDWD VPMAXSB
 | ||
| syn keyword nasmInstructionAVX512 VPMAXSD VPMAXSQ VPMAXSW VPMAXUB VPMAXUD
 | ||
| syn keyword nasmInstructionAVX512 VPMAXUQ VPMAXUW VPMINSB VPMINSD VPMINSQ
 | ||
| syn keyword nasmInstructionAVX512 VPMINSW VPMINUB VPMINUD VPMINUQ VPMINUW
 | ||
| syn keyword nasmInstructionAVX512 VPMOVB2M VPMOVD2M VPMOVDB VPMOVDW VPMOVM2B
 | ||
| syn keyword nasmInstructionAVX512 VPMOVM2D VPMOVM2Q VPMOVM2W VPMOVQ2M VPMOVQB
 | ||
| syn keyword nasmInstructionAVX512 VPMOVQD VPMOVQW VPMOVSDB VPMOVSDW VPMOVSQB
 | ||
| syn keyword nasmInstructionAVX512 VPMOVSQD VPMOVSQW VPMOVSWB VPMOVSXBD VPMOVSXBQ
 | ||
| syn keyword nasmInstructionAVX512 VPMOVSXBW VPMOVSXDQ VPMOVSXWD VPMOVSXWQ VPMOVUSDB
 | ||
| syn keyword nasmInstructionAVX512 VPMOVUSDW VPMOVUSQB VPMOVUSQD VPMOVUSQW VPMOVUSWB
 | ||
| syn keyword nasmInstructionAVX512 VPMOVW2M VPMOVWB VPMOVZXBD VPMOVZXBQ VPMOVZXBW
 | ||
| syn keyword nasmInstructionAVX512 VPMOVZXDQ VPMOVZXWD VPMOVZXWQ VPMULDQ VPMULHRSW
 | ||
| syn keyword nasmInstructionAVX512 VPMULHUW VPMULHW VPMULLD VPMULLQ VPMULLW
 | ||
| syn keyword nasmInstructionAVX512 VPMULTISHIFTQB VPMULUDQ VPORD VPORQ VPROLD
 | ||
| syn keyword nasmInstructionAVX512 VPROLQ VPROLVD VPROLVQ VPRORD VPRORQ
 | ||
| syn keyword nasmInstructionAVX512 VPRORVD VPRORVQ VPSADBW VPSCATTERDD VPSCATTERDQ
 | ||
| syn keyword nasmInstructionAVX512 VPSCATTERQD VPSCATTERQQ VPSHUFB VPSHUFD VPSHUFHW
 | ||
| syn keyword nasmInstructionAVX512 VPSHUFLW VPSLLD VPSLLDQ VPSLLQ VPSLLVD
 | ||
| syn keyword nasmInstructionAVX512 VPSLLVQ VPSLLVW VPSLLW VPSRAD VPSRAQ
 | ||
| syn keyword nasmInstructionAVX512 VPSRAVD VPSRAVQ VPSRAVW VPSRAW VPSRLD
 | ||
| syn keyword nasmInstructionAVX512 VPSRLDQ VPSRLQ VPSRLVD VPSRLVQ VPSRLVW
 | ||
| syn keyword nasmInstructionAVX512 VPSRLW VPSUBB VPSUBD VPSUBQ VPSUBSB
 | ||
| syn keyword nasmInstructionAVX512 VPSUBSW VPSUBUSB VPSUBUSW VPSUBW VPTERNLOGD
 | ||
| syn keyword nasmInstructionAVX512 VPTERNLOGQ VPTESTMB VPTESTMD VPTESTMQ VPTESTMW
 | ||
| syn keyword nasmInstructionAVX512 VPTESTNMB VPTESTNMD VPTESTNMQ VPTESTNMW VPUNPCKHBW
 | ||
| syn keyword nasmInstructionAVX512 VPUNPCKHDQ VPUNPCKHQDQ VPUNPCKHWD VPUNPCKLBW VPUNPCKLDQ
 | ||
| syn keyword nasmInstructionAVX512 VPUNPCKLQDQ VPUNPCKLWD VPXORD VPXORQ VRANGEPD
 | ||
| syn keyword nasmInstructionAVX512 VRANGEPS VRANGESD VRANGESS VRCP14PD VRCP14PS
 | ||
| syn keyword nasmInstructionAVX512 VRCP14SD VRCP14SS VRCP28PD VRCP28PS VRCP28SD
 | ||
| syn keyword nasmInstructionAVX512 VRCP28SS VREDUCEPD VREDUCEPS VREDUCESD VREDUCESS
 | ||
| syn keyword nasmInstructionAVX512 VRNDSCALEPD VRNDSCALEPS VRNDSCALESD VRNDSCALESS VRSQRT14PD
 | ||
| syn keyword nasmInstructionAVX512 VRSQRT14PS VRSQRT14SD VRSQRT14SS VRSQRT28PD VRSQRT28PS
 | ||
| syn keyword nasmInstructionAVX512 VRSQRT28SD VRSQRT28SS VSCALEFPD VSCALEFPS VSCALEFSD
 | ||
| syn keyword nasmInstructionAVX512 VSCALEFSS VSCATTERDPD VSCATTERDPS VSCATTERPF0DPD VSCATTERPF0DPS
 | ||
| syn keyword nasmInstructionAVX512 VSCATTERPF0QPD VSCATTERPF0QPS VSCATTERPF1DPD VSCATTERPF1DPS VSCATTERPF1QPD
 | ||
| syn keyword nasmInstructionAVX512 VSCATTERPF1QPS VSCATTERQPD VSCATTERQPS VSHUFF32X4 VSHUFF64X2
 | ||
| syn keyword nasmInstructionAVX512 VSHUFI32X4 VSHUFI64X2 VSHUFPD VSHUFPS VSQRTPD
 | ||
| syn keyword nasmInstructionAVX512 VSQRTPS VSQRTSD VSQRTSS VSUBPD VSUBPS
 | ||
| syn keyword nasmInstructionAVX512 VSUBSD VSUBSS VUCOMISD VUCOMISS VUNPCKHPD
 | ||
| syn keyword nasmInstructionAVX512 VUNPCKHPS VUNPCKLPD VUNPCKLPS VXORPD VXORPS
 | ||
| " PROTECTION
 | ||
| syn keyword nasmInstructionPROTECTION RDPKRU WRPKRU
 | ||
| " RDPID
 | ||
| syn keyword nasmInstructionRDPID RDPID 
 | ||
| " NMEM
 | ||
| syn keyword nasmInstructionNMEM CLFLUSHOPT CLWB PCOMMIT
 | ||
| syn keyword nasmInstructionNMEM CLZERO
 | ||
| " INTEL_EXTENSIONS
 | ||
| syn keyword nasmInstructionINTEL_EXTENSIONS CLDEMOTE MOVDIRI MOVDIR64B PCONFIG TPAUSE
 | ||
| syn keyword nasmInstructionINTEL_EXTENSIONS UMONITOR UMWAIT WBNOINVD
 | ||
| " GALOISFIELD
 | ||
| syn keyword nasmInstructionGALOISFIELD GF2P8AFFINEINVQB VGF2P8AFFINEINVQB GF2P8AFFINEQB VGF2P8AFFINEQB GF2P8MULB
 | ||
| syn keyword nasmInstructionGALOISFIELD VGF2P8MULB
 | ||
| " AVX512_BMI
 | ||
| syn keyword nasmInstructionAVX512_BMI VPCOMPRESSB VPCOMPRESSW VPEXPANDB VPEXPANDW VPSHLDW
 | ||
| syn keyword nasmInstructionAVX512_BMI VPSHLDD VPSHLDQ VPSHLDVW VPSHLDVD VPSHLDVQ
 | ||
| syn keyword nasmInstructionAVX512_BMI VPSHRDW VPSHRDD VPSHRDQ VPSHRDVW VPSHRDVD
 | ||
| syn keyword nasmInstructionAVX512_BMI VPSHRDVQ
 | ||
| " AVX512_VNNI
 | ||
| syn keyword nasmInstructionAVX512_VNNI VPDPBUSD VPDPBUSDS VPDPWSSD VPDPWSSDS
 | ||
| " AVX512_BITALG
 | ||
| syn keyword nasmInstructionAVX512_BITALG VPOPCNTB VPOPCNTW VPOPCNTD VPOPCNTQ VPSHUFBITQMB
 | ||
| " AVX512_FMA
 | ||
| syn keyword nasmInstructionAVX512_FMA V4FMADDPS V4FNMADDPS V4FMADDSS V4FNMADDSS
 | ||
| " AVX512_DP
 | ||
| syn keyword nasmInstructionAVX512_DP V4DPWSSDS V4DPWSSD
 | ||
| " SGX
 | ||
| syn keyword nasmInstructionSGX ENCLS ENCLU ENCLV
 | ||
| " CET
 | ||
| syn keyword nasmInstructionCET CLRSSBSY ENDBR32 ENDBR64 INCSSPD INCSSPQ
 | ||
| syn keyword nasmInstructionCET RDSSPD RDSSPQ RSTORSSP SAVEPREVSSP SETSSBSY
 | ||
| syn keyword nasmInstructionCET WRUSSD WRUSSQ WRSSD WRSSQ
 | ||
| " INTEL_EXTENSION
 | ||
| syn keyword nasmInstructionINTEL_EXTENSION ENQCMD ENQCMDS PCONFIG SERIALIZE WBNOINVD
 | ||
| syn keyword nasmInstructionINTEL_EXTENSION XRESLDTRK XSUSLDTRK
 | ||
| " AVX512_BF16
 | ||
| syn keyword nasmInstructionAVX512_BF16 VCVTNE2PS2BF16 VCVTNEPS2BF16 VDPBF16PS
 | ||
| " AVX512_MASK_INTERSECT
 | ||
| syn keyword nasmInstructionAVX512_MASK_INTERSECT VP2INTERSECTD 
 | ||
| " AMX
 | ||
| syn keyword nasmInstructionAMX LDTILECFG STTILECFG TDPBF16PS TDPBSSD TDPBSUD
 | ||
| syn keyword nasmInstructionAMX TDPBUSD TDPBUUD TILELOADD TILELOADDT1 TILERELEASE
 | ||
| syn keyword nasmInstructionAMX TILESTORED TILEZERO
 | ||
| " AVX512_FP16
 | ||
| syn keyword nasmInstructionAVX512_FP16 VADDPH VADDSH VCMPPH VCMPSH VCOMISH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTDQ2PH VCVTPD2PH VCVTPH2DQ VCVTPH2PD VCVTPH2PS
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTPH2PSX VCVTPH2QQ VCVTPH2UDQ VCVTPH2UQQ VCVTPH2UW
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTPH2W VCVTPS2PH VCVTQQ2PH VCVTSD2SH VCVTSH2SD
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTSH2SI VCVTSH2SS VCVTSH2USI VCVTSI2SH VCVTSS2SH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTTPH2DQ VCVTTPH2QQ VCVTTPH2UDQ VCVTTPH2UQQ VCVTTPH2UW
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTTPH2W VCVTTSH2SI VCVTTSH2USI VCVTUDQ2PH VCVTUQQ2PH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VCVTUSI2SH VCVTUSI2SS VCVTUW2PH VCVTW2PH VDIVPH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VDIVSH VFCMADDCPH VFMADDCPH VFCMADDCSH VFMADDCSH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VFCMULCPCH VFMULCPCH VFCMULCSH VFMULCSH VFMADDSUB132PH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VFMADDSUB213PH VFMADDSUB231PH VFMSUBADD132PH VFMSUBADD213PH VFMSUBADD231PH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VPMADD132PH VPMADD213PH VPMADD231PH VFMADD132PH VFMADD213PH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VFMADD231PH VPMADD132SH VPMADD213SH VPMADD231SH VPNMADD132SH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VPNMADD213SH VPNMADD231SH VPMSUB132PH VPMSUB213PH VPMSUB231PH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VFMSUB132PH VFMSUB213PH VFMSUB231PH VPMSUB132SH VPMSUB213SH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VPMSUB231SH VPNMSUB132SH VPNMSUB213SH VPNMSUB231SH VFPCLASSPH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VFPCLASSSH VGETEXPPH VGETEXPSH VGETMANTPH VGETMANTSH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VGETMAXPH VGETMAXSH VGETMINPH VGETMINSH VMOVSH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VMOVW VMULPH VMULSH VRCPPH VRCPSH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VREDUCEPH VREDUCESH VENDSCALEPH VENDSCALESH VRSQRTPH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VRSQRTSH VSCALEFPH VSCALEFSH VSQRTPH VSQRTSH
 | ||
| syn keyword nasmInstructionAVX512_FP16 VSUBPH VSUBSH VUCOMISH
 | ||
| " RAO-INT
 | ||
| syn keyword nasmInstructionRAO_INT AADD AAND AXOR
 | ||
| " USERINT
 | ||
| syn keyword nasmInstructionUSERINT CLUI SENDUIPI STUI TESTUI UIRET
 | ||
| " CMPCCXADD
 | ||
| syn keyword nasmInstructionCMPCCXADD CMPOXADD CMPNOXADD CMPBXADD CMPNBXADD CMPZXADD
 | ||
| syn keyword nasmInstructionCMPCCXADD CMPNZXADD CMPBEXADD CMPNBEXADD CMPSXADD CMPNSXADD
 | ||
| syn keyword nasmInstructionCMPCCXADD CMPPXADD CMPNPXADD CMPLXADD CMPNLXADD CMPLEXADD
 | ||
| syn keyword nasmInstructionCMPCCXADD CMPNLEXADD
 | ||
| " FRET
 | ||
| syn keyword nasmInstructionFRET ERETS ERETU LKGS
 | ||
| " WRMSRNS_MSRLIST
 | ||
| syn keyword nasmInstructionWRMSRNS_MSRLIST WRMSRNS RDMSRLIST WRMSRLIST
 | ||
| " HRESET
 | ||
| syn keyword nasmInstructionHRESET HRESET 
 | ||
| " PTWRITE
 | ||
| syn keyword nasmInstructionPTWRITE PTWRITE 
 | ||
| " HINTNOP
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP0 HINT_NOP1 HINT_NOP2 HINT_NOP3 HINT_NOP4
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP5 HINT_NOP6 HINT_NOP7 HINT_NOP8 HINT_NOP9
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP10 HINT_NOP11 HINT_NOP12 HINT_NOP13 HINT_NOP14
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP15 HINT_NOP16 HINT_NOP17 HINT_NOP18 HINT_NOP19
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP20 HINT_NOP21 HINT_NOP22 HINT_NOP23 HINT_NOP24
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP25 HINT_NOP26 HINT_NOP27 HINT_NOP28 HINT_NOP29
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP30 HINT_NOP31 HINT_NOP32 HINT_NOP33 HINT_NOP34
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP35 HINT_NOP36 HINT_NOP37 HINT_NOP38 HINT_NOP39
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP40 HINT_NOP41 HINT_NOP42 HINT_NOP43 HINT_NOP44
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP45 HINT_NOP46 HINT_NOP47 HINT_NOP48 HINT_NOP49
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP50 HINT_NOP51 HINT_NOP52 HINT_NOP53 HINT_NOP54
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP55 HINT_NOP56 HINT_NOP57 HINT_NOP58 HINT_NOP59
 | ||
| syn keyword nasmInstructionHINTNOP HINT_NOP60 HINT_NOP61 HINT_NOP62 HINT_NOP63
 | ||
| "  Cyrix instructions (requires Cyrix processor)
 | ||
| syn keyword nasmCrxInstruction	PADDSIW PAVEB PDISTIB PMAGW PMULHRWC PMULHRIW
 | ||
| syn keyword nasmCrxInstruction	PMVGEZB PMVLZB PMVNZB PMVZB PSUBSIW
 | ||
| syn keyword nasmCrxInstruction	RDSHR RSDC RSLDT SMINT SMINTOLD SVDC SVLDT SVTS
 | ||
| syn keyword nasmCrxInstruction	WRSHR BB0_RESET BB1_RESET
 | ||
| syn keyword nasmCrxInstruction	CPU_WRITE CPU_READ DMINT RDM PMACHRIW
 | ||
| 
 | ||
| " Debugging Instructions: (privileged)
 | ||
| syn keyword nasmDbgInstruction	INT1 INT3 RDMSR RDTSC RDPMC WRMSR INT01 INT03
 | ||
| 
 | ||
| 
 | ||
| " Synchronize Syntax:
 | ||
| syn sync clear
 | ||
| syn sync minlines=50		"for multiple region nesting
 | ||
| syn sync match  nasmSync	grouphere nasmMacroDef "^\s*%i\=macro\>"me=s-1
 | ||
| syn sync match	nasmSync	grouphere NONE	       "^\s*%endmacro\>"
 | ||
| 
 | ||
| 
 | ||
| " Define the default highlighting.
 | ||
| " Only when an item doesn't have highlighting yet
 | ||
| 
 | ||
| " Sub Links:
 | ||
| hi def link nasmInMacDirective	nasmDirective
 | ||
| hi def link nasmInMacLabel		nasmLocalLabel
 | ||
| hi def link nasmInMacLblWarn	nasmLabelWarn
 | ||
| hi def link nasmInMacMacro		nasmMacro
 | ||
| hi def link nasmInMacParam		nasmMacro
 | ||
| hi def link nasmInMacParamNum	nasmDecNumber
 | ||
| hi def link nasmInMacPreCondit	nasmPreCondit
 | ||
| hi def link nasmInMacPreProc	nasmPreProc
 | ||
| hi def link nasmInPreCondit	nasmPreCondit
 | ||
| hi def link nasmInStructure	nasmStructure
 | ||
| hi def link nasmStructureLabel	nasmStructure
 | ||
| 
 | ||
| " Comment Group:
 | ||
| hi def link nasmComment		Comment
 | ||
| hi def link nasmSpecialComment	SpecialComment
 | ||
| hi def link nasmInCommentTodo	Todo
 | ||
| 
 | ||
| " Constant Group:
 | ||
| hi def link nasmString		String
 | ||
| hi def link nasmCString	String
 | ||
| hi def link nasmStringError	Error
 | ||
| hi def link nasmCStringEscape	SpecialChar
 | ||
| hi def link nasmCStringFormat	SpecialChar
 | ||
| hi def link nasmBinNumber		Number
 | ||
| hi def link nasmOctNumber		Number
 | ||
| hi def link nasmDecNumber		Number
 | ||
| hi def link nasmHexNumber		Number
 | ||
| hi def link nasmBinFloat		Float
 | ||
| hi def link nasmOctFloat		Float
 | ||
| hi def link nasmDecFloat		Float
 | ||
| hi def link nasmHexFloat		Float
 | ||
| hi def link nasmSpecFloat		Float
 | ||
| hi def link nasmBcdConst		Float
 | ||
| hi def link nasmNumberError	Error
 | ||
| 
 | ||
| " Identifier Group:
 | ||
| hi def link nasmLabel		Identifier
 | ||
| hi def link nasmLocalLabel		Identifier
 | ||
| hi def link nasmSpecialLabel	Special
 | ||
| hi def link nasmLabelError		Error
 | ||
| hi def link nasmLabelWarn		Todo
 | ||
| 
 | ||
| " PreProc Group:
 | ||
| hi def link nasmPreProc		PreProc
 | ||
| hi def link nasmDefine		Define
 | ||
| hi def link nasmInclude		Include
 | ||
| hi def link nasmMacro		Macro
 | ||
| hi def link nasmPreCondit		PreCondit
 | ||
| hi def link nasmPreProcError	Error
 | ||
| hi def link nasmPreProcWarn	Todo
 | ||
| 
 | ||
| " Type Group:
 | ||
| hi def link nasmType		Type
 | ||
| hi def link nasmStorage		StorageClass
 | ||
| hi def link nasmStructure		Structure
 | ||
| hi def link nasmTypeError		Error
 | ||
| 
 | ||
| " Directive Group:
 | ||
| hi def link nasmConstant		Constant
 | ||
| hi def link nasmInstrModifier	Operator
 | ||
| hi def link nasmRepeat		Repeat
 | ||
| hi def link nasmDirective		Keyword
 | ||
| hi def link nasmStdDirective	Operator
 | ||
| hi def link nasmFmtDirective	Keyword
 | ||
| 
 | ||
| " Register Group:
 | ||
| hi def link nasmRegisterError	Error
 | ||
| hi def link nasmCtrlRegister	Special
 | ||
| hi def link nasmDebugRegister	Debug
 | ||
| hi def link nasmTestRegister	Special
 | ||
| hi def link nasmRegisterError	Error
 | ||
| hi def link nasmMemRefError	Error
 | ||
| 
 | ||
| " Instruction Group:
 | ||
| hi def link nasmInstructnError	Error
 | ||
| hi def link nasmCrxInstruction	Special
 | ||
| hi def link nasmDbgInstruction	Debug
 | ||
| hi def link nasmInstructionStandard Statement
 | ||
| hi def link nasmInstructionSIMD Statement
 | ||
| hi def link nasmInstructionSSE Statement
 | ||
| hi def link nasmInstructionXSAVE Statement
 | ||
| hi def link nasmInstructionMEM Statement
 | ||
| hi def link nasmInstructionMMX Statement
 | ||
| hi def link nasmInstruction3DNOW Statement
 | ||
| hi def link nasmInstructionSSE2 Statement
 | ||
| hi def link nasmInstructionWMMX Statement
 | ||
| hi def link nasmInstructionWSSD Statement
 | ||
| hi def link nasmInstructionPRESSCOT Statement
 | ||
| hi def link nasmInstructionVMXSVM Statement
 | ||
| hi def link nasmInstructionPTVMX Statement
 | ||
| hi def link nasmInstructionSEVSNPAMD Statement
 | ||
| hi def link nasmInstructionTEJAS Statement
 | ||
| hi def link nasmInstructionAMD_SSE4A Statement
 | ||
| hi def link nasmInstructionBARCELONA Statement
 | ||
| hi def link nasmInstructionPENRY Statement
 | ||
| hi def link nasmInstructionNEHALEM Statement
 | ||
| hi def link nasmInstructionSMX Statement
 | ||
| hi def link nasmInstructionGEODE_3DNOW Statement
 | ||
| hi def link nasmInstructionINTEL_NEW Statement
 | ||
| hi def link nasmInstructionAES Statement
 | ||
| hi def link nasmInstructionAVX_AES Statement
 | ||
| hi def link nasmInstructionINTEL_PUB Statement
 | ||
| hi def link nasmInstructionAVX Statement
 | ||
| hi def link nasmInstructionINTEL_CMUL Statement
 | ||
| hi def link nasmInstructionINTEL_AVX_CMUL Statement
 | ||
| hi def link nasmInstructionINTEL_FMA Statement
 | ||
| hi def link nasmInstructionINTEL_POST32 Statement
 | ||
| hi def link nasmInstructionSUPERVISOR Statement
 | ||
| hi def link nasmInstructionVIA_SECURITY Statement
 | ||
| hi def link nasmInstructionAMD_PROFILING Statement
 | ||
| hi def link nasmInstructionXOP_FMA4 Statement
 | ||
| hi def link nasmInstructionAVX2 Statement
 | ||
| hi def link nasmInstructionTRANSACTIONS Statement
 | ||
| hi def link nasmInstructionBMI_ABM Statement
 | ||
| hi def link nasmInstructionMPE Statement
 | ||
| hi def link nasmInstructionSHA Statement
 | ||
| hi def link nasmInstructionSM3 Statement
 | ||
| hi def link nasmInstructionSM4 Statement
 | ||
| hi def link nasmInstructionAVX_NOEXCEPT Statement
 | ||
| hi def link nasmInstructionAVX_VECTOR_NN Statement
 | ||
| hi def link nasmInstructionAVX_IFMA Statement
 | ||
| hi def link nasmInstructionAVX512_MASK Statement
 | ||
| hi def link nasmInstructionAVX512_MASK_REG Statement
 | ||
| hi def link nasmInstructionAVX512 Statement
 | ||
| hi def link nasmInstructionPROTECTION Statement
 | ||
| hi def link nasmInstructionRDPID Statement
 | ||
| hi def link nasmInstructionNMEM Statement
 | ||
| hi def link nasmInstructionINTEL_EXTENSIONS Statement
 | ||
| hi def link nasmInstructionGALOISFIELD Statement
 | ||
| hi def link nasmInstructionAVX512_BMI Statement
 | ||
| hi def link nasmInstructionAVX512_VNNI Statement
 | ||
| hi def link nasmInstructionAVX512_BITALG Statement
 | ||
| hi def link nasmInstructionAVX512_FMA Statement
 | ||
| hi def link nasmInstructionAVX512_DP Statement
 | ||
| hi def link nasmInstructionSGX Statement
 | ||
| hi def link nasmInstructionCET Statement
 | ||
| hi def link nasmInstructionINTEL_EXTENSION Statement
 | ||
| hi def link nasmInstructionAVX512_BF16 Statement
 | ||
| hi def link nasmInstructionAVX512_MASK_INTERSECT Statement
 | ||
| hi def link nasmInstructionAMX Statement
 | ||
| hi def link nasmInstructionAVX512_FP16 Statement
 | ||
| hi def link nasmInstructionRAO_INT Statement
 | ||
| hi def link nasmInstructionUSERINT Statement
 | ||
| hi def link nasmInstructionCMPCCXADD Statement
 | ||
| hi def link nasmInstructionFRET Statement
 | ||
| hi def link nasmInstructionWRMSRNS_MSRLIST Statement
 | ||
| hi def link nasmInstructionHRESET Statement
 | ||
| hi def link nasmInstructionHINTNOP Statement
 | ||
| hi def link nasmInstructionPTWRITE Statement
 | ||
| 
 | ||
| let b:current_syntax = "nasm"
 | ||
| 
 | ||
| " vim:ts=8 sw=4
 |