Adapting Tree Structures for Processing with SIMD,Instructions

Iakh via Digitalmars-d digitalmars-d at puremagic.com
Tue Sep 22 12:45:32 PDT 2015


On Tuesday, 22 September 2015 at 17:46:32 UTC, David Nadlinger 
wrote:
> On Tuesday, 22 September 2015 at 16:36:42 UTC, Iakh wrote:
>> __mm_movemask_epi a cornerstone of the topic currently not 
>> implemented/not supported in D :(
>> AFAIK it has irregular result format
>
> From ldc.gccbuiltins_x86:
>
> int __builtin_ia32_pmovmskb128(byte16);
> int __builtin_ia32_pmovmskb256(byte32);
>
> What am I missing?
>
>  — David

Your solution is platform dependent, isn't it?

core.simd XMM enum has commented this opcode
//PMOVMSKB = 0x660FD7

https://github.com/D-Programming-Language/druntime/blob/master/src/core/simd.d
line 241

PMOVMSKB  is opcode of the instruction. And there is no 
instruction generator for this opcode like this:
pure nothrow @nogc @safe void16 __simd(XMM opcode, void16 op1, 
void16 op2);


More information about the Digitalmars-d mailing list