Closed gwoltman closed 6 years ago
Will get on these asap for 2.45 which should be ready in a day or so.
From: gwoltman [mailto:notifications@github.com] Sent: 08 November 2017 05:36 To: Terraspace/UASM UASM@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Terraspace/UASM] Uasm 2.40: bad code is not raising an error (#67)
vsubpd xmm0, xmm0, zmm14
This bad code assembles as EVEX encoded vsubpd xmm0, xmm0, xmm14 rather than raising an error
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Terraspace/UASM/issues/67 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVBjiuJW_-ZyYx_AGEI_PQ0klGDSHks5s0T2sgaJpZM4QV3h2 .
Hi,
www.terraspace.co.uk/uasm64.zip http://www.terraspace.co.uk/uasm64.zip
This is the pre-release of 2.45 and should address both of these issues, please test and let me know.
Thanks!
John
From: gwoltman [mailto:notifications@github.com] Sent: 08 November 2017 05:36 To: Terraspace/UASM UASM@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Terraspace/UASM] Uasm 2.40: bad code is not raising an error (#67)
vsubpd xmm0, xmm0, zmm14
This bad code assembles as EVEX encoded vsubpd xmm0, xmm0, xmm14 rather than raising an error
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Terraspace/UASM/issues/67 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVBjiuJW_-ZyYx_AGEI_PQ0klGDSHks5s0T2sgaJpZM4QV3h2 .
New problem in 2.45 (from the .lst file):
0000BD9B 2 vcmpneqpd k1, zmm4, zmm30
Error A2071: Invalid operand size for instruction
Ah.. it’s the code to prevent that xmm0,xmm0,zmm instruction you reported, it’s not detecting the k mask regs. Will fix and update the packages.
Thanks!
From: gwoltman [mailto:notifications@github.com] Sent: 10 November 2017 20:29 To: Terraspace/UASM UASM@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/UASM] Uasm 2.40: bad code is not raising an error (#67)
New problem in 2.45 (from the .lst file):
0000BD9B 2 vcmpneqpd k1, zmm4, zmm30 Error A2071: Invalid operand size for instruction
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/UASM/issues/67#issuecomment-343577789 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVOqSlRMWLUGh7lZXPkV0_tABDDu5ks5s1LIjgaJpZM4QV3h2 .
I’ve updated the packages on the site. Please try again.
From: gwoltman [mailto:notifications@github.com] Sent: 10 November 2017 20:29 To: Terraspace/UASM UASM@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/UASM] Uasm 2.40: bad code is not raising an error (#67)
New problem in 2.45 (from the .lst file):
0000BD9B 2 vcmpneqpd k1, zmm4, zmm30 Error A2071: Invalid operand size for instruction
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/UASM/issues/67#issuecomment-343577789 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVOqSlRMWLUGh7lZXPkV0_tABDDu5ks5s1LIjgaJpZM4QV3h2 .
More issues (from .LST file):
00000077 0000000000000000 4 cmp BYTE PTR [r11+16*SZPTR+27], 0 ;; Is this a zero-padded FFT?
0000007F 4 je ??0006 ;; No, skip 7 word copy
Error A2014: invalid combination of opcode and operands
and this simple one:
0000000A 5 push r15
Error A2014: invalid combination of opcode and operands
I am reverting this change totally. It’s too unstable.
This was the logic to prevent the xmm,xmm,zmm instruction not generating an error.
Until we have a better solution in place.
From: gwoltman [mailto:notifications@github.com] Sent: 12 November 2017 01:28 To: Terraspace/UASM UASM@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/UASM] Uasm 2.40: bad code is not raising an error (#67)
More issues (from .LST file):
00000077 0000000000000000 4 cmp BYTE PTR [r11+16*SZPTR+27], 0 ;; Is this a zero-padded FFT? 0000007F 4 je ??0006 ;; No, skip 7 word copy Error A2014: invalid combination of opcode and operands
and this simple one:
0000000A 5 push r15 Error A2014: invalid combination of opcode and operands
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/UASM/issues/67#issuecomment-343706903 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVDJeqc4yHj9ApxkOPKhkVxTxj8qnks5s1kmYgaJpZM4QV3h2 .
I’ve just tested these before doing any changes, and they’re definitely working. Are you sure you’ve downloaded the latest build ?
2.45.3?
(If you right click the exe and go to properties->details, we have included a version resource in the app so you can see the specific build).
main proc
sub rsp,20h
00007FF77169109C sub rsp,20h
SZPTR equ 8
push r15
00007FF7716910A0 push r15
cmp BYTE PTR [r11+16*SZPTR+27], 0
00007FF7716910A2 cmp byte ptr [r11+9Bh],0
vcmpneqpd k1, zmm4, zmm30 ;this should be ok
00007FF7716910B0 vcmppd k1,zmm4,zmm30,4
vmovupd [rsi-96]{k7}, zmm0
00007FF7716910B7 vmovupd zmmword ptr [rsi-60h]{k7},zmm0
vmovaps [rsi-96]{k7}, zmm0
00007FF7716910C1 vmovaps zmmword ptr [rsi-60h]{k7},zmm0
vmovapd [rsi-86]{k7}, zmm2
00007FF7716910CB vmovapd zmmword ptr [rsi-56h]{k7},zmm2
vmovdqa [rsi-96],xmm0
00007FF7716910D5 vmovdqa xmmword ptr [rsi-60h],xmm0
vmovaps [rsi-96],xmm0
00007FF7716910DA vmovaps xmmword ptr [rsi-60h],xmm0
From: gwoltman [mailto:notifications@github.com] Sent: 12 November 2017 01:28 To: Terraspace/UASM UASM@noreply.github.com Cc: John Hankinson john@terraspace.co.uk; Comment comment@noreply.github.com Subject: Re: [Terraspace/UASM] Uasm 2.40: bad code is not raising an error (#67)
More issues (from .LST file):
00000077 0000000000000000 4 cmp BYTE PTR [r11+16*SZPTR+27], 0 ;; Is this a zero-padded FFT? 0000007F 4 je ??0006 ;; No, skip 7 word copy Error A2014: invalid combination of opcode and operands
and this simple one:
0000000A 5 push r15 Error A2014: invalid combination of opcode and operands
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/Terraspace/UASM/issues/67#issuecomment-343706903 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQGQVDJeqc4yHj9ApxkOPKhkVxTxj8qnks5s1kmYgaJpZM4QV3h2 .
Yes, it was 2.45.3 32-bit version.
I will not be available for the next 3 weeks. When I return I can zip up a complete build environment for you to reproduce.
Please try 2.46 now as all encoding related issues should be solved. Hopefully forever going forward! :)
Confirmed as fixed 2.46
vsubpd xmm0, xmm0, zmm14
This bad code assembles as EVEX encoded
vsubpd xmm0, xmm0, xmm14
rather than raising an error