PintS  0.1
Portable Intrinsics for SIMD
 All Data Structures Files Functions Groups
Related Functions
v8l Struct Reference

Type for the manipulation of 8 int64_t packed into one single vector. More...

#include <pints-doc.h>

Related Functions

(Note that these are not member functions.)

v8l v8l_load (const int64_t *p)
 Loads 8 int64_t from memory into a v8l vector. More...
 
v8l v8l_loadu (const int64_t *p)
 Loads 8 int64_t from memory into a v8l vector. More...
 
v8l v8l_load1 (const int64_t *p)
 Loads 1 int64_t from memory and broadcasts it into a v8l vector. More...
 
void v8l_store (int64_t *p, v8l a)
 Stores a v8l vector into memory. More...
 
void v8l_storeu (int64_t *p, v8l a)
 Stores a v8l vector into memory. More...
 
void v8l_store1 (int64_t *p, v8l a)
 Stores the first element of a v8l vector into memory. More...
 
v8l v8l_set (int64_t v0, int64_t v1, int64_t v2, int64_t v3, int64_t v4, int64_t v5, int64_t v6, int64_t v7)
 Sets the elements of a v8l vector. More...
 
v8l v8l_rset (int64_t v7, int64_t v6, int64_t v5, int64_t v4, int64_t v3, int64_t v2, int64_t v1, int64_t v0)
 Sets the elements of a v8l vector (reverse order). More...
 
v8l v8l_set1 (int64_t v)
 Broadcasts a single value into all elements of a v8l vector. More...
 
v8l v8l_zeros ()
 Sets all bits to 0. More...
 
v8l v8l_ones ()
 Sets all bits to 1. More...
 
v8l v8l_zero ()
 Sets all elements to 0. More...
 
v8l v8l_one ()
 Sets all elements to 1. More...
 
m8l m8l_eq (v8l a, v8l b)
 Compares the equality of the two input vectors. More...
 
m8l m8l_neq (v8l a, v8l b)
 Compares the inequality of the two input vectors. More...
 
m8l m8l_gt (v8l a, v8l b)
 Compares if elements of a are greater than those of b. More...
 
m8l m8l_geq (v8l a, v8l b)
 Compares if elements of a are greater than or equal to those of b. More...
 
m8l m8l_lt (v8l a, v8l b)
 Compares if elements of a are less than those of b. More...
 
m8l m8l_leq (v8l a, v8l b)
 Compares if elements of a are less than or equal to those of b. More...
 
m8l m8l_and (m8l a, m8l b)
 Bitwise and ( a & b ) More...
 
m8l m8l_or (m8l a, m8l b)
 Bitwise or ( a | b ) More...
 
m8l m8l_xor (m8l a, m8l b)
 Bitwise xor ( a ^ b ) More...
 
m8l m8l_not (m8l a)
 Bitwise not ( ~a ) More...
 
m8l m8l_nand (m8l a, m8l b)
 Bitwise nand ( ~(a & b) ) More...
 
m8l m8l_nor (m8l a, m8l b)
 Bitwise nor ( ~(a | b) ) More...
 
m8l m8l_nxor (m8l a, m8l b)
 Bitwise nxor ( ~(a ^ b) ) More...
 
m8l m8l_andnot (m8l a, m8l b)
 Bitwise andnot ( a & ~b ) More...
 
m8l m8l_ornot (m8l a, m8l b)
 Bitwise ornot ( a | ~b ) More...
 
v8l v8l_eq (v8l a, v8l b)
 Compares the equality of the two input vectors. More...
 
v8l v8l_neq (v8l a, v8l b)
 Compares the inequality of the two input vectors. More...
 
v8l v8l_gt (v8l a, v8l b)
 Compares if elements of a are greater than those of b. More...
 
v8l v8l_geq (v8l a, v8l b)
 Compares if elements of a are greater than or equal to those of b. More...
 
v8l v8l_lt (v8l a, v8l b)
 Compares if elements of a are less than those of b. More...
 
v8l v8l_leq (v8l a, v8l b)
 Compares if elements of a are less than or equal to those of b. More...
 
v8l v8l_and (v8l a, v8l b)
 Bitwise and ( a & b ) More...
 
v8l v8l_or (v8l a, v8l b)
 Bitwise or ( a | b ) More...
 
v8l v8l_xor (v8l a, v8l b)
 Bitwise xor ( a ^ b ) More...
 
