Hello
Recently I found a problem with the "invoke" error detection algorithm. It seems that when passing subregisters, something went wrong, like in the following test case:
.xmm
option casemap:none
option dotname
option frame:auto
option win64:8
option stackbase:rsp
.code
Test1 proc Arg1:QWORD, Arg2: QWORD
mov r10, Arg1
mov r11, Arg2
ret
Test1 endp
start proc uses rbx
invoke Test1, rdx, rcx
invoke Test1, rdx, ecx
invoke Test1, edx, rcx
invoke Test1, edx, ecx
ret
start endp
end start
Compiling this code should throw an error on each invoke line, but it doesn't.
Regards, Biterider