preproc: mmacro argument fixes; listing option for mmacro args
commit41d91a92732fb1da10059c711078ce05fe43f029
authorH. Peter Anvin (Intel) <hpa@zytor.com>
Tue, 20 Aug 2019 23:00:57 +0000 (20 16:00 -0700)
committerH. Peter Anvin (Intel) <hpa@zytor.com>
Tue, 20 Aug 2019 23:03:46 +0000 (20 16:03 -0700)
tree9d677d9ed2955989b8e54cb6669d149c1ea121fe
parent68075f8fa638ad7a8b914c32629e9ba4df32f217
preproc: mmacro argument fixes; listing option for mmacro args

Correctly handle empty mmacro arguments that still have preceding
whitespace tokens.

Default mmacro parameters are obtained by count_mmac_params() so they,
too, need to be shifted over by one.

Add an option to list mmacro calls with arguments. Name this -Lm;
remove the old -Lm option to -Ls since it is related to single-line
macros.

Trivially optimize the case where an mmacro is called from within
itself: if all possible mmacros are excluded by loop removal, there is
no need to delve into the mmac processing code.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
asm/nasm.c
asm/preproc.c