Terraspace / UASM

UASM - Macro Assembler
http://www.terraspace.co.uk/uasm.html
Other
220 stars 49 forks source link

Crash bug #49

Closed gwoltman closed 7 years ago

gwoltman commented 7 years ago

Latest HJWAsm32 crashes. Download the zip file below. Run crash.bat. Sorry the zip file is so big, trimming it down to minimum size would be a bit tedious.

https://www.dropbox.com/s/08kf4qyssvq48yy/hjwasm_crash.zip?dl=0

john-terraspace commented 7 years ago

Hi,

I’ve tried running it, getting the following output:

D:\crash>c:\jwasm\HJWasm32 /c /DX86_64 /DWINDOWS64 -win64 /DARCH=FMA3 /Foamd64\y

r4dwpn_fma3.obj yr4dwpn.asm

HJWasm v2.19, Feb 3 2017, Masm-compatible assembler.

Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.

Source code is available under the Sybase Open Watcom Public License.

yr4dwpn.asm(31) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(31): Main line code

yr4dwpn.asm(32) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(32): Main line code

yr4dwpn.asm(33) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(33): Main line code

yr4dwpn.asm(34) : Error A2209: Syntax error: alloc_stack

… Until too many errors, any ideas what I need to change to get it either work or crash ?

From: gwoltman [mailto:notifications@github.com] Sent: 11 March 2017 02:07 AM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Terraspace/HJWasm] Crash bug (#49)

Latest HJWAsm32 crashes. Download the zip file below. Run crash.bat. Sorry the zip file is so big, trimming it down to minimum size would be a bit tedious.

https://www.dropbox.com/s/08kf4qyssvq48yy/hjwasm_crash.zip?dl=0

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVFWovNXQU5VJ_cpRncoEk80vvoWFks5rkgGxgaJpZM4MaDqA .

gwoltman commented 7 years ago

I'm pretty sure the crash is in the error reporting. I only get this text output:

yr4dwpn.asm(31) :

If I correct all errors in the assembly code, HJWasm runs to completion and produces good object files. I'm running in a MS-DOS box under Vista under VMWare under Mac OS X. Perhaps there is less memory available in my setup leading to memory allocation failure.

If I can be of further help, let me know.

On Sat, Mar 11, 2017 at 3:59 AM, John Hankinson notifications@github.com wrote:

Hi,

I’ve tried running it, getting the following output:

D:\crash>c:\jwasm\HJWasm32 /c /DX86_64 /DWINDOWS64 -win64 /DARCH=FMA3 /Foamd64\y

r4dwpn_fma3.obj yr4dwpn.asm

HJWasm v2.19, Feb 3 2017, Masm-compatible assembler.

Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.

Source code is available under the Sybase Open Watcom Public License.

yr4dwpn.asm(31) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(31): Main line code

yr4dwpn.asm(32) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(32): Main line code

yr4dwpn.asm(33) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(33): Main line code

yr4dwpn.asm(34) : Error A2209: Syntax error: alloc_stack

… Until too many errors, any ideas what I need to change to get it either work or crash ?

From: gwoltman [mailto:notifications@github.com] Sent: 11 March 2017 02:07 AM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Terraspace/HJWasm] Crash bug (#49)

Latest HJWAsm32 crashes. Download the zip file below. Run crash.bat. Sorry the zip file is so big, trimming it down to minimum size would be a bit tedious.

https://www.dropbox.com/s/08kf4qyssvq48yy/hjwasm_crash.zip?dl=0

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ Terraspace/HJWasm/issues/49 , or mute the thread https://github.com/ notifications/unsubscribe-auth/AQGQVFWovNXQU5VJ_ cpRncoEk80vvoWFks5rkgGxgaJpZM4MaDqA .

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49#issuecomment-285853987, or mute the thread https://github.com/notifications/unsubscribe-auth/AVPFM6w4qrQ82762J1X5NcwCb28Mmfsmks5rkmKGgaJpZM4MaDqA .

john-terraspace commented 7 years ago

Wow that’s quite a nesting of operating systems! :)

