AVIR
High-quality pro image resizing library
 
Loading...
Searching...
No Matches
avir_float8_avx.h File Reference

Inclusion file for the "float8" type. More...

#include <immintrin.h>
#include "avir_dil.h"

Go to the source code of this file.

Classes

class  avir::float8
 SIMD packed 8-float type. More...
 

Typedefs

typedef fpclass_def_dil< float, avir ::float8 > avir::fpclass_float8_dil
 Class that can be used as the "fpclass" template parameter of the avir::CImageResizer class to perform calculation using de-interleaved SIMD algorithm, using SIMD float8 type.
 

Functions

float8 avir::clamp (const float8 &Value, const float8 &minv, const float8 &maxv)
 
float8 avir::round (const float8 &v)
 

Detailed Description

Inclusion file for the "float8" type.

This file includes the "float8" AVX-based type used for SIMD variable storage and processing.

AVIR Copyright (c) 2015-2020 Aleksey Vaneev

Function Documentation

◆ clamp()

float8 avir::clamp ( const float8 & Value,
const float8 & minv,
const float8 & maxv )

SIMD function "clamps" (clips) the specified packed values so that they are not lesser than "minv", and not greater than "maxv".

Parameters
ValueValue to clamp.
minvMinimal allowed value.
maxvMaximal allowed value.
Returns
The clamped value.

◆ round()

float8 avir::round ( const float8 & v)

SIMD rounding function, exact result.

Parameters
vValue to round.
Returns
Rounded SIMD value.