Commit-ID: c777772243da543f9c60097b527cf851310f2f15
Gitweb: http://repo.or.cz/w/nasm.git?a=commitdiff;h=c777772243da543f9c60097b527cf851310f2f15
Author: Cyrill Gorcunov <gor...@gm...>
AuthorDate: Sun, 11 Nov 2018 13:37:50 +0300
Committer: Cyrill Gorcunov <gor...@gm...>
CommitDate: Sun, 11 Nov 2018 21:43:46 +0300
test: nasm-t -- Add elif
Signed-off-by: Cyrill Gorcunov <gor...@gm...>
---
travis/test/elif.asm | 38 ++++++++++++++++++++++++++++++++++++++
travis/test/elif.json | 12 ++++++++++++
travis/test/elif.o.t | Bin 0 -> 232 bytes
3 files changed, 50 insertions(+)
diff --git a/travis/test/elif.asm b/travis/test/elif.asm
new file mode 100644
index 0000000..0f1f870
--- /dev/null
+++ b/travis/test/elif.asm
@@ -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
diff --git a/travis/test/elif.json b/travis/test/elif.json
new file mode 100644
index 0000000..824d62d
--- /dev/null
+++ b/travis/test/elif.json
@@ -0,0 +1,12 @@
+[
+ {
+ "description": "Test elif directive",
+ "id": "elif",
+ "format": "obj",
+ "source": "elif.asm",
+ "option": "-Ox",
+ "target": [
+ { "output": "elif.o" }
+ ]
+ }
+]
diff --git a/travis/test/elif.o.t b/travis/test/elif.o.t
new file mode 100644
index 0000000..8737f85
Binary files /dev/null and b/travis/test/elif.o.t differ
|