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

Type for the manipulation of 2 float packed into one single vector. More...

#include <pints-doc.h>

Related Functions

(Note that these are not member functions.)

v2f v2f_load (const float *p)
 Loads 2 float from memory into a v2f vector. More...
 
v2f v2f_loadu (const float *p)
 Loads 2 float from memory into a v2f vector. More...
 
v2f v2f_load1 (const float *p)
 Loads 1 float from memory and broadcasts it into a v2f vector. More...
 
void v2f_store (float *p, v2f a)
 Stores a v2f vector into memory. More...
 
void v2f_storeu (float *p, v2f a)
 Stores a v2f vector into memory. More...
 
void v2f_store1 (float *p, v2f a)
 Stores the first element of a v2f vector into memory. More...
 
v2f v2f_set (float v0, float v1)
 Sets the elements of a v2f vector. More...
 
v2f v2f_rset (float v1, float v0)
 Sets the elements of a v2f vector (reverse order). More...
 
v2f v2f_set1 (float v)
 Broadcasts a single value into all elements of a v2f vector. More...
 
v2f v2f_zeros ()
 Sets all bits to 0. More...
 
v2f v2f_ones ()
 Sets all bits to 1. More...
 
v2f v2f_zero ()
 Sets all elements to 0. More...
 
v2f v2f_one ()
 Sets all elements to 1. More...
 
m2f m2f_eq (v2f a, v2f b)
 Compares the equality of the two input vectors. More...
 
m2f m2f_neq (v2f a, v2f b)
 Compares the inequality of the two input vectors. More...
 
m2f m2f_gt (v2f a, v2f b)
 Compares if elements of a are greater than those of b. More...
 
m2f m2f_geq (v2f a, v2f b)
 Compares if elements of a are greater than or equal to those of b. More...
 
m2f m2f_lt (v2f a, v2f b)
 Compares if elements of a are less than those of b. More...
 
m2f m2f_leq (v2f a, v2f b)
 Compares if elements of a are less than or equal to those of b. More...
 
m2f m2f_and (m2f a, m2f b)
 Bitwise and ( a & b ) More...
 
m2f m2f_or (m2f a, m2f b)
 Bitwise or ( a | b ) More...
 
m2f m2f_xor (m2f a, m2f b)
 Bitwise xor ( a ^ b ) More...
 
m2f m2f_not (m2f a)
 Bitwise not ( ~a ) More...
 
m2f m2f_nand (m2f a, m2f b)
 Bitwise nand ( ~(a & b) ) More...
 
m2f m2f_nor (m2f a, m2f b)
 Bitwise nor ( ~(a | b) ) More...
 
m2f m2f_nxor (m2f a, m2f b)
 Bitwise nxor ( ~(a ^ b) ) More...
 
m2f m2f_andnot (m2f a, m2f b)
 Bitwise andnot ( a & ~b ) More...
 
m2f m2f_ornot (m2f a, m2f b)
 Bitwise ornot ( a | ~b ) More...
 
v2f v2f_eq (v2f a, v2f b)
 Compares the equality of the two input vectors. More...
 
v2f v2f_neq (v2f a, v2f b)
 Compares the inequality of the two input vectors. More...
 
v2f v2f_gt (v2f a, v2f b)
 Compares if elements of a are greater than those of b. More...
 
v2f v2f_geq (v2f a, v2f b)
 Compares if elements of a are greater than or equal to those of b. More...
 
v2f v2f_lt (v2f a, v2f b)
 Compares if elements of a are less than those of b. More...
 
v2f v2f_leq (v2f a, v2f b)
 Compares if elements of a are less than or equal to those of b. More...
 
v2f v2f_and (v2f a, v2f b)
 Bitwise and ( a & b ) More...
 
v2f v2f_or (v2f a, v2f b)
 Bitwise or ( a | b ) More...
 
v2f v2f_xor (v2f a, v2f b)
 Bitwise xor ( a ^ b ) More...
 
