view runtime/syntax/asmh8300.vim @ 23269:50c3cbc5b9b2

Added tag v8.2.2180 for changeset 65fd662b434da03f1cc95184167b032ab758bcd4
author Bram Moolenaar <Bram@vim.org>
date Mon, 21 Dec 2020 18:15:04 +0100
parents 8dad79c661d1
children
line wrap: on
line source

" Vim syntax file
" Language:		Hitachi H-8300h specific syntax for GNU Assembler
" Maintainer:		Doug Kearns <dougkearns@gmail.com>
" Previous Maintainer:	Kevin Dahlhausen <kdahlhaus@yahoo.com>
" Last Change:		2020 Oct 31

if exists("b:current_syntax")
  finish
endif

runtime! syntax/asm.vim

syn case ignore

syn match asmDirective	"\.h8300[hs]n\="

"h8300[h] registers
syn match asmRegister	"e\=r\o[lh]\="

"h8300[h] opcodes - order is important!
syn match asmOpcode "add\.[lbw]"
syn match asmOpcode "add[sx :]"
syn match asmOpcode "and\.[lbw]"
syn match asmOpcode "bl[deots]"
syn match asmOpcode "cmp\.[lbw]"
syn match asmOpcode "dec\.[lbw]"
syn match asmOpcode "divx[us].[bw]"
syn match asmOpcode "ext[su]\.[lw]"
syn match asmOpcode "inc\.[lw]"
syn match asmOpcode "mov\.[lbw]"
syn match asmOpcode "mulx[su]\.[bw]"
syn match asmOpcode "neg\.[lbw]"
syn match asmOpcode "not\.[lbw]"
syn match asmOpcode "or\.[lbw]"
syn match asmOpcode "pop\.[wl]"
syn match asmOpcode "push\.[wl]"
syn match asmOpcode "rotx\=[lr]\.[lbw]"
syn match asmOpcode "sha[lr]\.[lbw]"
syn match asmOpcode "shl[lr]\.[lbw]"
syn match asmOpcode "sub\.[lbw]"
syn match asmOpcode "xor\.[lbw]"

syn keyword asmOpcode andc band bcc bclr bcs beq bf bge bgt
syn keyword asmOpcode bhi bhs biand bild bior bist bixor bmi
syn keyword asmOpcode bne bnot bnp bor bpl bpt bra brn bset
syn keyword asmOpcode bsr btst bst bt bvc bvs bxor cmp daa
syn keyword asmOpcode das eepmov eepmovw inc jmp jsr ldc movfpe
syn keyword asmOpcode movtpe mov nop orc rte rts sleep stc
syn keyword asmOpcode sub trapa xorc

syn case match

hi def link asmOpcode	Statement
hi def link asmRegister	Identifier

let b:current_syntax = "asmh8300"

" vim: nowrap sw=2 sts=2 ts=8 noet