From a22692f80d64524a15b733a7f204f46450d76b2e Mon Sep 17 00:00:00 2001 From: ARM9 Date: Sun, 8 Mar 2015 15:13:34 +0100 Subject: [PATCH] testing hilink recursion --- syntax/armv4.vim | 5 +++-- syntax/armv5.vim | 5 +++-- syntax/include/arm_base_syntax.vim | 9 +++++---- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/syntax/armv4.vim b/syntax/armv4.vim index 36265df..9a2d407 100644 --- a/syntax/armv4.vim +++ b/syntax/armv4.vim @@ -10,8 +10,6 @@ endif syn case ignore -so :p:h/include/arm_base_syntax.vim - if version >= 508 || !exists("did_armv4_syntax_inits") if version < 508 let did_armv4_syntax_inits = 1 @@ -19,6 +17,9 @@ if version >= 508 || !exists("did_armv4_syntax_inits") else command -nargs=+ HiLink hi def link endif + + so :p:h/include/arm_base_syntax.vim + HiLink armv4Instr armInstructions HiLink armv4InstrCond armInstructions HiLink armv4InstrNoCond armInstructions diff --git a/syntax/armv5.vim b/syntax/armv5.vim index 9c8962d..0f2c343 100644 --- a/syntax/armv5.vim +++ b/syntax/armv5.vim @@ -10,8 +10,6 @@ endif syn case ignore -so :p:h/include/arm_base_syntax.vim - if version >= 508 || !exists("did_armv5_syntax_inits") if version < 508 let did_armv5_syntax_inits = 1 @@ -19,6 +17,9 @@ if version >= 508 || !exists("did_armv5_syntax_inits") else command -nargs=+ HiLink hi def link endif + + so :p:h/include/arm_base_syntax.vim + HiLink armv4Instr armInstructions HiLink armv5InstrCond armInstructions HiLink armv5InstrNoCond armInstructions diff --git a/syntax/include/arm_base_syntax.vim b/syntax/include/arm_base_syntax.vim index 326523d..053f844 100644 --- a/syntax/include/arm_base_syntax.vim +++ b/syntax/include/arm_base_syntax.vim @@ -56,18 +56,19 @@ exec 'syn match armv4SWP "SWP' . armCond . 'B\?\>"' " " ARMv5 instructions " +syn match armv5InstrCond exec 'syn match armv5InstrCond "\%(BLX\|CLZ\|MCRR\|MRRC\|QADD\|QSUB\|QDADD\|QDSUB\)' . armCond . '\>"' -syn match armv4InstrCond armv5InstrCond +HiLink armv4InstrCond armv5InstrCond syn match armv5InstrNoCond "\%(BKPT\|CDP2\|LDC2\|MCR2\|MRC2\|PLD\|STC2\)\>" -syn match armv4InstrNoCond armv5InstrNoCond +HiLink armv4InstrNoCond armv5InstrNoCond exec 'syn match armv5Mul "\%(SMLA\|SMLAL\|SMLAW\|SMUL\|SMULW\)[BT][BT]' . armCond . '\>"' exec 'syn match armv5LDR "\%(LDR\)' . armCond . 'D\>"' exec 'syn match armv5STR "\%(STR\)' . armCond . 'D\>"' -syn match armv4LDR armv5LDR -syn match armv4STR armv5STR +HiLink armv4LDR armv5LDR +HiLink armv4STR armv5STR "syn match armRelative "@R[0-7]\|@a\s*+\s*dptr\|@[ab]"