v2f v2f_not (v2f a)
 Bitwise not ( ~a ) More...
 
v2f v2f_nand (v2f a, v2f b)
 Bitwise nand ( ~(a & b) ) More...
 
v2f v2f_nor (v2f a, v2f b)
 Bitwise nor ( ~(a | b) ) More...
 
v2f v2f_nxor (v2f a, v2f b)
 Bitwise nxor ( ~(a ^ b) ) More...
 
v2f v2f_andnot (v2f a, v2f b)
 Bitwise andnot ( a & ~b ) More...
 
v2f v2f_ornot (v2f a, v2f b)
 Bitwise ornot ( a | ~b ) More...
 
v2f v2f_add (v2f a, v2f b)
 Elementwise addition ( a + b ) More...
 
v2f v2f_sub (v2f a, v2f b)
 Elementwise subtraction ( a - b ) More...
 
v2f v2f_neg (v2f a)
 Elementwise negation ( -a ) More...
 
v2f v2f_min (v2f a, v2f b)
 Elementwise min ( a < b ? a : b ) More...
 
v2f v2f_max (v2f a, v2f b)
 Elementwise max ( a > b ? a : b ) More...
 
v2f v2f_abs (v2f a)
 Elementwise absolute value ( a > 0 ? a : -a ) More...
 
v2f v2f_mul (v2f a, v2f b)
 Elementwise multiplication ( a * b ) More...
 
v2f v2f_div (v2f a, v2f b)
 Elementwise division ( a / b ) More...
 
v2f v2f_rcp (v2f a)
 Elementwise reciprocal ( 1 / a ) More...
 
v2f v2f_frcp (v2f a)
 Fast elementwise reciprocal ( 1 / a ) More...
 
v2f v2f_sqrt (v2f a)
 Elementwise square root ( sqrt(a) ) More...
 
v2f v2f_rsqrt (v2f a)
 Elementwise square root reciprocal ( 1 / sqrt(a) ) More...
 
v2f v2f_frsqrt (v2f a)
 Fast elementwise square root reciprocal ( 1 / sqrt(a) ) More...
 
v2f v2f_fmadd (v2f a, v2f b, v2f acc)
 Fused Multiply-Add ( (a * b) + acc ) More...
 
v2f v2f_fmsub (v2f a, v2f b, v2f acc)
 Fused Multiply-Sub ( (a * b) - acc ) More...
 
v2f v2f_fnmadd (v2f a, v2f b, v2f acc)
 Fused Multiply-Add ( -(a * b) + acc ) More...
 
v2f v2f_fnmsub (v2f a, v2f b, v2f acc)
 Fused Multiply-Add ( -(a * b) - acc ) More...
 
v2f v2f_merge2_v1f (v1f a0, v1f a1)
 Merges 2 v1f vectors together. More...
 
v2f v2f_rmerge2_v1f (v1f a1, v1f a0)
 Merges 2 v1f vectors together (reverse order). More...
 
v2f v2f_merge_v1f (v1f low, v1f high)
 Merges 2 v1f vectors together. More...
 
v2f v2f_rmerge_v1f (v1f high, v1f low)
 Merges 2 v1f vectors together (reversed order). More...
 
v1f v1f_get_low_v2f (v2f a)
 Gets the low part of a v2f vector. More...
 
v1f v1f_get_high_v2f (v2f a)
 Gets the high part of a v2f vector. More...
 
v1f v1f_get_hilo_v2f (v2f a, int high)
 Conditionnaly gets the low or the high part of a v2f vector. More...
 
v2f v2f_set_low_v1f (v2f src, v1f low)
 Sets the low part of a v2f vector. More...
 
v2f v2f_set_high_v1f (v2f src, v1f high)
 Sets the high part of a v2f vector. More...
 
v2f v2f_set_hilo_v1f (v2f src, v1f a, int high)
 Conditionally sets the low or the high part of a v2f vector. More...
 
v2f v2f_blend1 (v2f a, v2f b, uint_fast8_t mask)
 Creates a new v2f vector whose elements are from a and b choosed by mask. More...
 
