add word boundaries

This commit is contained in:
ARM9 2015-10-17 17:12:59 +02:00
parent 4ea2137148
commit 74b0327830
3 changed files with 19 additions and 14 deletions

View File

@ -10,13 +10,13 @@ syn match armIdentifier "\<[.\$_A-Za-z0-9]\+\>"
syn match armLabel "\<[.\$_A-Za-z0-9]\+:" syn match armLabel "\<[.\$_A-Za-z0-9]\+:"
" dec " dec
syn match armNumber "[#\$]\?\d\+" syn match armNumber "[#\$]\?\d\+\>"
" hex " hex
syn match armNumber "[#\$]\?0x\x\+" syn match armNumber "[#\$]\?0x\x\+\>"
" bin " bin
syn match armNumber "[#\$]\?0b[01]\+" syn match armNumber "[#\$]\?0b[01]\+\>"
" floats " floats
syn match armNumber "\%(\d\+\.\d*\|\d*\.\d\+\)\%([eE]\?[-+]\?\d\+\)\?" syn match armNumber "\%(\d\+\.\d*\|\d*\.\d\+\)\%([eE]\?[-+]\?\d\+\)\?\>"
" Comments " Comments
syn region armComment start="//\|@" end="$" contains=armTodo syn region armComment start="//\|@" end="$" contains=armTodo
@ -33,12 +33,12 @@ so <sfile>:p:h/arm_directives.vim
syn match armCPreProc "^\s*#\s*\(include\|define\|undef\|if\|ifdef\|ifndef\|elif\|else\|endif\|error\|pragma\)\>" syn match armCPreProc "^\s*#\s*\(include\|define\|undef\|if\|ifdef\|ifndef\|elif\|else\|endif\|error\|pragma\)\>"
" Registers " Registers
syn match armRegister "R\%(1[0-5]\|[0-9]\)" syn match armRegister "\<R\%(1[0-5]\|[0-9]\)\>"
syn match armRegister "C\%(1[0-5]\|[0-9]\)" syn match armRegister "\<C\%(1[0-5]\|[0-9]\)\>"
syn match armRegister "P\%(1[0-5]\|[0-9]\)" syn match armRegister "\<P\%(1[0-5]\|[0-9]\)\>"
syn keyword armRegister FP SP LR PC SPSR CPSR CPSR_c CPSR_cxsf BP syn keyword armRegister FP SP LR PC SPSR CPSR CPSR_c CPSR_cxsf BP
syn match armRegister "A[1-3]" syn match armRegister "\<A[1-3]\>"
syn match armRegister "V[1-8]" syn match armRegister "\<V[1-8]\>"
" Conditional field to avoid repetition " Conditional field to avoid repetition
let armCond = '\%(AL\|CC\|CS\|EQ\|GE\|GT\|HI\|HS\|LE\|LO\|LS\|LT\|MI\|NE\|PL\|VC\|VS\)\?' let armCond = '\%(AL\|CC\|CS\|EQ\|GE\|GT\|HI\|HS\|LE\|LO\|LS\|LT\|MI\|NE\|PL\|VC\|VS\)\?'

View File

@ -2,8 +2,8 @@
so <sfile>:p:h/armv5_base_syntax.vim so <sfile>:p:h/armv5_base_syntax.vim
" VFP/NEON registers " VFP/NEON registers
syn match armv6Register "[SD]\%(3[01]\|[12]\?[0-9]\)\>" syn match armv6Register "\<[SD]\%(3[01]\|[12]\?[0-9]\)\>"
syn match armv6Register "Q\%(1[0-5]\|[0-9]\)\>" syn match armv6Register "\<Q\%(1[0-5]\|[0-9]\)\>"
" "
" ARMv6 instructions " ARMv6 instructions

View File

@ -21,10 +21,11 @@ mla r5,R6
mov R6,R7 mov R6,R7
b 001b b 001b
blx 0002f blx 0002f
add r14,#4
sub r13,#0x28
push {r0, r1, r2-r9} push {r0, r1, r2-r9}
pop {r1-r14} pop {r1-r14}
push {q0-q14} vpush {q0-q14}
FSHTOS FSHTOS
@ -38,14 +39,18 @@ fdivs
vdiv vdiv
vsqrt vsqrt
s30doesd32
vadd.i8 d12, d16, d31 vadd.i8 d12, d16, d31
vmull.s32 q2, d5, D6 vmull.s32 q2, d5, D6
.float .01, 3.14159 .float .01, 3.14159
{14,140-402(0x1b-0b1101+.0#0.0#.0.[123]0xffff%#0x34%$0xf$#0b111#$0b11b{ldr#0b11-ldr1)}
@ illegal @ illegal
1.0f 0.f .1f 1.0f 0.f .1f
vmul Q15, Q16, d31, s31, s32, d32 vmul Q15, Q16, d31, s31, s32, d32
vmull q01, q09, q14, q16 vmull q01, q09, q14, q16
pop {s3-s32} pop {s3-s32}
vadd#1234?ldr$12?str12
@ vim:ft=arm @ vim:ft=arm