"
syn keyword nasmFpuInstruction F2XM1 FABS FADD[P] FBLD FBSTP
syn keyword nasmFpuInstruction FCHS FCLEX FCOM[IP] FCOMP[P] FCOS
syn keyword nasmFpuInstruction FDECSTP FDISI FDIV[P] FDIVR[P] FENI FFREE
syn keyword nasmFpuInstruction FIADD FICOM[P] FIDIV[R] FILD
syn keyword nasmFpuInstruction FIMUL FINCSTP FINIT FIST[P] FISUB[R]
syn keyword nasmFpuInstruction FLD[1] FLDCW FLDENV FLDL2E FLDL2T FLDLG2
syn keyword nasmFpuInstruction FLDLN2 FLDPI FLDZ FMUL[P]
syn keyword nasmFpuInstruction FNCLEX FNDISI FNENI FNINIT FNOP FNSAVE
syn keyword nasmFpuInstruction FNSTCW FNSTENV FNSTSW FNSTSW
syn keyword nasmFpuInstruction FPATAN FPREM[1] FPTAN FRNDINT FRSTOR
syn keyword nasmFpuInstruction FSAVE FSCALE FSETPM FSIN FSINCOS FSQRT
syn keyword nasmFpuInstruction FSTCW FSTENV FST[P] FSTSW FSUB[P] FSUBR[P]
syn keyword nasmFpuInstruction FTST FUCOM[IP] FUCOMP[P]
syn keyword nasmFpuInstruction FXAM FXCH FXTRACT FYL2X FYL2XP1
" Multi Media Xtension Packed Instructions: (requires MMX unit)
" Standard MMX instructions: (requires MMX1 unit)
syn match nasmInstructnError "\"
syn match nasmInstructnError "\"
syn keyword nasmMmxInstruction EMMS MOVD MOVQ
syn keyword nasmMmxInstruction PACKSSDW PACKSSWB PACKUSWB PADDB PADDD PADDW
syn keyword nasmMmxInstruction PADDSB PADDSW PADDUSB PADDUSW PAND[N]
syn keyword nasmMmxInstruction PCMPEQB PCMPEQD PCMPEQW PCMPGTB PCMPGTD PCMPGTW
syn keyword nasmMmxInstruction PMACHRIW PMADDWD PMULHW PMULLW POR
syn keyword nasmMmxInstruction PSLLD PSLLQ PSLLW PSRAD PSRAW PSRLD PSRLQ PSRLW
syn keyword nasmMmxInstruction PSUBB PSUBD PSUBW PSUBSB PSUBSW PSUBUSB PSUBUSW
syn keyword nasmMmxInstruction PUNPCKHBW PUNPCKHDQ PUNPCKHWD
syn keyword nasmMmxInstruction PUNPCKLBW PUNPCKLDQ PUNPCKLWD PXOR
" Extended MMX instructions: (requires MMX2/SSE unit)
syn keyword nasmMmxInstruction MASKMOVQ MOVNTQ
syn keyword nasmMmxInstruction PAVGB PAVGW PEXTRW PINSRW PMAXSW PMAXUB
syn keyword nasmMmxInstruction PMINSW PMINUB PMOVMSKB PMULHUW PSADBW PSHUFW
" Streaming SIMD Extension Packed Instructions: (requires SSE unit)
syn match nasmInstructnError "\"
syn match nasmSseInstruction "\"
syn keyword nasmSseInstruction ADDPS ADDSS ANDNPS ANDPS
syn keyword nasmSseInstruction COMISS CVTPI2PS CVTPS2PI
syn keyword nasmSseInstruction CVTSI2SS CVTSS2SI CVTTPS2PI CVTTSS2SI
syn keyword nasmSseInstruction DIVPS DIVSS FXRSTOR FXSAVE LDMXCSR
syn keyword nasmSseInstruction MAXPS MAXSS MINPS MINSS MOVAPS MOVHLPS MOVHPS
syn keyword nasmSseInstruction MOVLHPS MOVLPS MOVMSKPS MOVNTPS MOVSS MOVUPS
syn keyword nasmSseInstruction MULPS MULSS
syn keyword nasmSseInstruction ORPS RCPPS RCPSS RSQRTPS RSQRTSS
syn keyword nasmSseInstruction SHUFPS SQRTPS SQRTSS STMXCSR SUBPS SUBSS
syn keyword nasmSseInstruction UCOMISS UNPCKHPS UNPCKLPS XORPS
" Three Dimensional Now Packed Instructions: (requires 3DNow! unit)
syn keyword nasmNowInstruction FEMMS PAVGUSB PF2ID PFACC PFADD PFCMPEQ PFCMPGE
syn keyword nasmNowInstruction PFCMPGT PFMAX PFMIN PFMUL PFRCP PFRCPIT1
syn keyword nasmNowInstruction PFRCPIT2 PFRSQIT1 PFRSQRT PFSUB[R] PI2FD
syn keyword nasmNowInstruction PMULHRWA PREFETCH[W]
" Vendor Specific Instructions:
" Cyrix instructions (requires Cyrix processor)
syn keyword nasmCrxInstruction PADDSIW PAVEB PDISTIB PMAGW PMULHRW[C] PMULHRIW
syn keyword nasmCrxInstruction PMVGEZB PMVLZB PMVNZB PMVZB PSUBSIW
syn keyword nasmCrxInstruction RDSHR RSDC RSLDT SMINT SMINTOLD SVDC SVLDT SVTS
syn keyword nasmCrxInstruction WRSHR
" AMD instructions (requires AMD processor)
syn keyword nasmAmdInstruction SYSCALL SYSRET
" Undocumented Instructions:
syn match nasmUndInstruction "\"me=s+3
syn keyword nasmUndInstruction CMPXCHG486 IBTS ICEBP INT01 INT03 LOADALL
syn keyword nasmUndInstruction LOADALL286 LOADALL386 SALC SMI UD1 UMOV XBTS
" 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 nasmFltNumber 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 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 nasmStdInstruction Statement
hi def link nasmSysInstruction Statement
hi def link nasmDbgInstruction Debug
hi def link nasmFpuInstruction Statement
hi def link nasmMmxInstruction Statement
hi def link nasmSseInstruction Statement
hi def link nasmNowInstruction Statement
hi def link nasmAmdInstruction Special
hi def link nasmCrxInstruction Special
hi def link nasmUndInstruction Todo
hi def link nasmInstructnError Error
let b:current_syntax = "nasm"
" vim:ts=8 sw=4