v2f v2f_blend2 (v2f a, v2f b, uint_fast8_t mask)
 Creates a new v2f vector whose elements are from a and b choosed by mask. More...
 
v2f v2f_blend1x2 (v2f a, v2f b, uint_fast8_t mask)
 Creates a new v2f vector whose elements are from a and b choosed by mask. More...
 
v2f v2f_blend2x1 (v2f a, v2f b, uint_fast8_t mask)
 Creates a new v2f vector whose elements are from a and b choosed by mask. More...
 
v2f v2f_blend (v2f a, v2f b, uint_fast8_t mask)
 Creates a new v2f vector whose elements are from a and b choosed by mask. More...
 
v2f v2f_hshuffle2 (v2f a, v2f b, uint_fast8_t rule)
 Shuffles (outer) a and b together using the control in rule. More...
 
v2f v2f_hshuffle2x1 (v2f a, v2f b, uint_fast8_t rule)
 Shuffles (inner) a and b together using the control in rule. More...
 
v2f v2f_permute2 (v2f a, uint_fast8_t rule)
 Shuffles (outer) a using the control in rule. More...
 
v2f v2f_permute2x1 (v2f a, uint_fast8_t rule)
 Shuffles (inner) a using the control in rule. More...
 
v2f v2f_fshuffle2 (v2f a, v2f 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...
 
v2f v2f_fshuffle2x1 (v2f a, v2f 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...
 
v2f v2f_hshuffle (v2f a, v2f b, uint_fast8_t rule)
 Shuffles a and b together using the control in rule. More...
 
v2f v2f_permute (v2f a, uint_fast8_t rule)
 Shuffles a using the control in rule. More...
 
v2f v2f_fshuffle (v2f a, v2f 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...
 
v2f v2f_reduce_add (v2f a)
 Reduction add ( + ) More...
 
v2f v2f_reduce_add_v1f (v1f a)
 Reduction add ( + ) More...
 
v2f v2f_reduce_add_v2f (v2f a)
 Reduction add ( + ) More...
 
v2f v2f_reduce_add_v4f (v4f a)
 Reduction add ( + ) More...
 
v2f v2f_reduce_add_v8f (v8f a)
 Reduction add ( + ) More...
 
v2f v2f_reduce_add_v16f (v16f a)
 Reduction add ( + ) More...
 
v2f sf_reduce_add_v2f (v2f a)
 Reduction add ( + ) More...
 
v2f v2f_reduce_mul (v2f a)
 Reduction mul ( * ) More...
 
v2f v2f_reduce_mul_v1f (v1f a)
 Reduction mul ( * ) More...
 
v2f v2f_reduce_mul_v2f (v2f a)
 Reduction mul ( * ) More...
 
v2f v2f_reduce_mul_v4f (v4f a)
 Reduction mul ( * ) More...
 
v2f v2f_reduce_mul_v8f (v8f a)
 Reduction mul ( * ) More...
 
v2f v2f_reduce_mul_v16f (v16f a)
 Reduction mul ( * ) More...
 
v2f sf_reduce_mul_v2f (v2f a)
 Reduction mul ( * ) More...
 
v2f v2f_reduce_and (v2f a)
 Reduction and ( & ) More...
 
v2f v2f_reduce_and_v1f (v1f a)
 Reduction and ( & ) More...
 
v2f v2f_reduce_and_v2f (v2f a)
 Reduction and ( & ) More...
 
v2f v2f_reduce_and_v4f (v4f a)
 Reduction and ( & ) More...
 
v2f v2f_reduce_and_v8f (v8f a)
 Reduction and ( & ) More...
 
v2f v2f_reduce_and_v16f (v16f a)
 Reduction and ( & ) More...
 
v2f sf_reduce_and_v2f (v2f a)
 Reduction and ( & ) More...
 
v2f v2f_reduce_or (v2f a)
 Reduction or ( | ) More...
 
v2f v2f_reduce_or_v1f (v1f a)
 Reduction or ( | ) More...
 
v2f v2f_reduce_or_v2f (v2f a)
 Reduction or ( | ) More...
 
v2f v2f_reduce_or_v4f (v4f a)
 Reduction or ( | ) More...
 
v2f v2f_reduce_or_v8f (v8f a)
 Reduction or ( | ) More...
 
v2f v2f_reduce_or_v16f (v16f a)
 Reduction or ( | ) More...
 
v2f sf_reduce_or_v2f (v2f a)
 Reduction or ( | ) More...
 
v2f v2f_reduce_min (v2f a)
 Reduction min ( min ) More...
 
v2f v2f_reduce_min_v1f (v1f a)
 Reduction min ( min ) More...
 
v2f v2f_reduce_min_v2f (v2f a)
 Reduction min ( min ) More...
 
v2f v2f_reduce_min_v4f (v4f a)
 Reduction min ( min ) More...
 
v2f v2f_reduce_min_v8f (v8f a)
 Reduction min ( min ) More...
 
v2f v2f_reduce_min_v16f (v16f a)
 Reduction min ( min ) More...
 
v2f sf_reduce_min_v2f (v2f a)
 Reduction min ( min ) More...
 
v2f v2f_reduce_max (v2f a)
 Reduction max ( max ) More...
 
v2f v2f_reduce_max_v1f (v1f a)
 Reduction max ( max ) More...
 
v2f v2f_reduce_max_v2f (v2f a)
 Reduction max ( max ) More...
 
v2f v2f_reduce_max_v4f (v4f a)
 Reduction max ( max ) More...
 
v2f v2f_reduce_max_v8f (v8f a)
 Reduction max ( max ) More...
 
v2f v2f_reduce_max_v16f (v16f a)
 Reduction max ( max ) More...
 
v2f sf_reduce_max_v2f (v2f a)
 Reduction max ( max ) More...
 
v2f v2f_move (v2f a)
 Forwards the input. More...
 
v2f v2f_maskz_move (m2f mask, v2f a)
 Mask the input. More...
 
v2f v2f_mask_move (m2f mask, v2f src, v2f a)
 Mask the input. More...
 
void v2f_fprintf (FILE *file, v2f a, const char *format)
 Prints a v2f vector. More...
 
void v2f_printf (v2f a, const char *format)
 Prints a v2f vector. More...
 
void v2f_fprint (FILE *file, v2f a)
 Prints a v2f vector. More...
 
void v2f_print (v2f a)
 Prints a v2f vector. More...
 
void v2f_rfprintf (FILE *file, v2f a, const char *format)
 Prints a v2f vector (reversed order) More...
 
void v2f_rprintf (v2f a, const char *format)
 Prints a v2f vector (reversed order) More...
 
void v2f_rfprint (FILE *file, v2f a)
 Prints a v2f vector (reversed order) More...
 
void v2f_rprint (v2f a)
 Prints a v2f vector (reversed order) More...
 
v2f v2f_cast_v1d (v1d a)
 Casts a v1d vector into a v2f vector. More...
 
v2f v2f_cast_v1f (v1f a)
 Casts a v1f vector into a v2f vector. More...
 
v2f v2f_cast_v1i (v1i a)
 Casts a v1i vector into a v2f vector. More...
 
v2f v2f_cast_v1l (v1l a)
 Casts a v1l vector into a v2f vector. More...
 
v2f v2f_cast_v2d (v2d a)
 Casts a v2d vector into a v2f vector. More...
 
v2f v2f_cast_v2f (v2f a)
 Casts a v2f vector into a v2f vector. More...
 
v2f v2f_cast_v2i (v2i a)
 Casts a v2i vector into a v2f vector. More...
 
v2f v2f_cast_v2l (v2l a)
 Casts a v2l vector into a v2f vector. More...
 
v2f v2f_cast_v4d (v4d a)
 Casts a v4d vector into a v2f vector. More...
 
v2f v2f_cast_v4f (v4f a)
 Casts a v4f vector into a v2f vector. More...
 
v2f v2f_cast_v4i (v4i a)
 Casts a v4i vector into a v2f vector. More...
 
v2f v2f_cast_v4l (v4l a)
 Casts a v4l vector into a v2f vector. More...
 
v2f v2f_cast_v8d (v8d a)
 Casts a v8d vector into a v2f vector. More...
 
v2f v2f_cast_v8f (v8f a)
 Casts a v8f vector into a v2f vector. More...
 
v2f v2f_cast_v8i (v8i a)
 Casts a v8i vector into a v2f vector. More...
 
v2f v2f_cast_v8l (v8l a)
 Casts a v8l vector into a v2f vector. More...
 
v2f v2f_cast_v16f (v16f a)
 Casts a v16f vector into a v2f vector. More...
 
v2f v2f_cast_v16i (v16i a)
 Casts a v16i vector into a v2f vector. More...
 
m2f m2f_cast_v2f (v2f a)
 Casts a v2f vector into a m2f vector-mask. More...
 
v2f v2f_cast_m2f (m2f a)
 Casts a m2f vector-mask into a v2f vector. More...
 
v2f v2f_cvt_v1d (v1d a)
 Converts a v1d vector into a v2f vector. More...
 
v2f v2f_cvt_v1f (v1f a)
 Converts a v1f vector into a v2f vector. More...
 
v2f v2f_cvt_v1i (v1i a)
 Converts a v1i vector into a v2f vector. More...
 
v2f v2f_cvt_v1l (v1l a)
 Converts a v1l vector into a v2f vector. More...
 
v2f v2f_cvt_v2d (v2d a)
 Converts a v2d vector into a v2f vector. More...
 
v2f v2f_cvt_v2f (v2f a)
 Converts a v2f vector into a v2f vector. More...
 
v2f v2f_cvt_v2i (v2i a)
 Converts a v2i vector into a v2f vector. More...
 
v2f v2f_cvt_v2l (v2l a)
 Converts a v2l vector into a v2f vector. More...
 
v2f v2f_cvt_v4d (v4d a)
 Converts a v4d vector into a v2f vector. More...
 
v2f v2f_cvt_v4f (v4f a)
 Converts a v4f vector into a v2f vector. More...
 
v2f v2f_cvt_v4i (v4i a)
 Converts a v4i vector into a v2f vector. More...
 
v2f v2f_cvt_v4l (v4l a)
 Converts a v4l vector into a v2f vector. More...
 
v2f v2f_cvt_v8d (v8d a)
 Converts a v8d vector into a v2f vector. More...
 
v2f v2f_cvt_v8f (v8f a)
 Converts a v8f vector into a v2f vector. More...
 
v2f v2f_cvt_v8i (v8i a)
 Converts a v8i vector into a v2f vector. More...
 
v2f v2f_cvt_v8l (v8l a)
 Converts a v8l vector into a v2f vector. More...
 
v2f v2f_cvt_v16f (v16f a)
 Converts a v16f vector into a v2f vector. More...
 
v2f v2f_cvt_v16i (v16i a)
 Converts a v16i vector into a v2f vector. More...
 
m2f m2f_cvt_v2f (v2f a)
 Converts a v2f vector into a m2f vector-mask. More...
 
v2f v2f_cvt_m2f (m2f a)
 Converts a m2f vector-mask into a v2f vector. More...
 
m2f m2f_cvt_m2d (m2d a)
 Converts a m2d vector-mask into a m2f vector-mask. More...
 
m2f m2f_cvt_m2f (m2f a)
 Converts a m2f vector-mask into a m2f vector-mask. More...
 
m2f m2f_cvt_m2i (m2i a)
 Converts a m2i vector-mask into a m2f vector-mask. More...
 
m2f m2f_cvt_m2l (m2l a)
 Converts a m2l vector-mask into a m2f vector-mask. More...
 

Detailed Description

Type for the manipulation of 2 float 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: