www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - How can I use AVX instructions in D inline asm?


Now I try to use SSE/AVX instructions in D inline asm.

I have a trouble about this.

In http://dlang.org/iasm.html ,
AVX seems to be supported according to SIMD section in the paeg.
But there is no AVX opcodes, like vaddps, in Opcodes section in
the page.

So I have assumed addps can be used as vaddps with AVX registers,
and I compile the following three code.

      addps XMM0, XMM1;

      addps YMM0, YMM1;

      vaddps YMM0, YMM1;

1 - OK
2 - undefined identifier YMMx (??? I expect OK or invalid
3 - unkown opcode 'vaddps'(reasonable)

I have used ldc2 with llvm 3.5 and the compile following command.

ldc2 test.d -m64 -mcpu=core-avx2

My CPU supports AVX too.

Please point out what's wrong.

Thank you.
Sep 11 2014