GDC review process.

Manu turkeyman at gmail.com
Wed Jun 20 02:52:05 PDT 2012


On 20 June 2012 11:14, deadalnix <deadalnix at gmail.com> wrote:

> Le 20/06/2012 09:58, Manu a écrit :
>
>> On 20 June 2012 10:42, deadalnix <deadalnix at gmail.com
>> <mailto:deadalnix at gmail.com>> wrote:
>>
>>    Le 19/06/2012 22:58, Manu a écrit :
>>
>>        This would almost entirely eliminate the usefulness of an inline
>>        assembler.
>>        Better yet, this could use the 'new' attribute syntax, which
>>        most agree
>>        will support arguments:
>>        @register(rsp) int x;
>>
>>
>>    Choosing registers is something the compiler is better at than us
>>    most of the time.
>>
>>    For this very reason, I think we want to go in the exact opposite
>>    direction : asm with compiler choosen register when possible.
>>
>>
>> ...I think you've missed the entire point of my suggestion.
>> But that's okay. I give up ;)
>>
>
> We presented you example code where your approach isn't going to do the
> trick. You are free to ignore them.
>

No, the entire point of my suggestion IS to allow seamless mixing with
conventional code, which includes compiler register assignment.
The main problem with IA is it's interference with the optimiser, and it's
inability to make automatic register selection.

Walter claimed push/pop intrinsics wouldn't work due to alignment issues,
but I think that's a moot argument, since it's identical to writing your
code in asm anyway. If the asm works, then it'll work using an intrinsic
exactly the same.
The neat bonus is, you can interleave it with structured code, any
non-critical variables can be automatically assigned by the compiler as
usual... and if the compiler feels comfortable to reorder the code, it can
do so.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120620/3122d4d9/attachment.html>


More information about the Digitalmars-d mailing list