v8l v8l_not (v8l a)
 Bitwise not ( ~a ) More...
 
v8l v8l_nand (v8l a, v8l b)
 Bitwise nand ( ~(a & b) ) More...
 
v8l v8l_nor (v8l a, v8l b)
 Bitwise nor ( ~(a | b) ) More...
 
v8l v8l_nxor (v8l a, v8l b)
 Bitwise nxor ( ~(a ^ b) ) More...
 
v8l v8l_andnot (v8l a, v8l b)
 Bitwise andnot ( a & ~b ) More...
 
v8l v8l_ornot (v8l a, v8l b)
 Bitwise ornot ( a | ~b ) More...
 
v8l v8l_add (v8l a, v8l b)
 Elementwise addition ( a + b ) More...
 
v8l v8l_sub (v8l a, v8l b)
 Elementwise subtraction ( a - b ) More...
 
v8l v8l_neg (v8l a)
 Elementwise negation ( -a ) More...
 
v8l v8l_min (v8l a, v8l b)
 Elementwise min ( a < b ? a : b ) More...
 
v8l v8l_max (v8l a, v8l b)
 Elementwise max ( a > b ? a : b ) More...
 
v8l v8l_abs (v8l a)
 Elementwise absolute value ( a > 0 ? a : -a ) More...
 
v8l v8l_mul (v8l a, v8l b)
 Elementwise multiplication ( a * b ) More...
 
v8l v8l_div (v8l a, v8l b)
 Elementwise division ( a / b ) More...
 
v8l v8l_rcp (v8l a)
 Elementwise reciprocal ( 1 / a ) More...
 
v8l v8l_frcp (v8l a)
 Fast elementwise reciprocal ( 1 / a ) More...
 
v8l v8l_sqrt (v8l a)
 Elementwise square root ( sqrt(a) ) More...
 
v8l v8l_rsqrt (v8l a)
 Elementwise square root reciprocal ( 1 / sqrt(a) ) More...
 
v8l v8l_frsqrt (v8l a)
 Fast elementwise square root reciprocal ( 1 / sqrt(a) ) More...
 
v8l v8l_fmadd (v8l a, v8l b, v8l acc)
 Fused Multiply-Add ( (a * b) + acc ) More...
 
v8l v8l_fmsub (v8l a, v8l b, v8l acc)
 Fused Multiply-Sub ( (a * b) - acc ) More...
 
v8l v8l_fnmadd (v8l a, v8l b, v8l acc)
 Fused Multiply-Add ( -(a * b) + acc ) More...
 
v8l v8l_fnmsub (v8l a, v8l b, v8l acc)
 Fused Multiply-Add ( -(a * b) - acc ) More...
 
v8l v8l_merge2_v4l (v4l a0, v4l a1)
 Merges 2 v4l vectors together. More...
 
v8l v8l_merge4_v2l (v2l a0, v2l a1, v2l a2, v2l a3)
 Merges 4 v2l vectors together. More...
 
v8l v8l_merge8_v1l (v1l a0, v1l a1, v1l a2, v1l a3, v1l a4, v1l a5, v1l a6, v1l a7)
 Merges 8 v1l vectors together. More...
 
v8l v8l_rmerge2_v4l (v4l a1, v4l a0)
 Merges 2 v4l vectors together (reverse order). More...
 
v8l v8l_rmerge4_v2l (v2l a3, v2l a2, v2l a1, v2l a0)
 Merges 4 v2l vectors together (reverse order). More...
 
v8l v8l_rmerge8_v1l (v1l a7, v1l a6, v1l a5, v1l a4, v1l a3, v1l a2, v1l a1, v1l a0)
 Merges 8 v1l vectors together (reverse order). More...
 
v8l v8l_merge_v4l (v4l low, v4l high)
 Merges 2 v4l vectors together. More...
 
v8l v8l_rmerge_v4l (v4l high, v4l low)
 Merges 2 v4l vectors together (reversed order). More...
 
v4l v4l_get_low_v8l (v8l a)
 Gets the low part of a v8l vector. More...
 
v4l v4l_get_high_v8l (v8l a)
 Gets the high part of a v8l vector. More...
 
v4l v4l_get_hilo_v8l (v8l a, int high)
 Conditionnaly gets the low or the high part of a v8l vector. More...
 
v8l v8l_set_low_v4l (v8l src, v4l low)
 Sets the low part of a v8l vector. More...
 
v8l v8l_set_high_v4l (v8l src, v4l high)
 Sets the high part of a v8l vector. More...
 
v8l v8l_set_hilo_v4l (v8l src, v4l a, int high)
 Conditionally sets the low or the high part of a v8l vector. More...
 
v8l v8l_blend1 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend2 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend4 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend8 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend1x8 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend2x4 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend4x2 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend8x1 (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_blend (v8l a, v8l b, uint_fast8_t mask)
 Creates a new v8l vector whose elements are from a and b choosed by mask. More...
 
v8l v8l_hshuffle2 (v8l a, v8l b, uint_fast8_t rule)
 Shuffles (outer) a and b together using the control in rule. More...
 
v8l v8l_hshuffle4 (v8l a, v8l b, uint_fast8_t rule)
 Shuffles (outer) a and b together using the control in rule. More...
 
v8l v8l_hshuffle8 (v8l a, v8l b, uint_fast32_t rule)
 Shuffles (outer) a and b together using the control in rule. More...
 
v8l v8l_hshuffle2x4 (v8l a, v8l b, uint_fast8_t rule)
 Shuffles (inner) a and b together using the control in rule. More...
 
v8l v8l_hshuffle4x2 (v8l a, v8l b, uint_fast8_t rule)
 Shuffles (inner) a and b together using the control in rule. More...
 
v8l v8l_hshuffle8x1 (v8l a, v8l b, uint_fast32_t rule)
 Shuffles (inner) a and b together using the control in rule. More...
 
v8l v8l_permute2 (v8l a, uint_fast8_t rule)
 Shuffles (outer) a using the control in rule. More...
 
v8l v8l_permute4 (v8l a, uint_fast8_t rule)
 Shuffles (outer) a using the control in rule. More...
 
v8l v8l_permute8 (v8l a, uint_fast32_t rule)
 Shuffles (outer) a using the control in rule. More...
 
v8l v8l_permute2x4 (v8l a, uint_fast8_t rule)
 Shuffles (inner) a using the control in rule. More...
 
v8l v8l_permute4x2 (v8l a, uint_fast8_t rule)
 Shuffles (inner) a using the control in rule. More...
 
v8l v8l_permute8x1 (v8l a, uint_fast32_t rule)
 Shuffles (inner) a using the control in rule. More...
 
v8l v8l_fshuffle2 (v8l a, v8l b, uint_fast8_t rule, uint_fast8_t mask)
 Fully shuffles (outer) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_fshuffle4 (v8l a, v8l b, uint_fast8_t rule, uint_fast8_t mask)
 Fully shuffles (outer) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_fshuffle8 (v8l a, v8l b, uint_fast32_t rule, uint_fast8_t mask)
 Fully shuffles (outer) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_fshuffle2x4 (v8l a, v8l b, uint_fast8_t rule, uint_fast8_t mask)
 Fully shuffles (inner) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_fshuffle4x2 (v8l a, v8l b, uint_fast8_t rule, uint_fast8_t mask)
 Fully shuffles (inner) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_fshuffle8x1 (v8l a, v8l b, uint_fast32_t rule, uint_fast8_t mask)
 Fully shuffles (inner) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_hshuffle (v8l a, v8l b, uint_fast32_t rule)
 Shuffles a and b together using the control in rule. More...
 
v8l v8l_permute (v8l a, uint_fast32_t rule)
 Shuffles a using the control in rule. More...
 
v8l v8l_fshuffle (v8l a, v8l b, uint_fast32_t rule, uint_fast8_t mask)
 Fully shuffles (inner) a and b using the control in rule, and blends them together using mask. More...
 
v8l v8l_reduce_add (v8l a)
 Reduction add ( + ) More...
 
v8l v8l_reduce_add_v1l (v1l a)
 Reduction add ( + ) More...
 
v8l v8l_reduce_add_v2l (v2l a)
 Reduction add ( + ) More...
 
v8l v8l_reduce_add_v4l (v4l a)
 Reduction add ( + ) More...
 
v8l v8l_reduce_add_v8l (v8l a)
 Reduction add ( + ) More...
 
v8l sl_reduce_add_v8l (v8l a)
 Reduction add ( + ) More...
 
v8l v8l_reduce_mul (v8l a)
 Reduction mul ( * ) More...
 
v8l v8l_reduce_mul_v1l (v1l a)
 Reduction mul ( * ) More...
 
v8l v8l_reduce_mul_v2l (v2l a)
 Reduction mul ( * ) More...
 
v8l v8l_reduce_mul_v4l (v4l a)
 Reduction mul ( * ) More...
 
v8l v8l_reduce_mul_v8l (v8l a)
 Reduction mul ( * ) More...
 
v8l sl_reduce_mul_v8l (v8l a)
 Reduction mul ( * ) More...
 
v8l v8l_reduce_and (v8l a)
 Reduction and ( & ) More...
 
v8l v8l_reduce_and_v1l (v1l a)
 Reduction and ( & ) More...
 
v8l v8l_reduce_and_v2l (v2l a)
 Reduction and ( & ) More...
 
v8l v8l_reduce_and_v4l (v4l a)
 Reduction and ( & ) More...
 
v8l v8l_reduce_and_v8l (v8l a)
 Reduction and ( & ) More...
 
v8l sl_reduce_and_v8l (v8l a)
 Reduction and ( & ) More...
 
v8l v8l_reduce_or (v8l a)
 Reduction or ( | ) More...
 
v8l v8l_reduce_or_v1l (v1l a)
 Reduction or ( | ) More...
 
v8l v8l_reduce_or_v2l (v2l a)
 Reduction or ( | ) More...
 
v8l v8l_reduce_or_v4l (v4l a)
 Reduction or ( | ) More...
 
v8l v8l_reduce_or_v8l (v8l a)
 Reduction or ( | ) More...
 
v8l sl_reduce_or_v8l (v8l a)
 Reduction or ( | ) More...
 
v8l v8l_reduce_min (v8l a)
 Reduction min ( min ) More...
 
v8l v8l_reduce_min_v1l (v1l a)
 Reduction min ( min ) More...
 
v8l v8l_reduce_min_v2l (v2l a)
 Reduction min ( min ) More...
 
v8l v8l_reduce_min_v4l (v4l a)
 Reduction min ( min ) More...
 
v8l v8l_reduce_min_v8l (v8l a)
 Reduction min ( min ) More...
 
v8l sl_reduce_min_v8l (v8l a)
 Reduction min ( min ) More...
 
v8l v8l_reduce_max (v8l a)
 Reduction max ( max ) More...
 
v8l v8l_reduce_max_v1l (v1l a)
 Reduction max ( max ) More...
 
v8l v8l_reduce_max_v2l (v2l a)
 Reduction max ( max ) More...
 
v8l v8l_reduce_max_v4l (v4l a)
 Reduction max ( max ) More...
 
v8l v8l_reduce_max_v8l (v8l a)
 Reduction max ( max ) More...
 
v8l sl_reduce_max_v8l (v8l a)
 Reduction max ( max ) More...
 
v8l v8l_move (v8l a)
 Forwards the input. More...
 
v8l v8l_maskz_move (m8l mask, v8l a)
 Mask the input. More...
 
v8l v8l_mask_move (m8l mask, v8l src, v8l a)
 Mask the input. More...
 
void v8l_fprintf (FILE *file, v8l a, const char *format)
 Prints a v8l vector. More...
 
void v8l_printf (v8l a, const char *format)
 Prints a v8l vector. More...
 
void v8l_fprint (FILE *file, v8l a)
 Prints a v8l vector. More...
 
void v8l_print (v8l a)
 Prints a v8l vector. More...
 
void v8l_rfprintf (FILE *file, v8l a, const char *format)
 Prints a v8l vector (reversed order) More...
 
void v8l_rprintf (v8l a, const char *format)
 Prints a v8l vector (reversed order) More...
 
void v8l_rfprint (FILE *file, v8l a)
 Prints a v8l vector (reversed order) More...
 
void v8l_rprint (v8l a)
 Prints a v8l vector (reversed order) More...
 
v8l v8l_cast_v1d (v1d a)
 Casts a v1d vector into a v8l vector. More...
 
v8l v8l_cast_v1f (v1f a)
 Casts a v1f vector into a v8l vector. More...
 
v8l v8l_cast_v1i (v1i a)
 Casts a v1i vector into a v8l vector. More...
 
v8l v8l_cast_v1l (v1l a)
 Casts a v1l vector into a v8l vector. More...
 
v8l v8l_cast_v2d (v2d a)
 Casts a v2d vector into a v8l vector. More...
 
v8l v8l_cast_v2f (v2f a)
 Casts a v2f vector into a v8l vector. More...
 
v8l v8l_cast_v2i (v2i a)
 Casts a v2i vector into a v8l vector. More...
 
v8l v8l_cast_v2l (v2l a)
 Casts a v2l vector into a v8l vector. More...
 
v8l v8l_cast_v4d (v4d a)
 Casts a v4d vector into a v8l vector. More...
 
v8l v8l_cast_v4f (v4f a)
 Casts a v4f vector into a v8l vector. More...
 
v8l v8l_cast_v4i (v4i a)
 Casts a v4i vector into a v8l vector. More...
 
v8l v8l_cast_v4l (v4l a)
 Casts a v4l vector into a v8l vector. More...
 
v8l v8l_cast_v8d (v8d a)
 Casts a v8d vector into a v8l vector. More...
 
v8l v8l_cast_v8f (v8f a)
 Casts a v8f vector into a v8l vector. More...
 
v8l v8l_cast_v8i (v8i a)
 Casts a v8i vector into a v8l vector. More...
 
v8l v8l_cast_v8l (v8l a)
 Casts a v8l vector into a v8l vector. More...
 
v8l v8l_cast_v16f (v16f a)
 Casts a v16f vector into a v8l vector. More...
 
v8l v8l_cast_v16i (v16i a)
 Casts a v16i vector into a v8l vector. More...
 
m8l m8l_cast_v8l (v8l a)
 Casts a v8l vector into a m8l vector-mask. More...
 
v8l v8l_cast_m8l (m8l a)
 Casts a m8l vector-mask into a v8l vector. More...
 
v8l v8l_cvt_v1d (v1d a)
 Converts a v1d vector into a v8l vector. More...
 
v8l v8l_cvt_v1f (v1f a)
 Converts a v1f vector into a v8l vector. More...
 
v8l v8l_cvt_v1i (v1i a)
 Converts a v1i vector into a v8l vector. More...
 
v8l v8l_cvt_v1l (v1l a)
 Converts a v1l vector into a v8l vector. More...
 
v8l v8l_cvt_v2d (v2d a)
 Converts a v2d vector into a v8l vector. More...
 
v8l v8l_cvt_v2f (v2f a)
 Converts a v2f vector into a v8l vector. More...
 
v8l v8l_cvt_v2i (v2i a)
 Converts a v2i vector into a v8l vector. More...
 
v8l v8l_cvt_v2l (v2l a)
 Converts a v2l vector into a v8l vector. More...
 
v8l v8l_cvt_v4d (v4d a)
 Converts a v4d vector into a v8l vector. More...
 
v8l v8l_cvt_v4f (v4f a)
 Converts a v4f vector into a v8l vector. More...
 
v8l v8l_cvt_v4i (v4i a)
 Converts a v4i vector into a v8l vector. More...
 
v8l v8l_cvt_v4l (v4l a)
 Converts a v4l vector into a v8l vector. More...
 
v8l v8l_cvt_v8d (v8d a)
 Converts a v8d vector into a v8l vector. More...
 
v8l v8l_cvt_v8f (v8f a)
 Converts a v8f vector into a v8l vector. More...
 
v8l v8l_cvt_v8i (v8i a)
 Converts a v8i vector into a v8l vector. More...
 
v8l v8l_cvt_v8l (v8l a)
 Converts a v8l vector into a v8l vector. More...
 
v8l v8l_cvt_v16f (v16f a)
 Converts a v16f vector into a v8l vector. More...
 
v8l v8l_cvt_v16i (v16i a)
 Converts a v16i vector into a v8l vector. More...
 
m8l m8l_cvt_v8l (v8l a)
 Converts a v8l vector into a m8l vector-mask. More...
 
v8l v8l_cvt_m8l (m8l a)
 Converts a m8l vector-mask into a v8l vector. More...
 
m8l m8l_cvt_m8d (m8d a)
 Converts a m8d vector-mask into a m8l vector-mask. More...
 
m8l m8l_cvt_m8f (m8f a)
 Converts a m8f vector-mask into a m8l vector-mask. More...
 
m8l m8l_cvt_m8i (m8i a)
 Converts a m8i vector-mask into a m8l vector-mask. More...
 
m8l m8l_cvt_m8l (m8l a)
 Converts a m8l vector-mask into a m8l vector-mask. More...
 

Detailed Description

Type for the manipulation of 8 int64_t packed into one single vector.

This structure does not actually exist. Depending on the target architecture, it can be:

Sizes of this vector:

Attention
This definition does not correspond to any actual implementation and should never be used directly. Use PintS functions instead.
The actual implementation depends on the target architecture.

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