We will see if we can find anything specific in the error output that might be memory/allocation dependant.

From: gwoltman [mailto:notifications@github.com] Sent: 11 March 2017 05:17 PM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/HJWasm] Crash bug (#49)

I'm pretty sure the crash is in the error reporting. I only get this text output:

yr4dwpn.asm(31) :

If I correct all errors in the assembly code, HJWasm runs to completion and produces good object files. I'm running in a MS-DOS box under Vista under VMWare under Mac OS X. Perhaps there is less memory available in my setup leading to memory allocation failure.

If I can be of further help, let me know.

On Sat, Mar 11, 2017 at 3:59 AM, John Hankinson notifications@github.com wrote:

Hi,

I’ve tried running it, getting the following output:

D:\crash>c:\jwasm\HJWasm32 /c /DX86_64 /DWINDOWS64 -win64 /DARCH=FMA3 /Foamd64\y

r4dwpn_fma3.obj yr4dwpn.asm

HJWasm v2.19, Feb 3 2017, Masm-compatible assembler.

Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.

Source code is available under the Sybase Open Watcom Public License.

yr4dwpn.asm(31) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(31): Main line code

yr4dwpn.asm(32) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(32): Main line code

yr4dwpn.asm(33) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(33): Main line code

yr4dwpn.asm(34) : Error A2209: Syntax error: alloc_stack

… Until too many errors, any ideas what I need to change to get it either work or crash ?

From: gwoltman [mailto:notifications@github.com] Sent: 11 March 2017 02:07 AM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Terraspace/HJWasm] Crash bug (#49)

Latest HJWAsm32 crashes. Download the zip file below. Run crash.bat. Sorry the zip file is so big, trimming it down to minimum size would be a bit tedious.

https://www.dropbox.com/s/08kf4qyssvq48yy/hjwasm_crash.zip?dl=0

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ Terraspace/HJWasm/issues/49 , or mute the thread https://github.com/ notifications/unsubscribe-auth/AQGQVFWovNXQU5VJ_ cpRncoEk80vvoWFks5rkgGxgaJpZM4MaDqA .

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49#issuecomment-285853987, or mute the thread https://github.com/notifications/unsubscribe-auth/AVPFM6w4qrQ82762J1X5NcwCb28Mmfsmks5rkmKGgaJpZM4MaDqA .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49#issuecomment-285881885 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVNLizm5kEt1Qyav1RsGZHr7mUL8qks5rktcGgaJpZM4MaDqA .

john-terraspace commented 7 years ago

Would it be possible to try run it under one of the other os levels?

I’ve tried it on my 3 machines now and in a VM and I get constantly the same result, all the errors output until the too many errors.

From: gwoltman [mailto:notifications@github.com] Sent: 11 March 2017 05:17 PM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/HJWasm] Crash bug (#49)

I'm pretty sure the crash is in the error reporting. I only get this text output:

yr4dwpn.asm(31) :

If I correct all errors in the assembly code, HJWasm runs to completion and produces good object files. I'm running in a MS-DOS box under Vista under VMWare under Mac OS X. Perhaps there is less memory available in my setup leading to memory allocation failure.

If I can be of further help, let me know.

On Sat, Mar 11, 2017 at 3:59 AM, John Hankinson notifications@github.com wrote:

Hi,

I’ve tried running it, getting the following output:

D:\crash>c:\jwasm\HJWasm32 /c /DX86_64 /DWINDOWS64 -win64 /DARCH=FMA3 /Foamd64\y

r4dwpn_fma3.obj yr4dwpn.asm

HJWasm v2.19, Feb 3 2017, Masm-compatible assembler.

Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.

Source code is available under the Sybase Open Watcom Public License.

yr4dwpn.asm(31) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(31): Main line code

yr4dwpn.asm(32) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(32): Main line code

yr4dwpn.asm(33) : Error A2209: Syntax error: alloc_stack

int_prolog(165)[unravel.mac]: Macro called from

ypass2gen(42)[ymult.mac]: Macro called from

buildfor(22)[yarch.mac]: Macro called from

yr4dwpn.asm(33): Main line code

yr4dwpn.asm(34) : Error A2209: Syntax error: alloc_stack

… Until too many errors, any ideas what I need to change to get it either work or crash ?

From: gwoltman [mailto:notifications@github.com] Sent: 11 March 2017 02:07 AM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Terraspace/HJWasm] Crash bug (#49)

Latest HJWAsm32 crashes. Download the zip file below. Run crash.bat. Sorry the zip file is so big, trimming it down to minimum size would be a bit tedious.

https://www.dropbox.com/s/08kf4qyssvq48yy/hjwasm_crash.zip?dl=0

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ Terraspace/HJWasm/issues/49 , or mute the thread https://github.com/ notifications/unsubscribe-auth/AQGQVFWovNXQU5VJ_ cpRncoEk80vvoWFks5rkgGxgaJpZM4MaDqA .

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49#issuecomment-285853987, or mute the thread https://github.com/notifications/unsubscribe-auth/AVPFM6w4qrQ82762J1X5NcwCb28Mmfsmks5rkmKGgaJpZM4MaDqA .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49#issuecomment-285881885 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVNLizm5kEt1Qyav1RsGZHr7mUL8qks5rktcGgaJpZM4MaDqA .

gwoltman commented 7 years ago

Sadly, we are not going to be able to get a reproducible case.

I tried on a 64-bit linux system. No problems.

I tried again on my Windows Vista machine. Still crashes. I then asked for it open the debugger to get a call stack trace. Alas, HJWasm32 must be built without symbols, so that proved less than useful. I then downloaded HJWasm source, but could not build it since I have MSVC 2005 and MSVC 2017 does not run on Vista. Oh well.

Then I exited MSVC2005 with the useless stack trace. Now HJWasm32 works! I restarted MSVC and HJWasm32 still works. So now we've determined we can only produce the problem on one machine and on that machine the problem only occurs under certain conditions.

I can only suggest 2 courses of action:

1) Eyeball the error reporting code in hopes of finding a malloc that doesn't check for NULL. 2) Build HJWasm32 with debugging symbols and should the issue recur I can get you a decent stack trace.

