AmpGen 2.1
Loading...
Searching...
No Matches
avx2f_types.h File Reference
#include <immintrin.h>
#include <array>
#include <iostream>
#include <complex>
#include <omp.h>
#include <cmath>
#include "AmpGen/Complex.h"

Go to the source code of this file.

Classes

struct  AmpGen::AVX2f::real_v

Namespaces

namespace  AmpGen
namespace  AmpGen::AVX2f

Macros

#define libmvec_alias(F, O)

Typedefs

using AmpGen::AVX2f::complex_v = Complex<real_v>

Functions

real_v AmpGen::AVX2f::operator+ (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator- (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator* (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator/ (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator- (const real_v &x)
real_v AmpGen::AVX2f::operator& (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator| (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator^ (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator&& (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator|| (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator! (const real_v &x)
real_v AmpGen::AVX2f::operator< (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator> (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator<= (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator>= (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::operator== (const real_v &lhs, const real_v &rhs)
real_v AmpGen::AVX2f::sqrt (const real_v &v)
real_v AmpGen::AVX2f::sin (const real_v &v)
real_v AmpGen::AVX2f::cos (const real_v &v)
real_v AmpGen::AVX2f::exp (const real_v &v)
real_v AmpGen::AVX2f::log (const real_v &v)
std::array< int32_t, real_v::size > AmpGen::AVX2f::store (const __m256i &v)
void AmpGen::AVX2f::sincos (const real_v &v, real_v &s, real_v &c)
std::pair< real_v, real_vAmpGen::AVX2f::sincos (const real_v &v)
real_v AmpGen::AVX2f::tan (const real_v &v)
real_v AmpGen::AVX2f::abs (const real_v &v)
real_v AmpGen::AVX2f::select (const real_v &mask, const real_v &a, const real_v &b)
real_v AmpGen::AVX2f::select (const bool &mask, const real_v &a, const real_v &b)
real_v AmpGen::AVX2f::sign (const real_v &v)
real_v AmpGen::AVX2f::fmadd (const real_v &a, const real_v &b, const real_v &c)
real_v AmpGen::AVX2f::remainder (const real_v &a, const real_v &b)
real_v AmpGen::AVX2f::atan2 (const real_v &y, const real_v &x)
real_v AmpGen::AVX2f::gather (const double *base_addr, const real_v &offsets)
real_v AmpGen::AVX2f::fmod (const real_v &a, const real_v &b)
std::ostream & AmpGen::AVX2f::operator<< (std::ostream &os, const real_v &obj)
complex_v AmpGen::AVX2f::select (const real_v &mask, const complex_v &a, const complex_v &b)
complex_v AmpGen::AVX2f::select (const real_v &mask, const real_v &a, const complex_v &b)
complex_v AmpGen::AVX2f::select (const real_v &mask, const complex_v &a, const real_v &b)
complex_v AmpGen::AVX2f::select (const bool &mask, const complex_v &a, const complex_v &b)

Macro Definition Documentation

◆ libmvec_alias

#define libmvec_alias ( F,
O )
Value:
inline real_v O(const real_v &v) { \
auto arr = v.to_ptr(); \
return real_v(std::F(arr[0]), std::F(arr[1]), std::F(arr[2]), std::F(arr[3]), std::F(arr[4]), std::F(arr[5]), std::F(arr[6]), std::F(arr[7])); \
}

Definition at line 18 of file avx2f_types.h.