Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
Arcane::SSESimdX2Real Class Reference

Vectorization of reals using SSE. More...

#include <arcane/utils/SimdSSE.h>

Public Types

enum  { Length = 2 }
typedef EMULSimdX2Int32 Int32IndexType

Public Member Functions

 SSESimdX2Real (__m128d _v0)
 SSESimdX2Real (Real r)
 SSESimdX2Real (const Real *base, const Int32 *idx)
 SSESimdX2Real (const Real *base, const Int32IndexType *simd_idx)
 SSESimdX2Real (const Real *base, const Int32IndexType &simd_idx)
 SSESimdX2Real (const Real *base)
Real operator[] (Integer i) const
Realoperator[] (Integer i)
void set (ARCANE_RESTRICT Real *base, const ARCANE_RESTRICT Int32 *idx) const
void set (ARCANE_RESTRICT Real *base, const ARCANE_RESTRICT Int32IndexType &simd_idx) const
void set (ARCANE_RESTRICT Real *base, const ARCANE_RESTRICT Int32IndexType *simd_idx) const
void set (ARCANE_RESTRICT Real *base) const
SSESimdX2Real operator- () const

Static Public Member Functions

static SSESimdX2Real fromScalar (Real a0, Real a1)

Public Attributes

__m128d v0

Static Public Attributes

static const int BLOCK_SIZE = 2

Detailed Description

Vectorization of reals using SSE.

Definition at line 114 of file SimdSSE.h.

Member Typedef Documentation

◆ Int32IndexType

typedef EMULSimdX2Int32 Arcane::SSESimdX2Real::Int32IndexType

Definition at line 123 of file SimdSSE.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Definition at line 119 of file SimdSSE.h.

Constructor & Destructor Documentation

◆ SSESimdX2Real() [1/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( )
inline

Definition at line 128 of file SimdSSE.h.

◆ SSESimdX2Real() [2/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( __m128d _v0)
inline

Definition at line 129 of file SimdSSE.h.

◆ SSESimdX2Real() [3/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( Real r)
inlineexplicit

Definition at line 132 of file SimdSSE.h.

◆ SSESimdX2Real() [4/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( const Real * base,
const Int32 * idx )
inline

Definition at line 144 of file SimdSSE.h.

◆ SSESimdX2Real() [5/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( const Real * base,
const Int32IndexType * simd_idx )
inline

Definition at line 147 of file SimdSSE.h.

◆ SSESimdX2Real() [6/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( const Real * base,
const Int32IndexType & simd_idx )
inline

Definition at line 152 of file SimdSSE.h.

◆ SSESimdX2Real() [7/7]

Arcane::SSESimdX2Real::SSESimdX2Real ( const Real * base)
inline

Definition at line 157 of file SimdSSE.h.

Member Function Documentation

◆ fromScalar()

SSESimdX2Real Arcane::SSESimdX2Real::fromScalar ( Real a0,
Real a1 )
inlinestatic

Definition at line 190 of file SimdSSE.h.

◆ operator-()

SSESimdX2Real Arcane::SSESimdX2Real::operator- ( ) const
inline

Definition at line 196 of file SimdSSE.h.

◆ operator[]() [1/2]

Real & Arcane::SSESimdX2Real::operator[] ( Integer i)
inline

Definition at line 163 of file SimdSSE.h.

◆ operator[]() [2/2]

Real Arcane::SSESimdX2Real::operator[] ( Integer i) const
inline

Definition at line 162 of file SimdSSE.h.

◆ set() [1/4]

void Arcane::SSESimdX2Real::set ( ARCANE_RESTRICT Real * base) const
inline

Definition at line 185 of file SimdSSE.h.

◆ set() [2/4]

void Arcane::SSESimdX2Real::set ( ARCANE_RESTRICT Real * base,
const ARCANE_RESTRICT Int32 * idx ) const
inline

Definition at line 165 of file SimdSSE.h.

◆ set() [3/4]

void Arcane::SSESimdX2Real::set ( ARCANE_RESTRICT Real * base,
const ARCANE_RESTRICT Int32IndexType & simd_idx ) const
inline

Definition at line 172 of file SimdSSE.h.

◆ set() [4/4]

void Arcane::SSESimdX2Real::set ( ARCANE_RESTRICT Real * base,
const ARCANE_RESTRICT Int32IndexType * simd_idx ) const
inline

Definition at line 177 of file SimdSSE.h.

Member Data Documentation

◆ BLOCK_SIZE

const int Arcane::SSESimdX2Real::BLOCK_SIZE = 2
static

Definition at line 118 of file SimdSSE.h.

◆ v0

__m128d Arcane::SSESimdX2Real::v0

Definition at line 127 of file SimdSSE.h.


The documentation for this class was generated from the following file: