www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - How to enable SIMD instructions in core.simd

reply e-y-e <yurtqbqn grr.la> writes:
Found that I was not able to use SIMD as

import core.simd : __simd;

produces the error: 'module core.simd import '__simd' not found'. 
Upon further inspection I found that the D_SIMD version is not 
defined as

version (D_SIMD)
{
     pragma(msg, "SIMD Support");
}
else
{
     pragma(msg, "No SIMD Support");
}

prints 'No SIMD Support' at compile time. In the docs for SIMD 
[1] I can see the line 'Depending on the architecture, compiler 
flags may be required to activate support for SIMD types.', but 
no information on which architectures and more importantly what 
the compiler flags are.

My architecture is Intel x86_64 and I am using dub with latest 
ldmd. How would I enable SIMD instructions in a simple way? (I 
have another issue with dub & compiler arguments also but I can 
create another thread if that continues to bother me)

Thanks in advance.

[1] https://dlang.org/spec/simd.html
Nov 19 2016
parent e-y-e <yurtqbqn grr.la> writes:
On Saturday, 19 November 2016 at 13:11:18 UTC, e-y-e wrote:
 ...
Sorry for the noise, I found an LDC issue [1] that explains where I am going wrong (in short, core.simd is not supported in LDC, instead ldc.simd should be used). [1] https://github.com/ldc-developers/ldc/issues/595
Nov 19 2016