<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 24 December 2013 09:37, Iain Buclaw <span dir="ltr"><<a href="mailto:ibuclaw@gdcproject.org" target="_blank">ibuclaw@gdcproject.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 23 December 2013 23:02, Manu <<a href="mailto:turkeyman@gmail.com">turkeyman@gmail.com</a>> wrote:<br>

> On 23 December 2013 22:06, bearophile <<a href="mailto:bearophileHUGS@lycos.com">bearophileHUGS@lycos.com</a>> wrote:<br>
>><br>
>> Iain Buclaw:<br>
>><br>
>><br>
>> Did you really think that __simd went through a design phase? :-)<br>
>><br>
>> I understand. So there is still a problem bigger than __simd.<br>
><br>
><br>
> To be fair, I don't think this is as significant as it sounds. I agree,<br>
> __simd had no real design, it was just a convenient implementation for DMD,<br>
> but isn't that always the case for compiler intrinsics? In most cases, LLVM<br>
> tries to mirror GCC intrinsics, but there are many significant distinctions<br>
> between LLVM and GCC's intrinsics, making versions in the code for each<br>
> compiler there too.<br>
> In my experience, there is always versioning issues when making use of<br>
> compiler intrinsics, what's important is that the language is able to wrap<br>
> them up cleanly and effectively. D currently satisfies this requirement to<br>
> some extent, but in my experience with std.simd, to get to the 100% mark, I<br>
> really need __forceinline. I can't really finish std.simd to a satisfactory<br>
> level without it.<br>
<br>
</div></div>We have an @attribute("forceinline") for that... :o)<br></blockquote><div><br></div><div>DMD doesn't, which is where it's needed the most >_<</div><div>Ideally, this needs to be standardised, so compiler-specific intrinsics can be properly wrapped up.</div>
<div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
And sorry, but some compiler intrinsics for DMD really do just shoot<br>
themselves in the foot.<br>
</blockquote></div><br></div><div class="gmail_extra">Perhaps, but I'm able to make do with __simd in this case... at least, if I could wrap it effectively.</div></div>