diff options
author | H. Peter Anvin <hpa@zytor.com> | 2019-08-07 00:46:27 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2019-08-07 00:59:24 -0700 |
commit | 0d4d431a016c873ff96f31476874ca87ed76a056 (patch) | |
tree | 40abd795029a29e8695ca952b907696229ef3890 /asm/listing.h | |
parent | 77a9b7d6892855861f754047226d8c3a4827c748 (diff) | |
download | nasm-0d4d431a016c873ff96f31476874ca87ed76a056.tar.gz |
Merge empty reservations from TIMES; add counts in listings
For constructs like TIMES xx RESB yy merge the TIMES and RESB and feed
a single reservation to the backend; this can (obviously) be
dramatically faster.
Add byte count in listings for <incbin> and repeat count to <rept>; to
make them more reasonable in length shorten to <bin ...> and <rep ...>
respectively, and don't require leading zeroes in bin/rep/res count.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'asm/listing.h')
-rw-r--r-- | asm/listing.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/asm/listing.h b/asm/listing.h index 1751c7f7..dac18bfe 100644 --- a/asm/listing.h +++ b/asm/listing.h @@ -74,19 +74,20 @@ struct lfmt { void (*line)(int type, char *line); /* - * Called to change one of the various levelled mechanisms in - * the listing generator. LIST_INCLUDE and LIST_MACRO can be - * used to increase the nesting level of include files and - * macro expansions; LIST_TIMES and LIST_INCBIN switch on the - * two binary-output-suppression mechanisms for large-scale - * pseudo-instructions. + * Called to change one of the various levelled mechanisms in the + * listing generator. LIST_INCLUDE and LIST_MACRO can be used to + * increase the nesting level of include files and macro + * expansions; LIST_TIMES and LIST_INCBIN switch on the two + * binary-output-suppression mechanisms for large-scale + * pseudo-instructions; the size argument prints the size or + * repetiiton count. * * LIST_MACRO_NOLIST is synonymous with LIST_MACRO except that * it indicates the beginning of the expansion of a `nolist' * macro, so anything under that level won't be expanded unless * it includes another file. */ - void (*uplevel)(int type); + void (*uplevel)(int type, int64_t size); /* * Reverse the effects of uplevel. |