diff options
Diffstat (limited to 'src/testdir/test_vim9_disassemble.vim')
-rw-r--r-- | src/testdir/test_vim9_disassemble.vim | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim index fe1ce66ec5..97797bc03a 100644 --- a/src/testdir/test_vim9_disassemble.vim +++ b/src/testdir/test_vim9_disassemble.vim @@ -301,6 +301,34 @@ def Test_disassemble_list_add() res) enddef +def s:BlobAdd() + var b: blob = 0z + add(b, 123) + add(b, g:aNumber) +enddef + +def Test_disassemble_blob_add() + var res = execute('disass s:BlobAdd') + assert_match('<SNR>\d*_BlobAdd\_s*' .. + 'var b: blob = 0z\_s*' .. + '\d PUSHBLOB 0z\_s*' .. + '\d STORE $0\_s*' .. + 'add(b, 123)\_s*' .. + '\d LOAD $0\_s*' .. + '\d PUSHNR 123\_s*' .. + '\d BLOBAPPEND\_s*' .. + '\d DROP\_s*' .. + 'add(b, g:aNumber)\_s*' .. + '\d LOAD $0\_s*' .. + '\d\+ LOADG g:aNumber\_s*' .. + '\d\+ CHECKTYPE number stack\[-1\]\_s*' .. + '\d\+ BLOBAPPEND\_s*' .. + '\d\+ DROP\_s*' .. + '\d\+ PUSHNR 0\_s*' .. + '\d\+ RETURN', + res) +enddef + def s:ScriptFuncUnlet() g:somevar = "value" unlet g:somevar |