libsimdpp  0.9.3
simdpp::int256 Class Reference

Base class for all 128-bit integer objects. More...

Inheritance diagram for simdpp::int256:

Public Types

typedef uint64_t element_type
 
typedef uint64_t uint_element_type
 
typedef int256 int_vector_type
 

Public Member Functions

 int256 ()
 
 int256 (const int256 &d)
 
int256operator= (const int256 &d)
 
 int256 (int128 d0, int128 d1)
 
const int128operator[] (unsigned i) const
 
int128operator[] (unsigned i)
 

Static Public Member Functions

static int256 zero ()
 Creates a 128-bit integer vector with the contents set to zero. More...
 
static int256 ones ()
 Creates a 128-bit integer vector with contents set to ones. More...
 

Static Public Attributes

static const unsigned length = 4
 
static const unsigned num_bits = 64
 
static const uint_element_type all_bits = 0xffffffffffffffff
 

Protected Member Functions

const uint64x2u64 (unsigned i) const
 
uint64x2u64 (unsigned i)
 
const uint32x4u32 (unsigned i) const
 
uint32x4u32 (unsigned i)
 
const uint16x8u16 (unsigned i) const
 
uint16x8u16 (unsigned i)
 
const uint8x16u8 (unsigned i) const
 
uint8x16u8 (unsigned i)
 
const int64x2i64 (unsigned i) const
 
int64x2i64 (unsigned i)
 
const int32x4i32 (unsigned i) const
 
int32x4i32 (unsigned i)
 
const int16x8i16 (unsigned i) const
 
int16x8i16 (unsigned i)
 
const int8x16i8 (unsigned i) const
 
int8x16i8 (unsigned i)
 

Detailed Description

Base class for all 128-bit integer objects.

Member Typedef Documentation

typedef uint64_t simdpp::int256::element_type

Constructor & Destructor Documentation

simdpp::int256::int256 ( )
inline
simdpp::int256::int256 ( const int256 d)
inline
simdpp::int256::int256 ( int128  d0,
int128  d1 
)
inline

Construct from the underlying vector type Convert to underlying vector type

Member Function Documentation

const int16x8& simdpp::int256::i16 ( unsigned  i) const
inlineprotected
int16x8& simdpp::int256::i16 ( unsigned  i)
inlineprotected
const int32x4& simdpp::int256::i32 ( unsigned  i) const
inlineprotected
int32x4& simdpp::int256::i32 ( unsigned  i)
inlineprotected
const int64x2& simdpp::int256::i64 ( unsigned  i) const
inlineprotected
int64x2& simdpp::int256::i64 ( unsigned  i)
inlineprotected
const int8x16& simdpp::int256::i8 ( unsigned  i) const
inlineprotected
int8x16& simdpp::int256::i8 ( unsigned  i)
inlineprotected
static int256 simdpp::int256::ones ( )
static

Creates a 128-bit integer vector with contents set to ones.

a[0..255] = 0
int256& simdpp::int256::operator= ( const int256 d)
inline
const int128& simdpp::int256::operator[] ( unsigned  i) const
inline
int128& simdpp::int256::operator[] ( unsigned  i)
inline
const uint16x8& simdpp::int256::u16 ( unsigned  i) const
inlineprotected
uint16x8& simdpp::int256::u16 ( unsigned  i)
inlineprotected
const uint32x4& simdpp::int256::u32 ( unsigned  i) const
inlineprotected
uint32x4& simdpp::int256::u32 ( unsigned  i)
inlineprotected
const uint64x2& simdpp::int256::u64 ( unsigned  i) const
inlineprotected
uint64x2& simdpp::int256::u64 ( unsigned  i)
inlineprotected
const uint8x16& simdpp::int256::u8 ( unsigned  i) const
inlineprotected
uint8x16& simdpp::int256::u8 ( unsigned  i)
inlineprotected
static int256 simdpp::int256::zero ( )
static

Creates a 128-bit integer vector with the contents set to zero.

a[0..255] = 0

Member Data Documentation

const uint_element_type simdpp::int256::all_bits = 0xffffffffffffffff
static
const unsigned simdpp::int256::length = 4
static
const unsigned simdpp::int256::num_bits = 64
static

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