option casemap:none
IFDEF __JWASM__
option frame:auto
OPTION WIN64:2
ENDIF
.code
main proc
mov rax, 0EEEEEEEEEEEEEh
and rax, 5555555555555555h
and rax, 71D67FFFEDA60000h
and rax, 0FFF7EEE000000000h
ret
main endp
end
COMMENT ?
UASM happily compiles nonsense. Same with OR, XOR,...
00000001`3fc51000 4883ec08 sub rsp,8
00000001`3fc51004 48b8eeeeeeeeeeee0e00 mov rax,0EEEEEEEEEEEEEh
00000001`3fc5100e 482555555555 and rax,55555555h
00000001`3fc51014 48250000a6ed and rax,0FFFFFFFFEDA60000h
00000001`3fc5101a 4883e000 and rax,0
00000001`3fc5101e 4883c408 add rsp,8
00000001`3fc51022 c3 ret
JWASM gives error
test64.asm(12) : Error A2235: Constant value too large: 5555555555555555h
test64.asm(13) : Error A2235: Constant value too large: 71D67FFFEDA60000h
test64.asm(14) : Error A2235: Constant value too large: FFF7EEE000000000h
MASM gives error
test64.asm(12) : error A2084:constant value too large
test64.asm(13) : error A2084:constant value too large
test64.asm(14) : error A2084:constant value too large
?