libsimdpp  0.9.3
simdpp::int64x2 Class Reference

Class representing 2x 64-bit signed integer vector. More...

Inheritance diagram for simdpp::int64x2:

Public Types

typedef int64_t element_type
 
- Public Types inherited from simdpp::basic_int64x2
typedef uint64_t element_type
 
typedef uint64_t uint_element_type
 
typedef basic_int64x2 int_vector_type
 
typedef uint64x2 uint_vector_type
 
typedef mask_int64x2 mask_type
 
- Public Types inherited from simdpp::int128
typedef uint64_t element_type
 
typedef uint64_t uint_element_type
 
typedef int128 int_vector_type
 

Public Member Functions

 int64x2 ()
 
 int64x2 (const int64x2 &d)
 
int64x2operator= (const int64x2 &d)
 
 int64x2 (const int128 &d)
 
 int64x2 (basic_int64x2 d)
 
int64x2operator= (int128 d)
 
int64x2operator= (basic_int64x2 d)
 
 int64x2 (const float64x2 &d)
 
int64x2operator= (const float64x2 &d)
 
- Public Member Functions inherited from simdpp::basic_int64x2
 basic_int64x2 ()
 
 basic_int64x2 (const basic_int64x2 &d)
 
basic_int64x2operator= (const basic_int64x2 &d)
 
 basic_int64x2 (const int128 &d)
 
basic_int64x2operator= (int128 d)
 
 basic_int64x2 (const float64x2 &d)
 Construct from compatible float32x4 integer vector type. More...
 
basic_int64x2operator= (const float64x2 &d)
 Construct from compatible float32x4 integer vector type. More...
 
- Public Member Functions inherited from simdpp::int128
 int128 ()
 
 int128 (const int128 &d)
 
int128operator= (const int128 &d)
 

Static Public Member Functions

static int64x2 zero ()
 Creates a signed int64x4 vector with the contents set to zero. More...
 
static int64x2 load_broadcast (const int64_t *v0)
 Creates a signed int64x4 vector from a value loaded from memory. More...
 
static int64x2 set_broadcast (int64_t v0)
 Creates a signed int64x4 vector from a value stored in a core register. More...
 
static int64x2 make_const (int64_t v0)
 Creates a signed int64x4 vector from a value known at compile-time. More...
 
static int64x2 make_const (int64_t v0, int64_t v1)
 Creates a signed int64x4 vector from two values known at compile-time. More...
 

Additional Inherited Members

- Static Public Attributes inherited from simdpp::basic_int64x2
static const unsigned length = 2
 
static const unsigned num_bits = 64
 
static const uint_element_type all_bits = 0xffffffffffffffff
 

Detailed Description

Class representing 2x 64-bit signed integer vector.

Member Typedef Documentation

Constructor & Destructor Documentation

simdpp::int64x2::int64x2 ( )
inline
simdpp::int64x2::int64x2 ( const int64x2 d)
inline
simdpp::int64x2::int64x2 ( const int128 d)
inline

Construct from the underlying vector type Construct from the base type

simdpp::int64x2::int64x2 ( basic_int64x2  d)
inline

Construct from the underlying vector type Construct from the base type

simdpp::int64x2::int64x2 ( const float64x2 d)
inlineexplicit

Construct from compatible float64x4 integer vector type

Member Function Documentation

static int64x2 simdpp::int64x2::load_broadcast ( const int64_t *  v0)
static

Creates a signed int64x4 vector from a value loaded from memory.

| 0 1 |
r = [ v0 v0 ]
  • In SSE2-SSE4.1 this intrinsic results in at least 2 instructions.
  • In NEON this intrinsic results in at least 1 instructions.
static int64x2 simdpp::int64x2::make_const ( int64_t  v0)
static

Creates a signed int64x4 vector from a value known at compile-time.

| 0 1 |
r = [ v0 v0 ]
static int64x2 simdpp::int64x2::make_const ( int64_t  v0,
int64_t  v1 
)
static

Creates a signed int64x4 vector from two values known at compile-time.

| 0 1 |
r = [ v0 v1 ]
int64x2& simdpp::int64x2::operator= ( const int64x2 d)
inline
int64x2& simdpp::int64x2::operator= ( int128  d)
inline

Construct from the underlying vector type Construct from the base type

int64x2& simdpp::int64x2::operator= ( basic_int64x2  d)
inline

Construct from the underlying vector type Construct from the base type

int64x2& simdpp::int64x2::operator= ( const float64x2 d)
inline

Construct from compatible float64x4 integer vector type

static int64x2 simdpp::int64x2::set_broadcast ( int64_t  v0)
static

Creates a signed int64x4 vector from a value stored in a core register.

| 0 1 |
r = [ v0 v0 ]
  • In SSE2-SSE4.1 and NEON this intrinsic results in at least 2 instructions.
static int64x2 simdpp::int64x2::zero ( )
static

Creates a signed int64x4 vector with the contents set to zero.

r0 = 0
r1 = 0

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