mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-07-24 10:25:42 -04:00
test: nasm-t -- Add elif
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
This commit is contained in:
parent
b87a996ef0
commit
c777772243
38
travis/test/elif.asm
Normal file
38
travis/test/elif.asm
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
%macro DosPrintMsg 1+
|
||||||
|
%ifnid %1
|
||||||
|
section .data
|
||||||
|
|
||||||
|
%%str_to_print:db %1
|
||||||
|
|
||||||
|
section .text
|
||||||
|
|
||||||
|
mov dx,%%str_to_print
|
||||||
|
mov ah,9
|
||||||
|
int 0x21
|
||||||
|
%else
|
||||||
|
mov dx,(%1)
|
||||||
|
mov ah,9
|
||||||
|
int 0x21
|
||||||
|
%endif
|
||||||
|
%endmacro
|
||||||
|
|
||||||
|
%macro DosExit 1
|
||||||
|
%if (%1) == 0
|
||||||
|
;use short-form return 0 exit
|
||||||
|
int 0x20
|
||||||
|
%elif ((%1) < 256) && ((%1) > 0)
|
||||||
|
mov ax,0x4C00 | (%1)
|
||||||
|
int 0x21
|
||||||
|
%else
|
||||||
|
%error Invalid return value
|
||||||
|
%endif
|
||||||
|
%endmacro
|
||||||
|
|
||||||
|
section .text
|
||||||
|
DosPrintMsg predefined_str
|
||||||
|
DosPrintMsg "Using string with macro-defined label",10,0
|
||||||
|
DosExit 0
|
||||||
|
DosExit 1
|
||||||
|
|
||||||
|
section .data
|
||||||
|
predefined_str:db "Using string with predefined label",10,0
|
12
travis/test/elif.json
Normal file
12
travis/test/elif.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"description": "Test elif directive",
|
||||||
|
"id": "elif",
|
||||||
|
"format": "obj",
|
||||||
|
"source": "elif.asm",
|
||||||
|
"option": "-Ox",
|
||||||
|
"target": [
|
||||||
|
{ "output": "elif.o" }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
BIN
travis/test/elif.o.t
Normal file
BIN
travis/test/elif.o.t
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user