[Issue 11071] REX.R and REX.W prefixes do not seem to be generated in some cases

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed Aug 12 02:32:20 UTC 2020


https://issues.dlang.org/show_bug.cgi?id=11071

Walter Bright <bugzilla at digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla at digitalmars.com

--- Comment #4 from Walter Bright <bugzilla at digitalmars.com> ---
(In reply to Joseph Cassman from comment #0)
> For some reason the following code in an asm block compiles
> 
>     mov   RAX,0x1ffffffffUL;

That compiles correctly to:

        48 B8 FF FF FF FF 01 00 00 00   mov     RAX,01FFFFFFFFh

The following:

>     and   RAX,0xffffffffUL;
>     or    RAX,0xffffffffUL;
>     xor   RAX,0xffffffffUL;
>     add   RAX,0xffffffffUL;
>     adc   RAX,0xffffffffUL;
>     sub   RAX,0xffffffffUL;
>     sbb   RAX,0xffffffffUL;
>     cmp   RAX,0xffffffffUL;
>     imul  RAX,0xffffffffUL;
>     test  RAX,0xffffffffUL;

all correctly fail to compile with:

    Error: bad type/size of operands

Because none of the instructions take 64 bit immediate operands.

--


More information about the Digitalmars-d-bugs mailing list