The MASM Forum

Projects => Rarely Used Projects => GoAsm => Topic started by: wjr on April 26, 2015, 04:49:39 PM

Title: GoAsm 0.60 update
Post by: wjr on April 26, 2015, 04:49:39 PM
GoAsm – version 0.60 now available here http://www.godevtool.com/Goasm.zip (http://www.godevtool.com/Goasm.zip) with the following changes:


GoAsm - version 0.60.0.1 now up with the following adjustments:

Title: Re: GoAsm 0.60 update
Post by: FlySky on April 26, 2015, 07:39:57 PM
Great update wjr,
Thanks for all your hard work.
Title: Re: GoAsm 0.60 update
Post by: Yuri on May 03, 2015, 10:07:57 PM
Hi Wayne,

I have noticed something strange in how 0.60 treats short jumps in x64 code. For example, the jump in the code below is OK for 0.59.0.1, while 0.60 produces different results depending on whether I use the /l flag.


DATA SECTION

num DD 0


CODE SECTION

Start:
    jne >
        mov D[rbx+4],10
        lea rax,[rbx+8]
        invoke func, 0, rax
        mov D[rbx+8],8
        lea rdi,[rbx+8]
        invoke func, rdi, 0
        invoke func, rdi, addr num
    :
    ret


Quote
D:\PROG\TEST\GoAsm>goasm /x64 jump.asm

GoAsm.Exe Version 0.60.0.0 - Copyright Jeremy Gordon 2001-2015 - JG@JGnet.co.uk

Error!
Line 9 of assembler source file (jump.asm):-
Forward short jump was to a place more than 127 bytes away (by 5 bytes)
jne >

OBJ file not made

D:\PROG\TEST\GoAsm>goasm /l /x64 jump.asm

GoAsm.Exe Version 0.60.0.0 - Copyright Jeremy Gordon 2001-2015 - JG@JGnet.co.uk
Output file: jump.obj
Output file: jump.lst
Title: Re: GoAsm 0.60 update
Post by: wjr on May 04, 2015, 05:51:34 AM
Thanks! I should have caught this one (jump to wrong label). I am still working on better update testing on the 64-bit side. GoAsm version 0.60.0.1 now available.
Title: Re: GoAsm 0.60 update
Post by: Yuri on May 04, 2015, 02:00:38 PM
Thanks, Wayne, it works now.