nasm/test/ifmacro.asm
2008-05-21 12:42:46 +02:00

414 lines
5.2 KiB
NASM

;Testname=test; Arguments=-fbin -oifmacro.txt; Files=.stdout .stderr ifmacro.txt
;
; ifmacro.asm
;
; Test of the new ifmacro directive
;
; This file produces a human-readable text file when compiled
; with -f bin
;
%define LF 10
%macro dummy 2
db 'This is a dummy macro, '
db 'arg1 = ', %1, ', '
db 'arg2 = ', %2, LF
%endmacro
dummy 'this', 'that'
%ifdef CR
db '%ifdef CR', LF
%endif
%ifdef LF
db '%ifdef LF', LF
%endif
%ifmacro dummy 1
db '%ifmacro dummy 1', LF
%endif
%ifmacro dummy 2
db '%ifmacro dummy 2', LF
%endif
%ifmacro dummy 3
db '%ifmacro dummy 3', LF
%endif
%ifmacro dummy 1+
db '%ifmacro dummy 1+', LF
%endif
%ifmacro dummy 2+
db '%ifmacro dummy 2+', LF
%endif
%ifmacro dummy 3+
db '%ifmacro dummy 3+', LF
%endif
%ifmacro dummy
db '%ifmacro dummy', LF
%endif
%ifmacro dummy 0-1
db '%ifmacro dummy 0-1', LF
%endif
%ifmacro dummy 1-2
db '%ifmacro dummy 1-2', LF
%endif
%ifmacro dummy 2-3
db '%ifmacro dummy 2-3', LF
%endif
%ifmacro dummy 3-4
db '%ifmacro dummy 3-4', LF
%endif
%ifmacro LF
db '%ifmacro LF', LF
%endif
%ifndef CR
db '%ifndef CR', LF
%endif
%ifndef LF
db '%ifndef LF', LF
%endif
%ifnmacro dummy 1
db '%ifnmacro dummy 1', LF
%endif
%ifnmacro dummy 2
db '%ifnmacro dummy 2', LF
%endif
%ifnmacro dummy 3
db '%ifnmacro dummy 3', LF
%endif
%ifnmacro dummy 1+
db '%ifnmacro dummy 1+', LF
%endif
%ifnmacro dummy 2+
db '%ifnmacro dummy 2+', LF
%endif
%ifnmacro dummy 3+
db '%ifnmacro dummy 3+', LF
%endif
%ifnmacro dummy
db '%ifnmacro dummy', LF
%endif
%ifnmacro dummy 0-1
db '%ifnmacro dummy 0-1', LF
%endif
%ifnmacro dummy 1-2
db '%ifnmacro dummy 1-2', LF
%endif
%ifnmacro dummy 2-3
db '%ifnmacro dummy 2-3', LF
%endif
%ifnmacro dummy 3-4
db '%ifnmacro dummy 3-4', LF
%endif
%ifnmacro LF
db '%ifnmacro LF', LF
%endif
%if 0
%elifdef CR
db '%elifdef CR', CR
%endif
%if 0
%elifdef LF
db '%elifdef LF', LF
%endif
%if 0
%elifmacro dummy 1
db '%elifmacro dummy 1', LF
%endif
%if 0
%elifmacro dummy 2
db '%elifmacro dummy 2', LF
%endif
%if 0
%elifmacro dummy 3
db '%elifmacro dummy 3', LF
%endif
%if 0
%elifmacro dummy 1+
db '%elifmacro dummy 1+', LF
%endif
%if 0
%elifmacro dummy 2+
db '%elifmacro dummy 2+', LF
%endif
%if 0
%elifmacro dummy 3+
db '%elifmacro dummy 3+', LF
%endif
%if 0
%elifmacro dummy
db '%elifmacro dummy', LF
%endif
%if 0
%elifmacro dummy 0-1
db '%elifmacro dummy 0-1', LF
%endif
%if 0
%elifmacro dummy 1-2
db '%elifmacro dummy 1-2', LF
%endif
%if 0
%elifmacro dummy 2-3
db '%elifmacro dummy 2-3', LF
%endif
%if 0
%elifmacro dummy 3-4
db '%elifmacro dummy 3-4', LF
%endif
%if 0
%elifmacro LF
db '%elifmacro LF', LF
%endif
%if 0
%elifndef CR
db '%elifndef CR', LF
%endif
%if 0
%elifndef LF
db '%elifndef LF', LF
%endif
%if 0
%elifnmacro dummy 1
db '%elifnmacro dummy 1', LF
%endif
%if 0
%elifnmacro dummy 2
db '%elifnmacro dummy 2', LF
%endif
%if 0
%elifnmacro dummy 3
db '%elifnmacro dummy 3', LF
%endif
%if 0
%elifnmacro dummy 1+
db '%elifnmacro dummy 1+', LF
%endif
%if 0
%elifnmacro dummy 2+
db '%elifnmacro dummy 2+', LF
%endif
%if 0
%elifnmacro dummy 3+
db '%elifnmacro dummy 3+', LF
%endif
%if 0
%elifnmacro dummy
db '%elifnmacro dummy', LF
%endif
%if 0
%elifnmacro dummy 0-1
db '%elifnmacro dummy 0-1', LF
%endif
%if 0
%elifnmacro dummy 1-2
db '%elifnmacro dummy 1-2', LF
%endif
%if 0
%elifnmacro dummy 2-3
db '%elifnmacro dummy 2-3', LF
%endif
%if 0
%elifnmacro dummy 3-4
db '%elifnmacro dummy 3-4', LF
%endif
%if 0
%elifnmacro LF
db '%elifnmacro LF', LF
%endif
%if 1
%elifdef CR
db 'bad %elifdef CR', LF
%endif
%if 1
%elifdef LF
db 'bad %elifdef LF', LF
%endif
%if 1
%elifmacro dummy 1
db 'bad %elifmacro dummy 1', LF
%endif
%if 1
%elifmacro dummy 2
db 'bad %elifmacro dummy 2', LF
%endif
%if 1
%elifmacro dummy 3
db 'bad %elifmacro dummy 3', LF
%endif
%if 1
%elifmacro dummy 1+
db 'bad %elifmacro dummy 1+', LF
%endif
%if 1
%elifmacro dummy 2+
db 'bad %elifmacro dummy 2+', LF
%endif
%if 1
%elifmacro dummy 3+
db 'bad %elifmacro dummy 3+', LF
%endif
%if 1
%elifmacro dummy
db 'bad %elifmacro dummy', LF
%endif
%if 1
%elifmacro dummy 0-1
db 'bad %elifmacro dummy 0-1', LF
%endif
%if 1
%elifmacro dummy 1-2
db 'bad %elifmacro dummy 1-2', LF
%endif
%if 1
%elifmacro dummy 2-3
db 'bad %elifmacro dummy 2-3', LF
%endif
%if 1
%elifmacro dummy 3-4
db 'bad %elifmacro dummy 3-4', LF
%endif
%if 1
%elifmacro LF
db 'bad %elifmacro LF', LF
%endif
%if 1
%elifndef CR
db 'bad %elifndef CR', LF
%endif
%if 1
%elifndef LF
db 'bad %elifndef LF', LF
%endif
%if 1
%elifnmacro dummy 1
db 'bad %elifnmacro dummy 1', LF
%endif
%if 1
%elifnmacro dummy 2
db 'bad %elifnmacro dummy 2', LF
%endif
%if 1
%elifnmacro dummy 3
db 'bad %elifnmacro dummy 3', LF
%endif
%if 1
%elifnmacro dummy 1+
db 'bad %elifnmacro dummy 1+', LF
%endif
%if 1
%elifnmacro dummy 2+
db 'bad %elifnmacro dummy 2+', LF
%endif
%if 1
%elifnmacro dummy 3+
db 'bad %elifnmacro dummy 3+', LF
%endif
%if 1
%elifnmacro dummy
db 'bad %elifnmacro dummy', LF
%endif
%if 1
%elifnmacro dummy 0-1
db 'bad %elifnmacro dummy 0-1', LF
%endif
%if 1
%elifnmacro dummy 1-2
db 'bad %elifnmacro dummy 1-2', LF
%endif
%if 1
%elifnmacro dummy 2-3
db 'bad %elifnmacro dummy 2-3', LF
%endif
%if 1
%elifnmacro dummy 3-4
db 'bad %elifnmacro dummy 3-4', LF
%endif
%if 1
%elifnmacro LF
db 'bad %elifnmacro LF', LF
%endif