diff options
-rw-r--r-- | asm/listing.c | 9 | ||||
-rw-r--r-- | test/dup.asm | 15 |
2 files changed, 22 insertions, 2 deletions
diff --git a/asm/listing.c b/asm/listing.c index 9b101ff4..6d6f3606 100644 --- a/asm/listing.c +++ b/asm/listing.c @@ -1,6 +1,6 @@ /* ----------------------------------------------------------------------- * * - * Copyright 1996-2019 The NASM Authors - All Rights Reserved + * Copyright 1996-2020 The NASM Authors - All Rights Reserved * See the file AUTHORS included with the NASM distribution for * the specific copyright holders. * @@ -276,8 +276,13 @@ static void list_output(const struct out_data *data) break; case OUT_RESERVE: { - if (size) + if (size > 8) { list_size(offset, "res", size); + } else { + memset(q, '?', size << 1); + q[size << 1] = '\0'; + list_out(offset, q); + } break; } default: diff --git a/test/dup.asm b/test/dup.asm index 723da48b..62785628 100644 --- a/test/dup.asm +++ b/test/dup.asm @@ -19,3 +19,18 @@ dd 16 dup (0xaaaa, ?, 0xbbbbbb) dd 64 dup (?) + + resb 1 + resb 2 + resb 4 + resb 8 + + resw 1 + resw 2 + resw 4 + resw 8 + + resq 1 + resq 2 + resq 4 + resq 8 |