annotate runtime/syntax/masm.vim @ 6262:452e8b2a0ab3 v7.4.465

updated for version 7.4.465 Problem: Crash when expanding a very long string. Solution: Use wsncpy() instead of wcscpy(). (Ken Takata)
author Bram Moolenaar <bram@vim.org>
date Tue, 07 Oct 2014 10:38:40 +0200
parents 0c37f66b4f3b
children 2334bf788e8a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
2 " Language: Microsoft Macro Assembler (80x86)
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
3 " Orig Author: Rob Brady <robb@datatone.com>
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
4 " Maintainer: Wu Yongwei <wuyongwei@gmail.com>
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
5 " Last Change: $Date: 2013/11/13 11:49:24 $
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
6 " $Revision: 1.48 $
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
8 " Quit when a syntax file was already loaded
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
9 if exists("b:current_syntax")
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12
3312
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
13 let s:cpo_save = &cpo
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
14 set cpo&vim
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
15
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 syn case ignore
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
19 syn match masmIdentifier "[@a-z_$?][@a-z0-9_$?]*"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
20 syn match masmLabel "^\s*[@a-z_$?][@a-z0-9_$?]*:"he=e-1
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
22 syn match masmDecimal "[-+]\?\d\+[dt]\?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
23 syn match masmBinary "[-+]\?[0-1]\+[by]" "put this before hex or 0bfh dies!
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
24 syn match masmOctal "[-+]\?[0-7]\+[oq]"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
25 syn match masmHexadecimal "[-+]\?[0-9]\x*h"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
26 syn match masmFloatRaw "[-+]\?[0-9]\x*r"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
27 syn match masmFloat "[-+]\?\d\+\.\(\d*\(E[-+]\?\d\+\)\?\)\?"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
29 syn match masmComment ";.*" contains=@Spell
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
30 syn region masmComment start=+COMMENT\s*\z(\S\)+ end=+\z1.*+ contains=@Spell
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
31 syn region masmString start=+'+ end=+'+ oneline contains=@Spell
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
32 syn region masmString start=+"+ end=+"+ oneline contains=@Spell
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
34 syn region masmTitleArea start=+\<TITLE\s+lc=5 start=+\<SUBTITLE\s+lc=8 start=+\<SUBTTL\s+lc=6 end=+$+ end=+;+me=e-1 contains=masmTitle
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
35 syn region masmTextArea start=+\<NAME\s+lc=4 start=+\<INCLUDE\s+lc=7 start=+\<INCLUDELIB\s+lc=10 end=+$+ end=+;+me=e-1 contains=masmText
1199
3acf7c922a04 updated for version 7.1b
vimboss
parents: 1121
diff changeset
36 syn match masmTitle "[^\t ;]\([^;]*[^\t ;]\)\?" contained contains=@Spell
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
37 syn match masmText "[^\t ;]\([^;]*[^\t ;]\)\?" contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
38
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
39 syn region masmOptionOpt start=+\<OPTION\s+lc=6 end=+$+ end=+;+me=e-1 contains=masmOption
1199
3acf7c922a04 updated for version 7.1b
vimboss
parents: 1121
diff changeset
40 syn region masmContextOpt start=+\<PUSHCONTEXT\s+lc=11 start=+\<POPCONTEXT\s+lc=10 end=+$+ end=+;+me=e-1 contains=masmOption
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
41 syn region masmModelOpt start=+\.MODEL\s+lc=6 end=+$+ end=+;+me=e-1 contains=masmOption,masmType
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
42 syn region masmSegmentOpt start=+\<SEGMENT\s+lc=7 end=+$+ end=+;+me=e-1 contains=masmOption,masmString
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
43 syn region masmProcOpt start=+\<PROC\s+lc=4 end=+$+ end=+;+me=e-1 contains=masmOption,masmType,masmRegister,masmIdentifier
1199
3acf7c922a04 updated for version 7.1b
vimboss
parents: 1121
diff changeset
44 syn region masmAssumeOpt start=+\<ASSUME\s+lc=6 end=+$+ end=+;+me=e-1 contains=masmOption,masmOperator,masmType,masmRegister,masmIdentifier
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
45 syn region masmExpression start=+\.IF\s+lc=3 start=+\.WHILE\s+lc=6 start=+\.UNTIL\s+lc=6 start=+\<IF\s+lc=2 start=+\<IF2\s+lc=3 start=+\<ELSEIF\s+lc=6 start=+\<ELSEIF2\s+lc=7 start=+\<REPEAT\s+lc=6 start=+\<WHILE\s+lc=5 end=+$+ end=+;+me=e-1 contains=masmType,masmOperator,masmRegister,masmIdentifier,masmDecimal,masmBinary,masmHexadecimal,masmFloatRaw,masmString
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
47 syn keyword masmOption TINY SMALL COMPACT MEDIUM LARGE HUGE contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
48 syn keyword masmOption NEARSTACK FARSTACK contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
49 syn keyword masmOption PUBLIC PRIVATE STACK COMMON MEMORY AT contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
50 syn keyword masmOption BYTE WORD DWORD PARA PAGE contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
51 syn keyword masmOption USE16 USE32 FLAT contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
52 syn keyword masmOption INFO READ WRITE EXECUTE SHARED contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
53 syn keyword masmOption NOPAGE NOCACHE DISCARD contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
54 syn keyword masmOption READONLY USES FRAME contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
55 syn keyword masmOption CASEMAP DOTNAME NODOTNAME EMULATOR contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
56 syn keyword masmOption NOEMULATOR EPILOGUE EXPR16 EXPR32 contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
57 syn keyword masmOption LANGUAGE LJMP NOLJMP M510 NOM510 contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
58 syn keyword masmOption NOKEYWORD NOSIGNEXTEND OFFSET contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
59 syn keyword masmOption OLDMACROS NOOLDMACROS OLDSTRUCTS contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
60 syn keyword masmOption NOOLDSTRUCTS PROC PROLOGUE READONLY contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
61 syn keyword masmOption NOREADONLY SCOPED NOSCOPED SEGMENT contained
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
62 syn keyword masmOption SETIF2 contained
1199
3acf7c922a04 updated for version 7.1b
vimboss
parents: 1121
diff changeset
63 syn keyword masmOption ABS ALL ASSUMES CPU ERROR EXPORT contained
3acf7c922a04 updated for version 7.1b
vimboss
parents: 1121
diff changeset
64 syn keyword masmOption FORCEFRAME LISTING LOADDS NONE contained
3acf7c922a04 updated for version 7.1b
vimboss
parents: 1121
diff changeset
65 syn keyword masmOption NONUNIQUE NOTHING OS_DOS RADIX REQ contained
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
66 syn keyword masmType STDCALL SYSCALL C BASIC FORTRAN PASCAL
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
67 syn keyword masmType PTR NEAR FAR NEAR16 FAR16 NEAR32 FAR32
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
68 syn keyword masmType REAL4 REAL8 REAL10 BYTE SBYTE TBYTE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
69 syn keyword masmType WORD DWORD QWORD FWORD SWORD SDWORD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
70 syn keyword masmOperator AND NOT OR SHL SHR XOR MOD DUP
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
71 syn keyword masmOperator EQ GE GT LE LT NE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
72 syn keyword masmOperator LROFFSET SEG LENGTH LENGTHOF SIZE SIZEOF
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
73 syn keyword masmOperator CODEPTR DATAPTR FAR NEAR SHORT THIS TYPE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
74 syn keyword masmOperator HIGH HIGHWORD LOW LOWWORD OPATTR MASK WIDTH
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
75 syn match masmOperator "OFFSET\(\sFLAT:\)\?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
76 syn match masmOperator ".TYPE\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
77 syn match masmOperator "CARRY?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
78 syn match masmOperator "OVERFLOW?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
79 syn match masmOperator "PARITY?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
80 syn match masmOperator "SIGN?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
81 syn match masmOperator "ZERO?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
82 syn keyword masmDirective ALIAS ASSUME CATSTR COMM DB DD DF DOSSEG DQ DT
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
83 syn keyword masmDirective DW ECHO ELSE ELSEIF ELSEIF1 ELSEIF2 ELSEIFB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
84 syn keyword masmDirective ELSEIFDEF ELSEIFDIF ELSEIFDIFI ELSEIFE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
85 syn keyword masmDirective ELSEIFIDN ELSEIFIDNI ELSEIFNB ELSEIFNDEF END
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
86 syn keyword masmDirective ENDIF ENDM ENDP ENDS EQU EVEN EXITM EXTERN
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
87 syn keyword masmDirective EXTERNDEF EXTRN FOR FORC GOTO GROUP IF IF1 IF2
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
88 syn keyword masmDirective IFB IFDEF IFDIF IFDIFI IFE IFIDN IFIDNI IFNB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
89 syn keyword masmDirective IFNDEF INCLUDE INCLUDELIB INSTR INVOKE IRP
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
90 syn keyword masmDirective IRPC LABEL LOCAL MACRO NAME OPTION ORG PAGE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
91 syn keyword masmDirective POPCONTEXT PROC PROTO PUBLIC PURGE PUSHCONTEXT
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
92 syn keyword masmDirective RECORD REPEAT REPT SEGMENT SIZESTR STRUC
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
93 syn keyword masmDirective STRUCT SUBSTR SUBTITLE SUBTTL TEXTEQU TITLE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
94 syn keyword masmDirective TYPEDEF UNION WHILE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
95 syn match masmDirective "\.8086\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
96 syn match masmDirective "\.8087\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
97 syn match masmDirective "\.NO87\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
98 syn match masmDirective "\.186\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
99 syn match masmDirective "\.286\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
100 syn match masmDirective "\.286C\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
101 syn match masmDirective "\.286P\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
102 syn match masmDirective "\.287\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
103 syn match masmDirective "\.386\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
104 syn match masmDirective "\.386C\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
105 syn match masmDirective "\.386P\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
106 syn match masmDirective "\.387\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
107 syn match masmDirective "\.486\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
108 syn match masmDirective "\.486P\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
109 syn match masmDirective "\.586\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
110 syn match masmDirective "\.586P\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
111 syn match masmDirective "\.686\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
112 syn match masmDirective "\.686P\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
113 syn match masmDirective "\.K3D\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
114 syn match masmDirective "\.MMX\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
115 syn match masmDirective "\.XMM\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
116 syn match masmDirective "\.ALPHA\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
117 syn match masmDirective "\.DOSSEG\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
118 syn match masmDirective "\.SEQ\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
119 syn match masmDirective "\.CODE\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
120 syn match masmDirective "\.CONST\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
121 syn match masmDirective "\.DATA\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
122 syn match masmDirective "\.DATA?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
123 syn match masmDirective "\.EXIT\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
124 syn match masmDirective "\.FARDATA\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
125 syn match masmDirective "\.FARDATA?"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
126 syn match masmDirective "\.MODEL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
127 syn match masmDirective "\.STACK\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
128 syn match masmDirective "\.STARTUP\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
129 syn match masmDirective "\.IF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
130 syn match masmDirective "\.ELSE\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
131 syn match masmDirective "\.ELSEIF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
132 syn match masmDirective "\.ENDIF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
133 syn match masmDirective "\.REPEAT\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
134 syn match masmDirective "\.UNTIL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
135 syn match masmDirective "\.UNTILCXZ\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
136 syn match masmDirective "\.WHILE\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
137 syn match masmDirective "\.ENDW\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
138 syn match masmDirective "\.BREAK\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
139 syn match masmDirective "\.CONTINUE\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
140 syn match masmDirective "\.ERR\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
141 syn match masmDirective "\.ERR1\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
142 syn match masmDirective "\.ERR2\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
143 syn match masmDirective "\.ERRB\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
144 syn match masmDirective "\.ERRDEF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
145 syn match masmDirective "\.ERRDIF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
146 syn match masmDirective "\.ERRDIFI\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
147 syn match masmDirective "\.ERRE\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
148 syn match masmDirective "\.ERRIDN\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
149 syn match masmDirective "\.ERRIDNI\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
150 syn match masmDirective "\.ERRNB\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
151 syn match masmDirective "\.ERRNDEF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
152 syn match masmDirective "\.ERRNZ\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
153 syn match masmDirective "\.LALL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
154 syn match masmDirective "\.SALL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
155 syn match masmDirective "\.XALL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
156 syn match masmDirective "\.LFCOND\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
157 syn match masmDirective "\.SFCOND\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
158 syn match masmDirective "\.TFCOND\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
159 syn match masmDirective "\.CREF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
160 syn match masmDirective "\.NOCREF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
161 syn match masmDirective "\.XCREF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
162 syn match masmDirective "\.LIST\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
163 syn match masmDirective "\.NOLIST\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
164 syn match masmDirective "\.XLIST\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
165 syn match masmDirective "\.LISTALL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
166 syn match masmDirective "\.LISTIF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
167 syn match masmDirective "\.NOLISTIF\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
168 syn match masmDirective "\.LISTMACRO\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
169 syn match masmDirective "\.NOLISTMACRO\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
170 syn match masmDirective "\.LISTMACROALL\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
171 syn match masmDirective "\.FPO\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
172 syn match masmDirective "\.RADIX\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
173 syn match masmDirective "\.SAFESEH\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
174 syn match masmDirective "%OUT\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
175 syn match masmDirective "ALIGN\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
176 syn match masmOption "ALIGN([0-9]\+)"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178 syn keyword masmRegister AX BX CX DX SI DI BP SP
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
179 syn keyword masmRegister CS DS SS ES FS GS
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 syn keyword masmRegister AH BH CH DH AL BL CL DL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 syn keyword masmRegister EAX EBX ECX EDX ESI EDI EBP ESP
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
182 syn keyword masmRegister CR0 CR2 CR3 CR4
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
183 syn keyword masmRegister DR0 DR1 DR2 DR3 DR6 DR7
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
184 syn keyword masmRegister TR3 TR4 TR5 TR6 TR7
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
185 syn match masmRegister "ST([0-7])"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186
3312
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
187 " x86-64 registers
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
188 syn keyword masmRegister RAX RBX RCX RDX RSI RDI RBP RSP
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
189 syn keyword masmRegister R8 R9 R10 R11 R12 R13 R14 R15
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
190 syn keyword masmRegister R8D R9D R10D R11D R12D R13D R14D R15D
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
191 syn keyword masmRegister R8W R9W R10W R11W R12W R13W R14W R15W
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
192 syn keyword masmRegister R8B R9B R10B R11B R12B R13B R14B R15B
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
194 " SSE/AVX registers
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
195 syn match masmRegister "\(X\|Y\)MM[0-9]\>"
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
196 syn match masmRegister "\(X\|Y\)MM1[0-5]\>"
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
197
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
198 " Instruction prefixes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
199 syn keyword masmOpcode LOCK REP REPE REPNE REPNZ REPZ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
200
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
201 " 8086/8088 opcodes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
202 syn keyword masmOpcode AAA AAD AAM AAS ADC ADD AND CALL CBW CLC CLD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
203 syn keyword masmOpcode CLI CMC CMP CMPS CMPSB CMPSW CWD DAA DAS DEC
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
204 syn keyword masmOpcode DIV ESC HLT IDIV IMUL IN INC INT INTO IRET
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
205 syn keyword masmOpcode JCXZ JMP LAHF LDS LEA LES LODS LODSB LODSW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
206 syn keyword masmOpcode LOOP LOOPE LOOPEW LOOPNE LOOPNEW LOOPNZ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
207 syn keyword masmOpcode LOOPNZW LOOPW LOOPZ LOOPZW MOV MOVS MOVSB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
208 syn keyword masmOpcode MOVSW MUL NEG NOP NOT OR OUT POP POPF PUSH
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
209 syn keyword masmOpcode PUSHF RCL RCR RET RETF RETN ROL ROR SAHF SAL
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
210 syn keyword masmOpcode SAR SBB SCAS SCASB SCASW SHL SHR STC STD STI
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
211 syn keyword masmOpcode STOS STOSB STOSW SUB TEST WAIT XCHG XLAT XLATB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
212 syn keyword masmOpcode XOR
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
213 syn match masmOpcode "J\(P[EO]\|\(N\?\([ABGL]E\?\|[CEOPSZ]\)\)\)\>"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
215 " 80186 opcodes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
216 syn keyword masmOpcode BOUND ENTER INS INSB INSW LEAVE OUTS OUTSB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
217 syn keyword masmOpcode OUTSW POPA PUSHA PUSHW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
218
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
219 " 80286 opcodes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
220 syn keyword masmOpcode ARPL LAR LSL SGDT SIDT SLDT SMSW STR VERR VERW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
221
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
222 " 80286/80386 privileged opcodes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
223 syn keyword masmOpcode CLTS LGDT LIDT LLDT LMSW LTR
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
224
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
225 " 80386 opcodes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
226 syn keyword masmOpcode BSF BSR BT BTC BTR BTS CDQ CMPSD CWDE INSD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
227 syn keyword masmOpcode IRETD IRETDF IRETF JECXZ LFS LGS LODSD LOOPD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
228 syn keyword masmOpcode LOOPED LOOPNED LOOPNZD LOOPZD LSS MOVSD MOVSX
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
229 syn keyword masmOpcode MOVZX OUTSD POPAD POPFD PUSHAD PUSHD PUSHFD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
230 syn keyword masmOpcode SCASD SHLD SHRD STOSD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
231 syn match masmOpcode "SET\(P[EO]\|\(N\?\([ABGL]E\?\|[CEOPSZ]\)\)\)\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
232
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
233 " 80486 opcodes
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
234 syn keyword masmOpcode BSWAP CMPXCHG INVD INVLPG WBINVD XADD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
235
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
236 " Floating-point opcodes as of 487
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237 syn keyword masmOpFloat F2XM1 FABS FADD FADDP FBLD FBSTP FCHS FCLEX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 syn keyword masmOpFloat FNCLEX FCOM FCOMP FCOMPP FCOS FDECSTP FDISI
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 syn keyword masmOpFloat FNDISI FDIV FDIVP FDIVR FDIVRP FENI FNENI
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240 syn keyword masmOpFloat FFREE FIADD FICOM FICOMP FIDIV FIDIVR FILD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241 syn keyword masmOpFloat FIMUL FINCSTP FINIT FNINIT FIST FISTP FISUB
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242 syn keyword masmOpFloat FISUBR FLD FLDCW FLDENV FLDLG2 FLDLN2 FLDL2E
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243 syn keyword masmOpFloat FLDL2T FLDPI FLDZ FLD1 FMUL FMULP FNOP FPATAN
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
244 syn keyword masmOpFloat FPREM FPREM1 FPTAN FRNDINT FRSTOR FSAVE FNSAVE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
245 syn keyword masmOpFloat FSCALE FSETPM FSIN FSINCOS FSQRT FST FSTCW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
246 syn keyword masmOpFloat FNSTCW FSTENV FNSTENV FSTP FSTSW FNSTSW FSUB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
247 syn keyword masmOpFloat FSUBP FSUBR FSUBRP FTST FUCOM FUCOMP FUCOMPP
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
248 syn keyword masmOpFloat FWAIT FXAM FXCH FXTRACT FYL2X FYL2XP1
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
249
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
250 " Floating-point opcodes in Pentium and later processors
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
251 syn keyword masmOpFloat FCMOVE FCMOVNE FCMOVB FCMOVBE FCMOVNB FCMOVNBE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
252 syn keyword masmOpFloat FCMOVU FCMOVNU FCOMI FUCOMI FCOMIP FUCOMIP
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
253 syn keyword masmOpFloat FXSAVE FXRSTOR
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
254
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
255 " MMX opcodes (Pentium w/ MMX, Pentium II, and later)
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
256 syn keyword masmOpcode MOVD MOVQ PACKSSWB PACKSSDW PACKUSWB
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
257 syn keyword masmOpcode PUNPCKHBW PUNPCKHWD PUNPCKHDQ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
258 syn keyword masmOpcode PUNPCKLBW PUNPCKLWD PUNPCKLDQ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
259 syn keyword masmOpcode PADDB PADDW PADDD PADDSB PADDSW PADDUSB PADDUSW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
260 syn keyword masmOpcode PSUBB PSUBW PSUBD PSUBSB PSUBSW PSUBUSB PSUBUSW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
261 syn keyword masmOpcode PMULHW PMULLW PMADDWD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
262 syn keyword masmOpcode PCMPEQB PCMPEQW PCMPEQD PCMPGTB PCMPGTW PCMPGTD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
263 syn keyword masmOpcode PAND PANDN POR PXOR
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
264 syn keyword masmOpcode PSLLW PSLLD PSLLQ PSRLW PSRLD PSRLQ PSRAW PSRAD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
265 syn keyword masmOpcode EMMS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
266
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
267 " SSE opcodes (Pentium III and later)
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
268 syn keyword masmOpcode MOVAPS MOVUPS MOVHPS MOVHLPS MOVLPS MOVLHPS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
269 syn keyword masmOpcode MOVMSKPS MOVSS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
270 syn keyword masmOpcode ADDPS ADDSS SUBPS SUBSS MULPS MULSS DIVPS DIVSS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
271 syn keyword masmOpcode RCPPS RCPSS SQRTPS SQRTSS RSQRTPS RSQRTSS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
272 syn keyword masmOpcode MAXPS MAXSS MINPS MINSS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
273 syn keyword masmOpcode CMPPS CMPSS COMISS UCOMISS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
274 syn keyword masmOpcode ANDPS ANDNPS ORPS XORPS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
275 syn keyword masmOpcode SHUFPS UNPCKHPS UNPCKLPS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
276 syn keyword masmOpcode CVTPI2PS CVTSI2SS CVTPS2PI CVTTPS2PI
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
277 syn keyword masmOpcode CVTSS2SI CVTTSS2SI
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
278 syn keyword masmOpcode LDMXCSR STMXCSR
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
279 syn keyword masmOpcode PAVGB PAVGW PEXTRW PINSRW PMAXUB PMAXSW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
280 syn keyword masmOpcode PMINUB PMINSW PMOVMSKB PMULHUW PSADBW PSHUFW
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
281 syn keyword masmOpcode MASKMOVQ MOVNTQ MOVNTPS SFENCE
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
282 syn keyword masmOpcode PREFETCHT0 PREFETCHT1 PREFETCHT2 PREFETCHNTA
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
283
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
284 " SSE2 opcodes (Pentium 4 and later)
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
285 syn keyword masmOpcode MOVAPD MOVUPD MOVHPD MOVLPD MOVMSKPD MOVSD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
286 syn keyword masmOpcode ADDPD ADDSD SUBPD SUBSD MULPD MULSD DIVPD DIVSD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
287 syn keyword masmOpcode SQRTPD SQRTSD MAXPD MAXSD MINPD MINSD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
288 syn keyword masmOpcode ANDPD ANDNPD ORPD XORPD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
289 syn keyword masmOpcode CMPPD CMPSD COMISD UCOMISD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
290 syn keyword masmOpcode SHUFPD UNPCKHPD UNPCKLPD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
291 syn keyword masmOpcode CVTPD2PI CVTTPD2PI CVTPI2PD CVTPD2DQ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
292 syn keyword masmOpcode CVTTPD2DQ CVTDQ2PD CVTPS2PD CVTPD2PS
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
293 syn keyword masmOpcode CVTSS2SD CVTSD2SS CVTSD2SI CVTTSD2SI CVTSI2SD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
294 syn keyword masmOpcode CVTDQ2PS CVTPS2DQ CVTTPS2DQ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
295 syn keyword masmOpcode MOVDQA MOVDQU MOVQ2DQ MOVDQ2Q PMULUDQ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
296 syn keyword masmOpcode PADDQ PSUBQ PSHUFLW PSHUFHW PSHUFD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
297 syn keyword masmOpcode PSLLDQ PSRLDQ PUNPCKHQDQ PUNPCKLQDQ
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
298 syn keyword masmOpcode CLFLUSH LFENCE MFENCE PAUSE MASKMOVDQU
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
299 syn keyword masmOpcode MOVNTPD MOVNTDQ MOVNTI
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
300
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
301 " SSE3 opcodes (Pentium 4 w/ Hyper-Threading and later)
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
302 syn keyword masmOpcode FISTTP LDDQU ADDSUBPS ADDSUBPD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
303 syn keyword masmOpcode HADDPS HSUBPS HADDPD HSUBPD
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
304 syn keyword masmOpcode MOVSHDUP MOVSLDUP MOVDDUP MONITOR MWAIT
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
305
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
306 " SSSE3 opcodes (Core and later)
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
307 syn keyword masmOpcode PSIGNB PSIGNW PSIGND PABSB PABSW PABSD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
308 syn keyword masmOpcode PALIGNR PSHUFB PMULHRSW PMADDUBSW
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
309 syn keyword masmOpcode PHSUBW PHSUBD PHSUBSW PHADDW PHADDD PHADDSW
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
310
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
311 " SSE 4.1 opcodes (Penryn and later)
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
312 syn keyword masmOpcode MPSADBW PHMINPOSUW PMULDQ PMULLD DPPS DPPD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
313 syn keyword masmOpcode BLENDPS BLENDPD BLENDVPS BLENDVPD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
314 syn keyword masmOpcode PBLENDVB PBLENDW
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
315 syn keyword masmOpcode PMINSB PMAXSB PMINSD PMAXSD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
316 syn keyword masmOpcode PMINUW PMAXUW PMINUD PMAXUD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
317 syn keyword masmOpcode ROUNDPS ROUNDSS ROUNDPD ROUNDSD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
318 syn keyword masmOpcode INSERTPS PINSRB PINSRD PINSRQ
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
319 syn keyword masmOpcode EXTRACTPS PEXTRB PEXTRD PEXTRQ
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
320 syn keyword masmOpcode PMOVSXBW PMOVZXBW PMOVSXBD PMOVZXBD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
321 syn keyword masmOpcode PMOVSXBQ PMOVZXBQ PMOVSXWD PMOVZXWD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
322 syn keyword masmOpcode PMOVSXWQ PMOVZXWQ PMOVSXDQ PMOVZXDQ
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
323 syn keyword masmOpcode PTEST PCMPEQQ PACKUSDW MOVNTDQA
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
324
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
325 " SSE 4.2 opcodes (Nehalem and later)
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
326 syn keyword masmOpcode PCMPESTRI PCMPESTRM PCMPISTRI PCMPISTRM PCMPGTQ
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
327 syn keyword masmOpcode CRC32 POPCNT LZCNT
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
328
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
329 " AES-NI (Westmere (2010) and later)
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
330 syn keyword masmOpcode AESENC AESENCLAST AESDEC AESDECLAST
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
331 syn keyword masmOpcode AESKEYGENASSIST AESIMC PCLMULQDQ
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
332
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
333 " AVX (Sandy Bridge (2011) and later)
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
334 syn keyword masmOpcode VBROADCASTSS VBROADCASTSD VBROADCASTF128
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
335 syn keyword masmOpcode VINSERTF128 VEXTRACTF128 VMASKMOVPS VMASKMOVPD
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
336 syn keyword masmOpcode VPERMILPS VPERMILPD VPERM2F128
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
337 syn keyword masmOpcode VZEROALL VZEROUPPER
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
338
1121
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
339 " Other opcodes in Pentium and later processors
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
340 syn keyword masmOpcode CMPXCHG8B CPUID UD2
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
341 syn keyword masmOpcode RSM RDMSR WRMSR RDPMC RDTSC SYSENTER SYSEXIT
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
342 syn match masmOpcode "CMOV\(P[EO]\|\(N\?\([ABGL]E\?\|[CEOPSZ]\)\)\)\>"
e63691e7c504 updated for version 7.1a
vimboss
parents: 7
diff changeset
343
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
345 " The default highlighting
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
346 hi def link masmLabel PreProc
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
347 hi def link masmComment Comment
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
348 hi def link masmDirective Statement
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
349 hi def link masmType Type
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
350 hi def link masmOperator Type
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
351 hi def link masmOption Special
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
352 hi def link masmRegister Special
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
353 hi def link masmString String
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
354 hi def link masmText String
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
355 hi def link masmTitle Title
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
356 hi def link masmOpcode Statement
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
357 hi def link masmOpFloat Statement
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
358
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
359 hi def link masmHexadecimal Number
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
360 hi def link masmDecimal Number
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
361 hi def link masmOctal Number
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
362 hi def link masmBinary Number
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
363 hi def link masmFloatRaw Number
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
364 hi def link masmFloat Number
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
365
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
366 hi def link masmIdentifier Identifier
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
367
5487
0c37f66b4f3b Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
368 syntax sync minlines=50
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
369
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
370 let b:current_syntax = "masm"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
371
3312
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
372 let &cpo = s:cpo_save
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
373 unlet s:cpo_save
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 2034
diff changeset
374
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
375 " vim: ts=8