Strange things allowed in iasm

Basile B. b2.temp at gmx.com
Mon Feb 5 08:13:48 UTC 2018


On Sunday, 4 February 2018 at 05:45:02 UTC, Basile B. wrote:
> 1/
>
> void foo()
> {
>     asm pure nothrow
>     {
>         naked;
>         mov RAX, [0x10][0x20] R8;
>         ret;
>     }
> }
>
> generates
>
> ;------- SUB 0000000000449468h -------
> 0000000000449468h  mov eax, 00000030h
> 000000000044946Dh  ret
> ;-------------------------------------
>
>
> 2/
>
> void foo()
> {
>     asm pure nothrow
>     {
>         naked;
>         mov RAX, [R9][R10] R8;
>         ret;
>     }
> }
>
> generates
>
> ;------- SUB 0000000000449468h -------
> 0000000000449468h  mov rax, r8
> 000000000044946Bh  ret
> ;-------------------------------------
>
>
> IASM Parser bug ?

Decided than it is indeed a bug:

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

but maybe that the problem happens after parsing.


More information about the Digitalmars-d-learn mailing list