Gromacs  2024.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes
gmx::SimdDouble Class Reference

#include <gromacs/simd/include/gromacs/simd/impl_reference/impl_reference_simd_double.h>


Double SIMD variable. Available if GMX_SIMD_HAVE_DOUBLE is 1.

This variable cannot be placed inside other structures or classes, since some compilers (including at least clang-3.7) appear to lose the alignment. This is likely particularly severe when allocating such memory on the heap, but it occurs for stack structures too.

Public Member Functions

 SimdDouble (double d)
 Construct from scalar.

Public Attributes

std::array< double,
 Internal SIMD data. Implementation dependent, don't touch. More...

Member Data Documentation

std::array<double, GMX_SIMD_DOUBLE_WIDTH> gmx::SimdDouble::simdInternal_

Internal SIMD data. Implementation dependent, don't touch.

This has to be public to enable usage in combination with static inline functions, but it should never, EVER, be accessed by any code outside the corresponding implementation directory since the type will depend on the architecture.

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