john-terraspace commented 7 years ago

I’ve gone through the code and cannot find anything that sticks out as a problem allocation wise.

It might be some sort of C-lib vs. OS issue..

I’ve uploaded a 32bit debug version of HJWasm 2.20 (we’ve just released an updated with a few other minor fixes in) for you.

The URL is : http://www.terraspace.co.uk/HJWasm32D.zip

From: gwoltman [mailto:notifications@github.com] Sent: 12 March 2017 07:15 PM To: Terraspace/HJWasm HJWasm@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/HJWasm] Crash bug (#49)

Sadly, we are not going to be able to get a reproducible case.

I tried on a 64-bit linux system. No problems.

I tried again on my Windows Vista machine. Still crashes. I then asked for it open the debugger to get a call stack trace. Alas, HJWasm32 must be built without symbols, so that proved less than useful. I then downloaded HJWasm source, but could not build it since I have MSVC 2005 and MSVC 2017 does not run on Vista. Oh well.

Then I exited MSVC2005 with the useless stack trace. Now HJWasm32 works! I restarted MSVC and HJWasm32 still works. So now we've determined we can only produce the problem on one machine and on that machine the problem only occurs under certain conditions.

I can only suggest 2 courses of action:

  1. Eyeball the error reporting code in hopes of finding a malloc that doesn't check for NULL.
  2. Build HJWasm32 with debugging symbols and should the issue recur I can get you a decent stack trace.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/HJWasm/issues/49#issuecomment-285967404 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVIlvwpUZqdo-ggVMs7GtOujSUk74ks5rlEQWgaJpZM4MaDqA .

gwoltman commented 7 years ago

Thanks for looking into the issue. Should it recur, I'll use the debug version of HJWasm32 to help us find the problem.