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)
 
int256 & operator= (const int256 &d)
 
 int256 (int128 d0, int128 d1)
 
const int128 & operator[] (unsigned i) const
 
int128 & operator[] (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 uint64x2 & u64 (unsigned i) const
 
uint64x2 & u64 (unsigned i)
 
const uint32x4 & u32 (unsigned i) const
 
uint32x4 & u32 (unsigned i)
 
const uint16x8 & u16 (unsigned i) const
 
uint16x8 & u16 (unsigned i)
 
const uint8x16 & u8 (unsigned i) const
 
uint8x16 & u8 (unsigned i)
 
const int64x2 & i64 (unsigned i) const
 
int64x2 & i64 (unsigned i)
 
const int32x4 & i32 (unsigned i) const
 
int32x4 & i32 (unsigned i)
 
const int16x8 & i16 (unsigned i) const
 
int16x8 & i16 (unsigned i)
 
const int8x16 & i8 (unsigned i) const
 
int8x16 & i8 (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: