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

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

#include <pints-doc.h>

Related Functions

(Note that these are not member functions.)

v4f v4f_load (const float *p)
 Loads 4 float from memory into a v4f vector. More...
 
v4f v4f_loadu (const float *p)
 Loads 4 float from memory into a v4f vector. More...
 
v4f v4f_load1 (const float *p)
 Loads 1 float from memory and broadcasts it into a v4f vector. More...
 
void v4f_store (float *p, v4f a)
 Stores a v4f vector into memory. More...
 
void v4f_storeu (float *p, v4f a)
 Stores a v4f vector into memory. More...
 
void v4f_store1 (float *p, v4f a)
 Stores the first element of a v4f vector into memory. More...
 
v4f v4f_set (float v0, float v1, float v2, float v3)
 Sets the elements of a v4f vector. More...
 
v4f v4f_rset (float v3, float v2, float v1, float v0)
 Sets the elements of a v4f vector (reverse order). More...
 
v4f v4f_set1 (float v)
 Broadcasts a single value into all elements of a v4f vector. More...
 
v4f v4f_zeros ()
 Sets all bits to 0. More...
 
v4f v4f_ones ()
 Sets all bits to 1. More...
 
v4f v4f_zero ()
 Sets all elements to 0. More...
 
v4f v4f_one ()
 Sets all elements to 1. More...
 
m4f m4f_eq (v4f a, v4f b)
 Compares the equality of the two input vectors. More...
 
m4f m4f_neq (v4f a, v4f b)
 Compares the inequality of the two input vectors. More...
 
m4f m4f_gt (v4f a, v4f b)
 Compares if elements of a are greater than those of b. More...
 
m4f m4f_geq (v4f a, v4f b)
 Compares if elements of a are greater than or equal to those of b. More...
 
m4f m4f_lt (v4f a, v4f b)
 Compares if elements of a are less than those of b. More...
 
m4f m4f_leq (v4f a, v4f b)
 Compares if elements of a are less than or equal to those of b. More...
 
m4f m4f_and (m4f a, m4f b)
 Bitwise and ( a & b ) More...
 
m4f m4f_or (m4f a, m4f b)
 Bitwise or ( a | b ) More...
 
m4f m4f_xor (m4f a, m4f b)
 Bitwise xor ( a ^ b ) More...
 
m4f m4f_not (m4f a)
 Bitwise not ( ~a ) More...
 
m4f m4f_nand (m4f a, m4f b)
 Bitwise nand ( ~(a & b) ) More...
 
m4f m4f_nor (m4f a, m4f b)
 Bitwise nor ( ~(a | b) ) More...
 
m4f m4f_nxor (m4f a, m4f b)
 Bitwise nxor ( ~(a ^ b) ) More...
 
m4f m4f_andnot (m4f a, m4f b)
 Bitwise andnot ( a & ~b ) More...
 
m4f m4f_ornot (m4f a, m4f b)
 Bitwise ornot ( a | ~b ) More...
 
v4f v4f_eq (v4f a, v4f b)
 Compares the equality of the two input vectors. More...
 
v4f v4f_neq (v4f a, v4f b)
 Compares the inequality of the two input vectors. More...
 
v4f v4f_gt (v4f a, v4f b)
 Compares if elements of a are greater than those of b. More...
 
v4f v4f_geq (v4f a, v4f b)
 Compares if elements of a are greater than or equal to those of b. More...
 
v4f v4f_lt (v4f a, v4f b)
 Compares if elements of a are less than those of b. More...
 
v4f v4f_leq (v4f a, v4f b)
 Compares if elements of a are less than or equal to those of b. More...
 
v4f v4f_and (v4f a, v4f b)
 Bitwise and ( a & b ) More...
 
v4f v4f_or (v4f a, v4f b)
 Bitwise or ( a | b ) More...
 
v4f v4f_xor (v4f a, v4f b)
 Bitwise xor ( a ^ b ) More...
 
v4f v4f_not (v4f a)
 Bitwise not ( ~a ) More...
 
v4f v4f_nand (v4f a, v4f b)
 Bitwise nand ( ~(a & b) ) More...
 
v4f v4f_nor (v4f a, v4f b)
 Bitwise nor ( ~(a | b) ) More...
 
v4f v4f_nxor (v4f a, v4f b)
 Bitwise nxor ( ~(a ^ b) ) More...
 
v4f v4f_andnot (v4f a, v4f b)
 Bitwise andnot ( a & ~b ) More...
 
v4f v4f_ornot (v4f a, v4f b)
 Bitwise ornot ( a | ~b ) More...
 
v4f v4f_add (v4f a, v4f b)
 Elementwise addition ( a + b ) More...
 
v4f v4f_sub (v4f a, v4f b)
 Elementwise subtraction ( a - b ) More...
 
v4f v4f_neg (v4f a)
 Elementwise negation ( -a ) More...
 
v4f v4f_min (v4f a, v4f b)
 Elementwise min ( a < b ? a : b ) More...
 
v4f v4f_max (v4f a, v4f b)
 Elementwise max ( a > b ? a : b ) More...
 
v4f v4f_abs (v4f a)
 Elementwise absolute value ( a > 0 ? a : -a ) More...
 
v4f v4f_mul (v4f a, v4f b)
 Elementwise multiplication ( a * b ) More...
 
v4f v4f_div (v4f a, v4f b)
 Elementwise division ( a / b ) More...
 
v4f v4f_rcp (v4f a)
 Elementwise reciprocal ( 1 / a ) More...
 
v4f v4f_frcp (v4f a)
 Fast elementwise reciprocal ( 1 / a ) More...
 
v4f v4f_sqrt (v4f a)
 Elementwise square root ( sqrt(a) ) More...
 
v4f v4f_rsqrt (v4f a)
 Elementwise square root reciprocal ( 1 / sqrt(a) ) More...
 
v4f v4f_frsqrt (v4f a)
 Fast elementwise square root reciprocal ( 1 / sqrt(a) ) More...
 
v4f v4f_fmadd (v4f a, v4f b, v4f acc)
 Fused Multiply-Add ( (a * b) + acc ) More...
 
v4f v4f_fmsub (v4f a, v4f b, v4f acc)
 Fused Multiply-Sub ( (a * b) - acc ) More...
 
v4f v4f_fnmadd (v4f a, v4f b, v4f acc)
 Fused Multiply-Add ( -(a * b) + acc ) More...
 
v4f v4f_fnmsub (v4f a, v4f b, v4f acc)
 Fused Multiply-Add ( -(a * b) - acc ) More...
 
v4f v4f_merge2_v2f (v2f a0, v2f a1)
 Merges 2 v2f vectors together. More...
 
v4f v4f_merge4_v1f (v1f a0, v1f a1, v1f a2, v1f a3)
 Merges 4 v1f vectors together. More...
 
v4f v4f_rmerge2_v2f (v2f a1, v2f a0)
 Merges 2 v2f vectors together (reverse order). More...
 
v4f v4f_rmerge4_v1f (v1f a3, v1f a2, v1f a1, v1f a0)
 Merges 4 v1f vectors together (reverse order). More...
 
v4f v4f_merge_v2f (v2f low, v2f high)
 Merges 2 v2f vectors together. More...
 
v4f v4f_rmerge_v2f (v2f high, v2f low)
 Merges 2 v2f vectors together (reversed order). More...
 
v2f v2f_get_low_v4f (v4f a)
 Gets the low part of a v4f vector. More...
 
v2f v2f_get_high_v4f (v4f a)
 Gets the high part of a v4f vector. More...
 
v2f v2f_get_hilo_v4f (v4f a, int high)
 Conditionnaly gets the low or the high part of a v4f vector. More...
 
v4f v4f_set_low_v2f (v4f src, v2f low)
 Sets the low part of a v4f vector. More...
 
v4f v4f_set_high_v2f (v4f src, v2f high)
 Sets the high part of a v4f vector. More...
 
v4f v4f_set_hilo_v2f (v4f src, v2f a, int high)
 Conditionally sets the low or the high part of a v4f vector. More...
 
v4f v4f_blend1 (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_blend2 (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_blend4 (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_blend1x4 (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_blend2x2 (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_blend4x1 (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_blend (v4f a, v4f b, uint_fast8_t mask)
 Creates a new v4f vector whose elements are from a and b choosed by mask. More...
 
v4f v4f_hshuffle2 (v4f a, v4f b, uint_fast8_t rule)
 Shuffles (outer) a and b together using the control in rule. More...
 
v4f v4f_hshuffle4 (v4f a, v4f b, uint_fast8_t rule)
 Shuffles (outer) a and b together using the control in rule. More...
 
v4f v4f_hshuffle2x2 (v4f a, v4f b, uint_fast8_t rule)
 Shuffles (inner) a and b together using the control in rule. More...
 
v4f v4f_hshuffle4x1 (v4f a, v4f b, uint_fast8_t rule)
 Shuffles (inner) a and b together using the control in rule. More...
 
v4f v4f_permute2 (v4f a, uint_fast8_t rule)
 Shuffles (outer) a using the control in rule. More...
 
v4f v4f_permute4 (v4f a, uint_fast8_t rule)
 Shuffles (outer) a using the control in rule. More...
 
v4f v4f_permute2x2 (v4f a, uint_fast8_t rule)
 Shuffles (inner) a using the control in rule. More...
 
v4f v4f_permute4x1 (v4f a, uint_fast8_t rule)
 Shuffles (inner) a using the control in rule. More...
 
v4f v4f_fshuffle2 (v4f a, v4f 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...
 
v4f v4f_fshuffle4 (v4f a, v4f 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...
 
v4f v4f_fshuffle2x2 (v4f a, v4f 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...
 
v4f v4f_fshuffle4x1 (v4f a, v4f 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...
 
v4f v4f_hshuffle (v4f a, v4f b, uint_fast8_t rule)
 Shuffles a and b together using the control in rule. More...
 
v4f v4f_permute (v4f a, uint_fast8_t rule)
 Shuffles a using the control in rule. More...
 
v4f v4f_fshuffle (v4f a, v4f 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...
 
v4f v4f_reduce_add (v4f a)
 Reduction add ( + ) More...
 
v4f v4f_reduce_add_v1f (v1f a)
 Reduction add ( + ) More...
 
v4f v4f_reduce_add_v2f (v2f a)
 Reduction add ( + ) More...
 
v4f v4f_reduce_add_v4f (v4f a)
 Reduction add ( + ) More...
 
v4f v4f_reduce_add_v8f (v8f a)
 Reduction add ( + ) More...
 
v4f v4f_reduce_add_v16f (v16f a)
 Reduction add ( + ) More...
 
v4f sf_reduce_add_v4f (v4f a)
 Reduction add ( + ) More...
 
v4f v4f_reduce_mul (v4f a)
 Reduction mul ( * ) More...
 
v4f v4f_reduce_mul_v1f (v1f a)
 Reduction mul ( * ) More...
 
v4f v4f_reduce_mul_v2f (v2f a)
 Reduction mul ( * ) More...
 
v4f v4f_reduce_mul_v4f (v4f a)
 Reduction mul ( * ) More...
 
v4f v4f_reduce_mul_v8f (v8f a)
 Reduction mul ( * ) More...
 
v4f v4f_reduce_mul_v16f (v16f a)
 Reduction mul ( * ) More...
 
v4f sf_reduce_mul_v4f (v4f a)
 Reduction mul ( * ) More...
 
v4f v4f_reduce_and (v4f a)
 Reduction and ( & ) More...
 
v4f v4f_reduce_and_v1f (v1f a)
 Reduction and ( & ) More...
 
v4f v4f_reduce_and_v2f (v2f a)
 Reduction and ( & ) More...
 
v4f v4f_reduce_and_v4f (v4f a)
 Reduction and ( & ) More...
 
v4f v4f_reduce_and_v8f (v8f a)
 Reduction and ( & ) More...
 
v4f v4f_reduce_and_v16f (v16f a)
 Reduction and ( & ) More...
 
v4f sf_reduce_and_v4f (v4f a)
 Reduction and ( & ) More...
 
v4f v4f_reduce_or (v4f a)
 Reduction or ( | ) More...
 
v4f v4f_reduce_or_v1f (v1f a)
 Reduction or ( | ) More...
 
v4f v4f_reduce_or_v2f (v2f a)
 Reduction or ( | ) More...
 
v4f v4f_reduce_or_v4f (v4f a)
 Reduction or ( | ) More...
 
v4f v4f_reduce_or_v8f (v8f a)
 Reduction or ( | ) More...
 
v4f v4f_reduce_or_v16f (v16f a)
 Reduction or ( | ) More...
 
v4f sf_reduce_or_v4f (v4f a)
 Reduction or ( | ) More...
 
v4f v4f_reduce_min (v4f a)
 Reduction min ( min ) More...
 
v4f v4f_reduce_min_v1f (v1f a)
 Reduction min ( min ) More...
 
v4f v4f_reduce_min_v2f (v2f a)
 Reduction min ( min ) More...
 
v4f v4f_reduce_min_v4f (v4f a)
 Reduction min ( min ) More...
 
v4f v4f_reduce_min_v8f (v8f a)
 Reduction min ( min ) More...
 
v4f v4f_reduce_min_v16f (v16f a)
 Reduction min ( min ) More...
 
v4f sf_reduce_min_v4f (v4f a)
 Reduction min ( min ) More...
 
v4f v4f_reduce_max (v4f a)
 Reduction max ( max ) More...
 
v4f v4f_reduce_max_v1f (v1f a)
 Reduction max ( max ) More...
 
v4f v4f_reduce_max_v2f (v2f a)
 Reduction max ( max ) More...
 
v4f v4f_reduce_max_v4f (v4f a)
 Reduction max ( max ) More...
 
v4f v4f_reduce_max_v8f (v8f a)
 Reduction max ( max ) More...
 
v4f v4f_reduce_max_v16f (v16f a)
 Reduction max ( max ) More...
 
v4f sf_reduce_max_v4f (v4f a)
 Reduction max ( max ) More...
 
v4f v4f_move (v4f a)
 Forwards the input. More...
 
v4f v4f_maskz_move (m4f mask, v4f a)
 Mask the input. More...
 
v4f v4f_mask_move (m4f mask, v4f src, v4f a)
 Mask the input. More...
 
void v4f_fprintf (FILE *file, v4f a, const char *format)
 Prints a v4f vector. More...
 
void v4f_printf (v4f a, const char *format)
 Prints a v4f vector. More...
 
void v4f_fprint (FILE *file, v4f a)
 Prints a v4f vector. More...
 
void v4f_print (v4f a)
 Prints a v4f vector. More...
 
void v4f_rfprintf (FILE *file, v4f a, const char *format)
 Prints a v4f vector (reversed order) More...
 
void v4f_rprintf (v4f a, const char *format)
 Prints a v4f vector (reversed order) More...
 
void v4f_rfprint (FILE *file, v4f a)
 Prints a v4f vector (reversed order) More...
 
void v4f_rprint (v4f a)
 Prints a v4f vector (reversed order) More...
 
v4f v4f_cast_v1d (v1d a)
 Casts a v1d vector into a v4f vector. More...
 
v4f v4f_cast_v1f (v1f a)
 Casts a v1f vector into a v4f vector. More...
 
v4f v4f_cast_v1i (v1i a)
 Casts a v1i vector into a v4f vector. More...
 
v4f v4f_cast_v1l (v1l a)
 Casts a v1l vector into a v4f vector. More...
 
v4f v4f_cast_v2d (v2d a)
 Casts a v2d vector into a v4f vector. More...
 
v4f v4f_cast_v2f (v2f a)
 Casts a v2f vector into a v4f vector. More...
 
v4f v4f_cast_v2i (v2i a)
 Casts a v2i vector into a v4f vector. More...
 
v4f v4f_cast_v2l (v2l a)
 Casts a v2l vector into a v4f vector. More...
 
v4f v4f_cast_v4d (v4d a)
 Casts a v4d vector into a v4f vector. More...
 
v4f v4f_cast_v4f (v4f a)
 Casts a v4f vector into a v4f vector. More...
 
v4f v4f_cast_v4i (v4i a)
 Casts a v4i vector into a v4f vector. More...
 
v4f v4f_cast_v4l (v4l a)
 Casts a v4l vector into a v4f vector. More...
 
v4f v4f_cast_v8d (v8d a)
 Casts a v8d vector into a v4f vector. More...
 
v4f v4f_cast_v8f (v8f a)
 Casts a v8f vector into a v4f vector. More...
 
v4f v4f_cast_v8i (v8i a)
 Casts a v8i vector into a v4f vector. More...
 
v4f v4f_cast_v8l (v8l a)
 Casts a v8l vector into a v4f vector. More...
 
v4f v4f_cast_v16f (v16f a)
 Casts a v16f vector into a v4f vector. More...
 
v4f v4f_cast_v16i (v16i a)
 Casts a v16i vector into a v4f vector. More...
 
m4f m4f_cast_v4f (v4f a)
 Casts a v4f vector into a m4f vector-mask. More...
 
v4f v4f_cast_m4f (m4f a)
 Casts a m4f vector-mask into a v4f vector. More...
 
v4f v4f_cvt_v1d (v1d a)
 Converts a v1d vector into a v4f vector. More...
 
v4f v4f_cvt_v1f (v1f a)
 Converts a v1f vector into a v4f vector. More...
 
v4f v4f_cvt_v1i (v1i a)
 Converts a v1i vector into a v4f vector. More...
 
v4f v4f_cvt_v1l (v1l a)
 Converts a v1l vector into a v4f vector. More...
 
v4f v4f_cvt_v2d (v2d a)
 Converts a v2d vector into a v4f vector. More...
 
v4f v4f_cvt_v2f (v2f a)
 Converts a v2f vector into a v4f vector. More...
 
v4f v4f_cvt_v2i (v2i a)
 Converts a v2i vector into a v4f vector. More...
 
v4f v4f_cvt_v2l (v2l a)
 Converts a v2l vector into a v4f vector. More...
 
v4f v4f_cvt_v4d (v4d a)
 Converts a v4d vector into a v4f vector. More...
 
v4f v4f_cvt_v4f (v4f a)
 Converts a v4f vector into a v4f vector. More...
 
v4f v4f_cvt_v4i (v4i a)
 Converts a v4i vector into a v4f vector. More...
 
v4f v4f_cvt_v4l (v4l a)
 Converts a v4l vector into a v4f vector. More...
 
v4f v4f_cvt_v8d (v8d a)
 Converts a v8d vector into a v4f vector. More...
 
v4f v4f_cvt_v8f (v8f a)
 Converts a v8f vector into a v4f vector. More...
 
v4f v4f_cvt_v8i (v8i a)
 Converts a v8i vector into a v4f vector. More...
 
v4f v4f_cvt_v8l (v8l a)
 Converts a v8l vector into a v4f vector. More...
 
v4f v4f_cvt_v16f (v16f a)
 Converts a v16f vector into a v4f vector. More...
 
v4f v4f_cvt_v16i (v16i a)
 Converts a v16i vector into a v4f vector. More...
 
m4f m4f_cvt_v4f (v4f a)
 Converts a v4f vector into a m4f vector-mask. More...
 
v4f v4f_cvt_m4f (m4f a)
 Converts a m4f vector-mask into a v4f vector. More...
 
m4f m4f_cvt_m4d (m4d a)
 Converts a m4d vector-mask into a m4f vector-mask. More...
 
m4f m4f_cvt_m4f (m4f a)
 Converts a m4f vector-mask into a m4f vector-mask. More...
 
m4f m4f_cvt_m4i (m4i a)
 Converts a m4i vector-mask into a m4f vector-mask. More...
 
m4f m4f_cvt_m4l (m4l a)
 Converts a m4l vector-mask into a m4f vector-mask. More...
 

Detailed Description

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