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>