d.vim (28632B)
1 " Vim syntax file for the D programming language (version 1.076 and 2.069). 2 " 3 " Language: D 4 " Maintainer: Jesse Phillips <Jesse.K.Phillips+D@gmail.com> 5 " Last Change: 2016 Feb 2 6 " Version: 0.28 7 " 8 " Contributors: 9 " - Jason Mills: original Maintainer 10 " - Kirk McDonald 11 " - Tim Keating 12 " - Frank Benoit 13 " - Shougo Matsushita 14 " - Ellery Newcomer 15 " - Steven N. Oliver 16 " - Sohgo Takeuchi 17 " - Robert Clipsham 18 " - Petar Kirov 19 " 20 " Please submit bugs/comments/suggestions to the github repo: 21 " https://github.com/JesseKPhillips/d.vim 22 " 23 " Options: 24 " d_comment_strings - Set to highlight strings and numbers in comments. 25 " 26 " d_hl_operator_overload - Set to highlight D's specially named functions 27 " that when overloaded implement unary and binary operators (e.g. opCmp). 28 " 29 " d_hl_object_types - Set to highlight some common types from object.di. 30 31 " Quit when a syntax file was already loaded 32 if exists("b:current_syntax") 33 finish 34 endif 35 36 " Support cpoptions 37 let s:cpo_save = &cpo 38 set cpo&vim 39 40 " Set the current syntax to be known as d 41 let b:current_syntax = "d" 42 43 " Keyword definitions 44 " 45 syn keyword dExternal contained import module 46 syn keyword dAssert assert 47 syn keyword dConditional if else switch 48 syn keyword dBranch goto break continue 49 syn keyword dRepeat while for do foreach foreach_reverse 50 syn keyword dBoolean true false 51 syn keyword dConstant null 52 syn keyword dConstant __FILE__ __LINE__ __EOF__ __VERSION__ 53 syn keyword dConstant __DATE__ __TIME__ __TIMESTAMP__ __VENDOR__ 54 syn keyword dConstant __MODULE__ __FUNCTION__ __PRETTY_FUNCTION__ 55 syn keyword dTypedef alias typedef 56 syn keyword dStructure template interface class struct union 57 syn keyword dEnum enum 58 syn keyword dOperator new delete typeof typeid cast align is 59 syn keyword dOperator this super 60 if exists("d_hl_operator_overload") 61 syn keyword dOpOverload opNeg opCom opPostInc opPostDec opCast opAdd 62 syn keyword dOpOverload opSub opSub_r opMul opDiv opDiv_r opMod 63 syn keyword dOpOverload opMod_r opAnd opOr opXor opShl opShl_r opShr 64 syn keyword dOpOverload opShr_r opUShr opUShr_r opCat 65 syn keyword dOpOverload opCat_r opEquals opCmp 66 syn keyword dOpOverload opAssign opAddAssign opSubAssign opMulAssign 67 syn keyword dOpOverload opDivAssign opModAssign opAndAssign 68 syn keyword dOpOverload opOrAssign opXorAssign opShlAssign 69 syn keyword dOpOverload opShrAssign opUShrAssign opCatAssign 70 syn keyword dOpOverload opIndex opIndexAssign opIndexOpAssign 71 syn keyword dOpOverload opCall opSlice opSliceAssign opSliceOpAssign 72 syn keyword dOpOverload opPos opAdd_r opMul_r opAnd_r opOr_r opXor_r 73 syn keyword dOpOverload opIn opIn_r opPow opDispatch opStar opDot 74 syn keyword dOpOverload opApply opApplyReverse opDollar 75 syn keyword dOpOverload opUnary opIndexUnary opSliceUnary 76 syn keyword dOpOverload opBinary opBinaryRight 77 endif 78 79 syn keyword dType byte ubyte short ushort int uint long ulong cent ucent 80 syn keyword dType void bool Object 81 syn keyword dType float double real 82 syn keyword dType ushort int uint long ulong float 83 syn keyword dType char wchar dchar string wstring dstring 84 syn keyword dType ireal ifloat idouble creal cfloat cdouble 85 syn keyword dType size_t ptrdiff_t sizediff_t equals_t hash_t 86 if exists("d_hl_object_types") 87 syn keyword dType Object Throwable AssociativeArray Error Exception 88 syn keyword dType Interface OffsetTypeInfo TypeInfo TypeInfo_Typedef 89 syn keyword dType TypeInfo_Enum TypeInfo_Pointer TypeInfo_Array 90 syn keyword dType TypeInfo_StaticArray TypeInfo_AssociativeArray 91 syn keyword dType TypeInfo_Function TypeInfo_Delegate TypeInfo_Class 92 syn keyword dType ClassInfo TypeInfo_Interface TypeInfo_Struct 93 syn keyword dType TypeInfo_Tuple TypeInfo_Const TypeInfo_Invariant 94 syn keyword dType TypeInfo_Shared TypeInfo_Inout MemberInfo 95 syn keyword dType MemberInfo_field MemberInfo_function ModuleInfo 96 endif 97 syn keyword dDebug deprecated unittest invariant 98 syn keyword dExceptions throw try catch finally 99 syn keyword dScopeDecl public protected private export package 100 syn keyword dStatement debug return with 101 syn keyword dStatement function delegate __ctfe mixin macro __simd 102 syn keyword dStatement in out body 103 syn keyword dStorageClass contained in out scope 104 syn keyword dStorageClass inout ref lazy pure nothrow 105 syn keyword dStorageClass auto static override final abstract volatile 106 syn keyword dStorageClass __gshared __vector 107 syn keyword dStorageClass synchronized shared immutable const lazy 108 syn keyword dIdentifier _arguments _argptr __vptr __monitor 109 syn keyword dIdentifier _ctor _dtor __argTypes __overloadset 110 syn keyword dScopeIdentifier contained exit success failure 111 syn keyword dTraitsIdentifier contained isAbstractClass isArithmetic 112 syn keyword dTraitsIdentifier contained isAssociativeArray isFinalClass 113 syn keyword dTraitsIdentifier contained isPOD isNested isFloating 114 syn keyword dTraitsIdentifier contained isIntegral isScalar isStaticArray 115 syn keyword dTraitsIdentifier contained isUnsigned isVirtualFunction 116 syn keyword dTraitsIdentifier contained isVirtualMethod isAbstractFunction 117 syn keyword dTraitsIdentifier contained isFinalFunction isStaticFunction 118 syn keyword dTraitsIdentifier contained isOverrideFunction isTemplate 119 syn keyword dTraitsIdentifier contained isRef isOut isLazy hasMember 120 syn keyword dTraitsIdentifier contained identifier getAliasThis 121 syn keyword dTraitsIdentifier contained getAttributes getFunctionAttributes getMember 122 syn keyword dTraitsIdentifier contained getOverloads getPointerBitmap getProtection 123 syn keyword dTraitsIdentifier contained getVirtualFunctions getVirtualIndex 124 syn keyword dTraitsIdentifier contained getVirtualMethods getUnitTests 125 syn keyword dTraitsIdentifier contained parent classInstanceSize allMembers 126 syn keyword dTraitsIdentifier contained derivedMembers isSame compiles 127 syn keyword dPragmaIdentifier contained inline lib mangle msg startaddress GNU_asm 128 syn keyword dExternIdentifier contained C C++ D Windows Pascal System Objective-C 129 syn keyword dAttribute contained safe trusted system 130 syn keyword dAttribute contained property disable nogc 131 syn keyword dVersionIdentifier contained DigitalMars GNU LDC SDC D_NET 132 syn keyword dVersionIdentifier contained X86 X86_64 ARM PPC PPC64 IA64 MIPS MIPS64 Alpha 133 syn keyword dVersionIdentifier contained SPARC SPARC64 S390 S390X HPPA HPPA64 SH SH64 134 syn keyword dVersionIdentifier contained linux Posix OSX FreeBSD Windows Win32 Win64 135 syn keyword dVersionIdentifier contained OpenBSD BSD Solaris AIX SkyOS SysV3 SysV4 Hurd 136 syn keyword dVersionIdentifier contained Cygwin MinGW 137 syn keyword dVersionIdentifier contained LittleEndian BigEndian 138 syn keyword dVersionIdentifier contained D_InlineAsm_X86 D_InlineAsm_X86_64 139 syn keyword dVersionIdentifier contained D_Version2 D_Coverage D_Ddoc D_LP64 D_PIC 140 syn keyword dVersionIdentifier contained unittest assert none all 141 142 syn cluster dComment contains=dNestedComment,dBlockComment,dLineComment 143 144 " Highlight the sharpbang 145 syn match dSharpBang "\%^#!.*" display 146 147 " Attributes/annotations 148 syn match dAnnotation "@[_$a-zA-Z][_$a-zA-Z0-9_]*\>" contains=dAttribute 149 150 " Version Identifiers 151 syn match dVersion "\<version\>" 152 syn match dVersion "\<version\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+7 contains=dVersionIdentifier 153 154 " Scope Identifiers 155 syn match dStatement "\<scope\>" 156 syn match dStatement "\<scope\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+5 contains=dScopeIdentifier 157 158 " Traits Statement 159 syn match dStatement "\<__traits\>" 160 syn match dStatement "\<__traits\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+8 contains=dTraitsIdentifier 161 162 " Pragma Statement 163 syn match dPragma "\<pragma\>" 164 syn match dPragma "\<pragma\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+6 contains=dPragmaIdentifier 165 166 " Necessary to highlight C++ in extern modifiers. 167 syn match dExternIdentifier "C\(++\)\?" contained 168 169 " Extern Identifiers 170 syn match dExternal "\<extern\>" 171 syn match dExtern "\<extern\s*([_a-zA-Z][_a-zA-Z0-9\+]*\>"he=s+6 contains=dExternIdentifier 172 173 " Make import a region to prevent highlighting keywords 174 syn region dImport start="\<import\_s" end=";" contains=dExternal,@dComment 175 176 " Make module a region to prevent highlighting keywords 177 syn region dImport start="\<module\_s" end=";" contains=dExternal,@dComment 178 179 " dTokens is used by the token string highlighting 180 syn cluster dTokens contains=dExternal,dConditional,dBranch,dRepeat,dBoolean 181 syn cluster dTokens add=dConstant,dTypedef,dStructure,dOperator,dOpOverload 182 syn cluster dTokens add=dType,dDebug,dExceptions,dScopeDecl,dStatement 183 syn cluster dTokens add=dStorageClass,dPragma,dAssert,dAnnotation,dEnum 184 syn cluster dTokens add=dParenString,dBrackString,dAngleString,dCurlyString 185 syn cluster dTokens add=dTokenString,dDelimString,dHereString 186 187 " Create a match for parameter lists to identify storage class 188 syn region paramlist start="(" end=")" contains=@dTokens 189 190 " Labels 191 " 192 " We contain dScopeDecl so public: private: etc. are not highlighted like labels 193 syn match dUserLabel "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=dLabel,dScopeDecl,dEnum 194 syn keyword dLabel case default 195 196 syn cluster dTokens add=dUserLabel,dLabel 197 198 " Comments 199 " 200 syn match dCommentError display "\*/" 201 syn match dNestedCommentError display "+/" 202 203 syn keyword dTodo contained TODO FIXME TEMP REFACTOR REVIEW HACK BUG XXX 204 syn match dCommentStar contained "^\s*\*[^/]"me=e-1 205 syn match dCommentStar contained "^\s*\*$" 206 syn match dCommentPlus contained "^\s*+[^/]"me=e-1 207 syn match dCommentPlus contained "^\s*+$" 208 if exists("d_comment_strings") 209 syn region dBlockCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1,he=s-1 contains=dCommentStar,dUnicode,dEscSequence,@Spell 210 syn region dNestedCommentString contained start=+"+ end=+"+ end="+"me=s-1,he=s-1 contains=dCommentPlus,dUnicode,dEscSequence,@Spell 211 syn region dLineCommentString contained start=+"+ end=+$\|"+ contains=dUnicode,dEscSequence,@Spell 212 endif 213 214 syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,dCommentStartError,@Spell fold 215 syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell fold 216 syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell 217 218 hi link dLineCommentString dBlockCommentString 219 hi link dBlockCommentString dString 220 hi link dNestedCommentString dString 221 hi link dCommentStar dBlockComment 222 hi link dCommentPlus dNestedComment 223 224 syn cluster dTokens add=dBlockComment,dNestedComment,dLineComment 225 226 " /+ +/ style comments and strings that span multiple lines can cause 227 " problems. To play it safe, set minlines to a large number. 228 syn sync minlines=200 229 " Use ccomment for /* */ style comments 230 syn sync ccomment dBlockComment 231 232 " Characters 233 " 234 syn match dSpecialCharError contained "[^']" 235 236 " Escape sequences (oct,specal char,hex,wchar, character entities \&xxx;) 237 " These are not contained because they are considered string literals. 238 syn match dEscSequence "\\\(\o\{1,3}\|[\"\\'\\?ntbrfva]\|u\x\{4}\|U\x\{8}\|x\x\x\)" 239 syn match dEscSequence "\\&[^;& \t]\+;" 240 syn match dCharacter "'[^']*'" contains=dEscSequence,dSpecialCharError 241 syn match dCharacter "'\\''" contains=dEscSequence 242 syn match dCharacter "'[^\\]'" 243 244 syn cluster dTokens add=dEscSequence,dCharacter 245 246 " Unicode characters 247 " 248 syn match dUnicode "\\u\d\{4\}" 249 250 " String. 251 " 252 syn match dFormat display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlL]\|ll\)\=\([bdiuoxXDOUfeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained 253 syn match dFormat display "%%" contained 254 255 syn region dString start=+"+ end=+"[cwd]\=+ skip=+\\\\\|\\"+ contains=dFormat,dEscSequence,@Spell 256 syn region dRawString start=+`+ end=+`[cwd]\=+ contains=@Spell 257 syn region dRawString start=+r"+ end=+"[cwd]\=+ contains=@Spell 258 syn region dHexString start=+x"+ end=+"[cwd]\=+ contains=@Spell 259 syn region dDelimString start=+q"\z(.\)+ end=+\z1"+ contains=@Spell 260 syn region dHereString start=+q"\z(\I\i*\)\n+ end=+^\z1"+ contains=@Spell 261 262 263 " Nesting delimited string contents 264 " 265 syn region dNestParenString start=+(+ end=+)+ contained transparent contains=dNestParenString,@Spell 266 syn region dNestBrackString start=+\[+ end=+\]+ contained transparent contains=dNestBrackString,@Spell 267 syn region dNestAngleString start=+<+ end=+>+ contained transparent contains=dNestAngleString,@Spell 268 syn region dNestCurlyString start=+{+ end=+}+ contained transparent contains=dNestCurlyString,@Spell 269 270 " Nesting delimited strings 271 " 272 syn region dParenString matchgroup=dParenString start=+q"(+ end=+)"+ contains=dNestParenString,@Spell 273 syn region dBrackString matchgroup=dBrackString start=+q"\[+ end=+\]"+ contains=dNestBrackString,@Spell 274 syn region dAngleString matchgroup=dAngleString start=+q"<+ end=+>"+ contains=dNestAngleString,@Spell 275 syn region dCurlyString matchgroup=dCurlyString start=+q"{+ end=+}"+ contains=dNestCurlyString,@Spell 276 277 hi link dParenString dNestString 278 hi link dBrackString dNestString 279 hi link dAngleString dNestString 280 hi link dCurlyString dNestString 281 282 syn cluster dTokens add=dString,dRawString,dHexString,dDelimString,dNestString 283 284 " Token strings 285 " 286 syn region dNestTokenString start=+{+ end=+}+ contained contains=dNestTokenString,@dTokens,dFormat 287 syn region dTokenString matchgroup=dTokenStringBrack transparent start=+q{+ end=+}+ contains=dNestTokenString,@dTokens,dFormat 288 289 syn cluster dTokens add=dTokenString 290 291 " Numbers 292 " 293 syn case ignore 294 295 syn match dDec display "\<\d[0-9_]*\(u\=l\=\|l\=u\=\)\>" 296 297 " Hex number 298 syn match dHex display "\<0x[0-9a-f_]\+\(u\=l\=\|l\=u\=\)\>" 299 300 syn match dOctal display "\<0[0-7_]\+\(u\=l\=\|l\=u\=\)\>" 301 " flag an octal number with wrong digits 302 syn match dOctalError display "\<0[0-7_]*[89][0-9_]*" 303 304 " binary numbers 305 syn match dBinary display "\<0b[01_]\+\(u\=l\=\|l\=u\=\)\>" 306 307 "floating point without the dot 308 syn match dFloat display "\<\d[0-9_]*\(fi\=\|l\=i\)\>" 309 "floating point number, with dot, optional exponent 310 syn match dFloat display "\<\d[0-9_]*\.[0-9_]*\(e[-+]\=[0-9_]\+\)\=[fl]\=i\=" 311 "floating point number, starting with a dot, optional exponent 312 syn match dFloat display "\(\.[0-9_]\+\)\(e[-+]\=[0-9_]\+\)\=[fl]\=i\=\>" 313 "floating point number, without dot, with exponent 314 "syn match dFloat display "\<\d\+e[-+]\=\d\+[fl]\=\>" 315 syn match dFloat display "\<\d[0-9_]*e[-+]\=[0-9_]\+[fl]\=\>" 316 317 "floating point without the dot 318 syn match dHexFloat display "\<0x[0-9a-f_]\+\(fi\=\|l\=i\)\>" 319 "floating point number, with dot, optional exponent 320 syn match dHexFloat display "\<0x[0-9a-f_]\+\.[0-9a-f_]*\(p[-+]\=[0-9_]\+\)\=[fl]\=i\=" 321 "floating point number, without dot, with exponent 322 syn match dHexFloat display "\<0x[0-9a-f_]\+p[-+]\=[0-9_]\+[fl]\=i\=\>" 323 324 syn cluster dTokens add=dDec,dHex,dOctal,dOctalError,dBinary,dFloat,dHexFloat 325 326 syn case match 327 328 " Pragma (preprocessor) support 329 " TODO: Highlight following Integer and optional Filespec. 330 syn region dPragma start="#\s*\(line\>\)" skip="\\$" end="$" 331 332 " Block 333 " 334 syn region dBlock start="{" end="}" transparent fold 335 336 337 " The default highlighting. 338 " 339 hi def link dBinary Number 340 hi def link dDec Number 341 hi def link dHex Number 342 hi def link dOctal Number 343 hi def link dFloat Float 344 hi def link dHexFloat Float 345 hi def link dDebug Debug 346 hi def link dBranch Conditional 347 hi def link dConditional Conditional 348 hi def link dLabel Label 349 hi def link dUserLabel Label 350 hi def link dRepeat Repeat 351 hi def link dExceptions Exception 352 hi def link dAssert Statement 353 hi def link dStatement Statement 354 hi def link dScopeDecl dStorageClass 355 hi def link dStorageClass StorageClass 356 hi def link dBoolean Boolean 357 hi def link dUnicode Special 358 hi def link dTokenStringBrack String 359 hi def link dHereString String 360 hi def link dNestString String 361 hi def link dDelimString String 362 hi def link dRawString String 363 hi def link dString String 364 hi def link dHexString String 365 hi def link dCharacter Character 366 hi def link dEscSequence SpecialChar 367 hi def link dFormat SpecialChar 368 hi def link dSpecialCharError Error 369 hi def link dOctalError Error 370 hi def link dOperator Operator 371 hi def link dOpOverload Identifier 372 hi def link dConstant Constant 373 hi def link dTypedef Typedef 374 hi def link dEnum Structure 375 hi def link dStructure Structure 376 hi def link dTodo Todo 377 hi def link dType Type 378 hi def link dLineComment Comment 379 hi def link dBlockComment Comment 380 hi def link dNestedComment Comment 381 hi def link dCommentError Error 382 hi def link dNestedCommentError Error 383 hi def link dCommentStartError Error 384 hi def link dExternal Include 385 hi def link dAnnotation PreProc 386 hi def link dSharpBang PreProc 387 hi def link dAttribute StorageClass 388 hi def link dIdentifier Identifier 389 hi def link dVersion dStatement 390 hi def link dVersionIdentifier Identifier 391 hi def link dScopeIdentifier Identifier 392 hi def link dTraitsIdentifier Identifier 393 hi def link dPragma PreProc 394 hi def link dPragmaIdentifier Identifier 395 hi def link dExtern dExternal 396 hi def link dExternIdentifier Identifier 397 398 " Marks contents of the asm statement body as special 399 400 syn match dAsmStatement "\<asm\>" 401 syn region dAsmBody start="asm[\n]*\s*{"hs=e+1 end="}"he=e-1 contains=dAsmStatement,dAsmOpCode,@dComment,DUserLabel 402 403 hi def link dAsmBody dUnicode 404 hi def link dAsmStatement dStatement 405 hi def link dAsmOpCode Identifier 406 407 syn keyword dAsmOpCode contained aaa aad aam aas 408 syn keyword dAsmOpCode contained add addpd addps addsd 409 syn keyword dAsmOpCode contained and andnpd andnps andpd 410 syn keyword dAsmOpCode contained arpl bound bsf bsr 411 syn keyword dAsmOpCode contained bt btc btr bts 412 syn keyword dAsmOpCode contained call bswap andps addss 413 syn keyword dAsmOpCode contained cbw cdq clc cld 414 syn keyword dAsmOpCode contained cli clts cmc cmova 415 syn keyword dAsmOpCode contained cmovb cmovbe cmovc cmove 416 syn keyword dAsmOpCode contained cmovge cmovl cmovle cmovna 417 syn keyword dAsmOpCode contained cmovnae cmovg cmovae clflush 418 syn keyword dAsmOpCode contained cmovnb cmovnbe cmovnc cmovne 419 syn keyword dAsmOpCode contained cmovnge cmovnl cmovnle cmovno 420 syn keyword dAsmOpCode contained cmovns cmovnz cmovo cmovp 421 syn keyword dAsmOpCode contained cmovpo cmovs cmovz cmp 422 syn keyword dAsmOpCode contained cmppd cmovpe cmovnp cmovng 423 syn keyword dAsmOpCode contained cmpps cmps cmpsb cmpsd 424 syn keyword dAsmOpCode contained cmpsw cmpxch8b cmpxchg comisd 425 syn keyword dAsmOpCode contained cpuid cvtdq2pd cvtdq2ps cvtpd2dq 426 syn keyword dAsmOpCode contained cvtpd2ps cvtpi2pd cvtpi2ps cvtps2dq 427 syn keyword dAsmOpCode contained cvtps2pd cvtpd2pi comiss cmpss 428 syn keyword dAsmOpCode contained cvtps2pi cvtsd2si cvtsd2ss cvtsi2sd 429 syn keyword dAsmOpCode contained cvtss2sd cvtss2si cvttpd2dq cvttpd2pi 430 syn keyword dAsmOpCode contained cvttps2pi cvttsd2si cvttss2si cwd 431 syn keyword dAsmOpCode contained da daa das db 432 syn keyword dAsmOpCode contained dd cwde cvttps2dq cvtsi2ss 433 syn keyword dAsmOpCode contained de dec df di 434 syn keyword dAsmOpCode contained divpd divps divsd divss 435 syn keyword dAsmOpCode contained dq ds dt dw 436 syn keyword dAsmOpCode contained enter f2xm1 fabs fadd 437 syn keyword dAsmOpCode contained faddp emms dl div 438 syn keyword dAsmOpCode contained fbld fbstp fchs fclex 439 syn keyword dAsmOpCode contained fcmovbe fcmove fcmovnb fcmovnbe 440 syn keyword dAsmOpCode contained fcmovnu fcmovu fcom fcomi 441 syn keyword dAsmOpCode contained fcomp fcompp fcos fdecstp 442 syn keyword dAsmOpCode contained fdisi fcomip fcmovne fcmovb 443 syn keyword dAsmOpCode contained fdiv fdivp fdivr fdivrp 444 syn keyword dAsmOpCode contained ffree fiadd ficom ficomp 445 syn keyword dAsmOpCode contained fidivr fild fimul fincstp 446 syn keyword dAsmOpCode contained fist fistp fisub fisubr 447 syn keyword dAsmOpCode contained fld finit fidiv feni 448 syn keyword dAsmOpCode contained fld1 fldcw fldenv fldl2e 449 syn keyword dAsmOpCode contained fldlg2 fldln2 fldpi fldz 450 syn keyword dAsmOpCode contained fmulp fnclex fndisi fneni 451 syn keyword dAsmOpCode contained fnop fnsave fnstcw fnstenv 452 syn keyword dAsmOpCode contained fnstsw fninit fmul fldl2t 453 syn keyword dAsmOpCode contained fpatan fprem fprem1 fptan 454 syn keyword dAsmOpCode contained frstor fsave fscale fsetpm 455 syn keyword dAsmOpCode contained fsincos fsqrt fst fstcw 456 syn keyword dAsmOpCode contained fstp fstsw fsub fsubp 457 syn keyword dAsmOpCode contained fsubr fstenv fsin frndint 458 syn keyword dAsmOpCode contained fsubrp ftst fucom fucomi 459 syn keyword dAsmOpCode contained fucomp fucompp fwait fxam 460 syn keyword dAsmOpCode contained fxrstor fxsave fxtract fyl2x 461 syn keyword dAsmOpCode contained hlt idiv imul in 462 syn keyword dAsmOpCode contained inc fyl2xp1 fxch fucomip 463 syn keyword dAsmOpCode contained ins insb insd insw 464 syn keyword dAsmOpCode contained into invd invlpg iret 465 syn keyword dAsmOpCode contained ja jae jb jbe 466 syn keyword dAsmOpCode contained jcxz je jecxz jg 467 syn keyword dAsmOpCode contained jge jc iretd int 468 syn keyword dAsmOpCode contained jl jle jmp jna 469 syn keyword dAsmOpCode contained jnb jnbe jnc jne 470 syn keyword dAsmOpCode contained jnge jnl jnle jno 471 syn keyword dAsmOpCode contained jns jnz jo jp 472 syn keyword dAsmOpCode contained jpe jnp jng jnae 473 syn keyword dAsmOpCode contained jpo js jz lahf 474 syn keyword dAsmOpCode contained ldmxcsr lds lea leave 475 syn keyword dAsmOpCode contained lfence lfs lgdt lgs 476 syn keyword dAsmOpCode contained lldt lmsw lock lods 477 syn keyword dAsmOpCode contained lodsb lidt les lar 478 syn keyword dAsmOpCode contained lodsd lodsw loop loope 479 syn keyword dAsmOpCode contained loopnz loopz lsl lss 480 syn keyword dAsmOpCode contained maskmovdqu maskmovq maxpd maxps 481 syn keyword dAsmOpCode contained maxss mfence minpd minps 482 syn keyword dAsmOpCode contained minsd maxsd ltr loopne 483 syn keyword dAsmOpCode contained minss mov movapd movaps 484 syn keyword dAsmOpCode contained movdq2q movdqa movdqu movhlps 485 syn keyword dAsmOpCode contained movhps movlhps movlpd movlps 486 syn keyword dAsmOpCode contained movmskps movntdq movnti movntpd 487 syn keyword dAsmOpCode contained movntps movmskpd movhpd movd 488 syn keyword dAsmOpCode contained movntq movq movq2dq movs 489 syn keyword dAsmOpCode contained movsd movss movsw movsx 490 syn keyword dAsmOpCode contained movups movzx mul mulpd 491 syn keyword dAsmOpCode contained mulsd mulss neg nop 492 syn keyword dAsmOpCode contained not mulps movupd movsb 493 syn keyword dAsmOpCode contained or orpd orps out 494 syn keyword dAsmOpCode contained outsb outsd outsw packssdw 495 syn keyword dAsmOpCode contained packuswb paddb paddd paddq 496 syn keyword dAsmOpCode contained paddsw paddusb paddusw paddw 497 syn keyword dAsmOpCode contained pand paddsb packsswb outs 498 syn keyword dAsmOpCode contained pandn pavgb pavgw pcmpeqb 499 syn keyword dAsmOpCode contained pcmpeqw pcmpgtb pcmpgtd pcmpgtw 500 syn keyword dAsmOpCode contained pinsrw pmaddwd pmaxsw pmaxub 501 syn keyword dAsmOpCode contained pminub pmovmskb pmulhuw pmulhw 502 syn keyword dAsmOpCode contained pmullw pminsw pextrw pcmpeqd 503 syn keyword dAsmOpCode contained pmuludq pop popa popad 504 syn keyword dAsmOpCode contained popfd por prefetchnta prefetcht0 505 syn keyword dAsmOpCode contained prefetcht2 psadbw pshufd pshufhw 506 syn keyword dAsmOpCode contained pshufw pslld pslldq psllq 507 syn keyword dAsmOpCode contained psllw pshuflw prefetcht1 popf 508 syn keyword dAsmOpCode contained psrad psraw psrld psrldq 509 syn keyword dAsmOpCode contained psrlw psubb psubd psubq 510 syn keyword dAsmOpCode contained psubsw psubusb psubusw psubw 511 syn keyword dAsmOpCode contained punpckhdq punpckhqdq punpckhwd punpcklbw 512 syn keyword dAsmOpCode contained punpckldq punpckhbw psubsb psrlq 513 syn keyword dAsmOpCode contained punpcklqdq punpcklwd push pusha 514 syn keyword dAsmOpCode contained pushf pushfd pxor rcl 515 syn keyword dAsmOpCode contained rcpss rcr rdmsr rdpmc 516 syn keyword dAsmOpCode contained rep repe repne repnz 517 syn keyword dAsmOpCode contained repz rdtsc rcpps pushad 518 syn keyword dAsmOpCode contained ret retf rol ror 519 syn keyword dAsmOpCode contained rsqrtps rsqrtss sahf sal 520 syn keyword dAsmOpCode contained sbb scas scasb scasd 521 syn keyword dAsmOpCode contained seta setae setb setbe 522 syn keyword dAsmOpCode contained setc scasw sar rsm 523 syn keyword dAsmOpCode contained sete setg setge setl 524 syn keyword dAsmOpCode contained setna setnae setnb setnbe 525 syn keyword dAsmOpCode contained setne setng setnge setnl 526 syn keyword dAsmOpCode contained setno setnp setns setnz 527 syn keyword dAsmOpCode contained seto setnle setnc setle 528 syn keyword dAsmOpCode contained setp setpe setpo sets 529 syn keyword dAsmOpCode contained sfence sgdt shl shld 530 syn keyword dAsmOpCode contained shrd shufpd shufps sidt 531 syn keyword dAsmOpCode contained smsw sqrtpd sqrtps sqrtsd 532 syn keyword dAsmOpCode contained sqrtss sldt shr setz 533 syn keyword dAsmOpCode contained stc std sti stmxcsr 534 syn keyword dAsmOpCode contained stosb stosd stosw str 535 syn keyword dAsmOpCode contained subpd subps subsd subss 536 syn keyword dAsmOpCode contained sysexit test ucomisd ucomiss 537 syn keyword dAsmOpCode contained ud2 sysenter sub stos 538 syn keyword dAsmOpCode contained unpckhpd unpckhps unpcklpd unpcklps 539 syn keyword dAsmOpCode contained verw wbinvd wrmsr xadd 540 syn keyword dAsmOpCode contained xchg xlatb xor xorpd 541 syn keyword dAsmOpCode contained xorps pfrcpit1 pfmin movddup 542 syn keyword dAsmOpCode contained addsubpd addsubps fisttp haddps 543 syn keyword dAsmOpCode contained hsubpd hsubps lddqu monitor 544 syn keyword dAsmOpCode contained haddpd xlat wait verr 545 syn keyword dAsmOpCode contained movshdup movsldup mwait pfcmpeq 546 syn keyword dAsmOpCode contained pavgusb pf2id pfacc pfadd 547 syn keyword dAsmOpCode contained pfcmpge pfcmpgt pfmax pfmul 548 syn keyword dAsmOpCode contained pfnacc pfpnacc pfrcp pfrcpit1 549 syn keyword dAsmOpCode contained pfrsqit1 pfrsqrt pfsub pfsubr 550 syn keyword dAsmOpCode contained pmulhrw pswapd syscall sysret 551 syn keyword dAsmOpCode contained vpmuldq xgetbv cmpxchg8b cmpxchg16b 552 syn keyword dAsmOpCode contained pabsb pabsd pabsw palignr 553 syn keyword dAsmOpCode contained phaddd phaddsw phaddw phsubd 554 syn keyword dAsmOpCode contained phsubsw phsubw pmaddubsw pmulhrsw 555 syn keyword dAsmOpCode contained pshufb psignb psignd psignw 556 syn keyword dAsmOpCode contained popfq pushfq blendpd blendps 557 syn keyword dAsmOpCode contained blendvpd blendvps extractps insertps 558 syn keyword dAsmOpCode contained movntdqa mpsadbw packusdw pblendvb 559 syn keyword dAsmOpCode contained pblendw pcmpeqq pextrb pextrd 560 syn keyword dAsmOpCode contained pextrq phminposuw pinsrb pinsrd 561 syn keyword dAsmOpCode contained pinsrq pmaxsb pmaxsd pmaxud 562 syn keyword dAsmOpCode contained pmaxuw pminsb pminsd pminud 563 syn keyword dAsmOpCode contained pminuw pmulld ptest roundpd 564 syn keyword dAsmOpCode contained roundps roundsd roundss pmuldq 565 syn keyword dAsmOpCode contained pmovsxbd pmovsxdq pmovzxbq pmovzxdq 566 syn keyword dAsmOpCode contained pmovsxbq pmovsxwd pmovzxbq pmovzxwd 567 syn keyword dAsmOpCode contained pmovsxbw pmovsxwq pmovzxbw pmovzxwq 568 syn keyword dAsmOpCode contained crc32 pcmpestri pcmpestrm pcmpgtq 569 syn keyword dAsmOpCode contained pcmpistri pcmpistrm popcnt pi2fd 570 syn keyword dAsmOpCode contained adc 571 572 let &cpo = s:cpo_save 573 unlet s:cpo_save