core.simd

Builtin SIMD intrinsics

Members

Enums

XMM
enum XMM

XMM opcodes that conform to the following:

Functions

loadUnaligned
V loadUnaligned(V* p)

Load unaligned vector from address. This is a compiler intrinsic.

prefetch
void prefetch(const(void)* address)

Emit prefetch instruction.

simd
V1 simd(V1 op1, V2 op2)

Generate two operand instruction with XMM 128 bit operands.

simd
V1 simd(V1 op1)

Unary SIMD instructions.

simd
V1 simd(double d)
simd
V1 simd(float f)
simd
V1 simd(V1 op1, V2 op2)

For instructions: CMPPD, CMPSS, CMPSD, CMPPS, PSHUFD, PSHUFHW, PSHUFLW, BLENDPD, BLENDPS, DPPD, DPPS, MPSADBW, PBLENDW, ROUNDPD, ROUNDPS, ROUNDSD, ROUNDSS

simd
V1 simd(V1 op1)

For instructions with the imm8 version: PSLLD, PSLLQ, PSLLW, PSRAD, PSRAW, PSRLD, PSRLQ, PSRLW, PSRLDQ, PSLLDQ

simd_sto
V1 simd_sto(V1 op1, V2 op2)

For "store" operations of the form: op1 op= op2

simd_stod
V1 simd_stod(double op1, V1 op2)
simd_stof
V1 simd_stof(float op1, V1 op2)
storeUnaligned
V storeUnaligned(V* p, V value)

Store vector to unaligned address. This is a compiler intrinsic.

Templates

Vector
template Vector(T)

Create a vector type.

Meta

Suggestion Box / Bug Report