How do I write __simd(void16*, void16) ?

Benjamin Thaut via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Thu Oct 9 13:29:45 PDT 2014


Am 09.10.2014 21:04, schrieb Etienne:
> On 2014-10-09 2:32 PM, Benjamin Thaut wrote:
>> I know that GDC stopped supporting D style inline asm a while ago. If
>> you need inline asm with GDC you have to use the gcc style inline
>> assembly. I don't know about ldc though. But generally you want to use
>> the official intrinsics with gdc and ldc because they won't perform any
>> optimizations on inline assembly.
>>
>> Kind Regards
>> Benjamin Thaut
>
> Any idea where I can find the headers in D for it?

I think a good starting point would be Manu's std.simd module. I don't 
know if he is still working on it, but a old version can be found here:

https://github.com/TurkeyMan/simd/blob/master/std/simd.d

If you have further questions you might be well advised to ask him: 
turkeyman at gmail.com

You can also find the druntime versions of ldc and gdc on github. For 
example:

https://github.com/ldc-developers/druntime/blob/ldc/src/ldc/simd.di
https://github.com/D-Programming-GDC/GDC/blob/master/libphobos/libdruntime/gcc/builtins.d

Unforunately the gcc.buildints module seems to be generated during 
compilation of gdc, so you might want to get a binary version or compile 
it yourself to see the module.

Kind Regards
Benjamin Thaut


More information about the Digitalmars-d-learn mailing list