libsimdpp  0.9.3
simdpp::uint8x16 Class Reference

Class representing 16x 8-bit unsigned integer vector. More...

Inheritance diagram for simdpp::uint8x16:

Public Member Functions

 uint8x16 ()
 
 uint8x16 (const uint8x16 &d)
 
uint8x16operator= (const uint8x16 &d)
 
 uint8x16 (const int128 &d)
 
 uint8x16 (const basic_int8x16 &d)
 
uint8x16operator= (int128 d)
 
uint8x16operator= (basic_int8x16 d)
 
- Public Member Functions inherited from simdpp::basic_int8x16
 basic_int8x16 ()
 
 basic_int8x16 (const basic_int8x16 &d)
 
basic_int8x16operator= (const basic_int8x16 &d)
 
 basic_int8x16 (const int128 &d)
 
basic_int8x16operator= (const int128 &d)
 
- Public Member Functions inherited from simdpp::int128
 int128 ()
 
 int128 (const int128 &d)
 
int128operator= (const int128 &d)
 

Static Public Member Functions

static uint8x16 zero ()
 Creates a unsigned int8x16 vector with the contents set to zero. More...
 
static uint8x16 load_broadcast (const uint8_t *v0)
 Creates a unsigned int8x16 vector from a value loaded from memory. More...
 
static uint8x16 set_broadcast (uint8_t v0)
 Creates a unsigned int8x16 vector from a value stored in a core register. More...
 
static uint8x16 make_const (uint8_t v0)
 Creates a unsigned int8x16 vector from a value known at compile-time. More...
 
static uint8x16 make_const (uint8_t v0, uint8_t v1)
 Creates a unsigned int8x16 vector from two values known at compile-time. More...
 
static uint8x16 make_const (uint8_t v0, uint8_t v1, uint8_t v2, uint8_t v3)
 Creates a unsigned int8x16 vector from four values known at compile-time. More...
 
static uint8x16 make_const (uint8_t v0, uint8_t v1, uint8_t v2, uint8_t v3, uint8_t v4, uint8_t v5, uint8_t v6, uint8_t v7)
 Creates a unsigned int8x16 vector from eight values known at compile-time. More...
 
static uint8x16 make_const (uint8_t v0, uint8_t v1, uint8_t v2, uint8_t v3, uint8_t v4, uint8_t v5, uint8_t v6, uint8_t v7, uint8_t v8, uint8_t v9, uint8_t v10, uint8_t v11, uint8_t v12, uint8_t v13, uint8_t v14, uint8_t v15)
 Creates a unsigned int8x16 vector from sixteen values known at compile-time. More...
 

Additional Inherited Members

- Public Types inherited from simdpp::basic_int8x16
typedef uint8_t element_type
 
typedef uint8_t uint_element_type
 
typedef basic_int8x16 int_vector_type
 
typedef uint8x16 uint_vector_type
 
typedef mask_int8x16 mask_type
 
- Static Public Attributes inherited from simdpp::basic_int8x16
static const unsigned length = 16
 
static const unsigned num_bits = 8
 
static const uint_element_type all_bits = 0xff
 

Detailed Description

Class representing 16x 8-bit unsigned integer vector.

Constructor & Destructor Documentation

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

Construct from the underlying vector type Construct from the base type

simdpp::uint8x16::uint8x16 ( const basic_int8x16 d)
inline

Construct from the underlying vector type Construct from the base type

Member Function Documentation

static uint8x16 simdpp::uint8x16::load_broadcast ( const uint8_t *  v0)
static

Creates a unsigned int8x16 vector from a value loaded from memory.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 ]
  • In SSE2-SSE4.1 this intrinsic results in at least 4 instructions.
  • In NEON this intrinsic results in at least 1 instructions.
static uint8x16 simdpp::uint8x16::make_const ( uint8_t  v0)
static

Creates a unsigned int8x16 vector from a value known at compile-time.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 ]
static uint8x16 simdpp::uint8x16::make_const ( uint8_t  v0,
uint8_t  v1 
)
static

Creates a unsigned int8x16 vector from two values known at compile-time.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v1 v0 v1 v0 v1 v0 v1 v0 v1 v0 v1 v0 v1 v0 v1 ]
static uint8x16 simdpp::uint8x16::make_const ( uint8_t  v0,
uint8_t  v1,
uint8_t  v2,
uint8_t  v3 
)
static

Creates a unsigned int8x16 vector from four values known at compile-time.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v1 v2 v3 v0 v1 v2 v3 v0 v1 v2 v3 v0 v1 v2 v3 ]
static uint8x16 simdpp::uint8x16::make_const ( uint8_t  v0,
uint8_t  v1,
uint8_t  v2,
uint8_t  v3,
uint8_t  v4,
uint8_t  v5,
uint8_t  v6,
uint8_t  v7 
)
static

Creates a unsigned int8x16 vector from eight values known at compile-time.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v1 v2 v3 v4 v5 v6 v7 v0 v1 v2 v3 v4 v5 v6 v7 ]
static uint8x16 simdpp::uint8x16::make_const ( uint8_t  v0,
uint8_t  v1,
uint8_t  v2,
uint8_t  v3,
uint8_t  v4,
uint8_t  v5,
uint8_t  v6,
uint8_t  v7,
uint8_t  v8,
uint8_t  v9,
uint8_t  v10,
uint8_t  v11,
uint8_t  v12,
uint8_t  v13,
uint8_t  v14,
uint8_t  v15 
)
static

Creates a unsigned int8x16 vector from sixteen values known at compile-time.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 ]
uint8x16& simdpp::uint8x16::operator= ( const uint8x16 d)
inline
uint8x16& simdpp::uint8x16::operator= ( int128  d)
inline

Construct from the underlying vector type Construct from the base type

uint8x16& simdpp::uint8x16::operator= ( basic_int8x16  d)
inline

Construct from the underlying vector type Construct from the base type

static uint8x16 simdpp::uint8x16::set_broadcast ( uint8_t  v0)
static

Creates a unsigned int8x16 vector from a value stored in a core register.

| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
r = [ v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 v0 ]
  • In SSE2-SSE4.1 and NEON this intrinsic results in at least 3 instructions.
static uint8x16 simdpp::uint8x16::zero ( )
static

Creates a unsigned int8x16 vector with the contents set to zero.

r0 = 0
...
r15 = 0

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