summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2018-12-24 12:41:57 -0800
committerH. Peter Anvin <hpa@zytor.com>2018-12-24 12:41:57 -0800
commit5079ea0b015547e8e36e047968ed20832a487f18 (patch)
treeaed3452037c50033482907193105c7fb765935e7
parentca810ecbafc70b7d4d4d3eb6918f64288943f1f4 (diff)
downloadnasm-5079ea0b015547e8e36e047968ed20832a487f18.tar.gz
BR 3392538: test case for double free in listing module
Test case from bug 3392538 for double free in the listing module. This is the test case only, not a fix. Reported-by: <russyz@comcast.net> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r--test/br3392538.asm27
1 files changed, 27 insertions, 0 deletions
diff --git a/test/br3392538.asm b/test/br3392538.asm
new file mode 100644
index 00000000..3d9f5186
--- /dev/null
+++ b/test/br3392538.asm
@@ -0,0 +1,27 @@
+ bits 64
+ default rel
+
+ section .text
+ global _start
+_start:
+
+ mov rax, 1 ; write syscall
+ mov rdi, 1
+ mov rsi, msg
+ mov rdx, msglen
+ syscall
+
+ mov rax, 60 ; exit syscall
+ sub rdi, rdi
+ syscall
+
+; either of the following lines cause: Error in `nasm': double free or corruption ; Aborted (core dumped)
+foo
+; warning: label alone on a line without a colon might be in error [-w+orphan-labels]
+ mov r8, r9, r10
+; error: invalid combination of opcode and operands
+ add r8d, byte 80h
+; warning: signed byte value exceeds bounds [-w+number-overflow]
+ section .data
+msg db "Hello, world!", 10
+msglen equ $-msg