Classes | Namespaces | Macros | Functions
Memory.h File Reference

Go to the source code of this file.

Classes

class  aligned_allocator< T >
 STL compatible allocator to use with with 16 byte aligned types. More...
struct  aligned_allocator< T >::rebind< U >

Namespaces

namespace  Eigen
 Namespace containing all symbols from the Eigen library.
namespace  Eigen::internal

Macros

#define ei_declare_aligned_stack_constructed_variable(TYPE, NAME, SIZE, BUFFER)
#define EIGEN_FREEBSD_MALLOC_ALREADY_ALIGNED
#define EIGEN_GLIBC_MALLOC_ALREADY_ALIGNED
#define EIGEN_HAS_MM_MALLOC
#define EIGEN_HAS_POSIX_MEMALIGN
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW_IF(NeedsToAlign)
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW_IF_VECTORIZABLE_FIXED_SIZE(Scalar, Size)
#define EIGEN_MALLOC_ALREADY_ALIGNED

Functions

template<typename T >
void aligned_delete (T *ptr, size_t size)
void aligned_free (void *ptr)
void * aligned_malloc (size_t size)
template<typename T >
T * aligned_new (size_t size)
void * aligned_realloc (void *ptr, size_t new_size, size_t old_size)
template<typename T >
EIGEN_ALWAYS_INLINE void check_size_for_overflow (size_t size)
void check_that_malloc_is_allowed ()
template<typename T , bool Align>
void conditional_aligned_delete (T *ptr, size_t size)
template<typename T , bool Align>
void conditional_aligned_delete_auto (T *ptr, size_t size)
template<bool Align>
void conditional_aligned_free (void *ptr)
template<>
void conditional_aligned_free< false > (void *ptr)
template<bool Align>
void * conditional_aligned_malloc (size_t size)
template<>
void * conditional_aligned_malloc< false > (size_t size)
template<typename T , bool Align>
T * conditional_aligned_new (size_t size)
template<typename T , bool Align>
T * conditional_aligned_new_auto (size_t size)
template<bool Align>
void * conditional_aligned_realloc (void *ptr, size_t new_size, size_t old_size)
template<>
void * conditional_aligned_realloc< false > (void *ptr, size_t new_size, size_t)
template<typename T , bool Align>
T * conditional_aligned_realloc_new (T *pts, size_t new_size, size_t old_size)
template<typename T , bool Align>
T * conditional_aligned_realloc_new_auto (T *pts, size_t new_size, size_t old_size)
template<typename T >
T * construct_elements_of_array (T *ptr, size_t size)
template<typename T >
void destruct_elements_of_array (T *ptr, size_t size)
void * generic_aligned_realloc (void *ptr, size_t size, size_t old_size)
void handmade_aligned_free (void *ptr)
void * handmade_aligned_malloc (size_t size)
void * handmade_aligned_realloc (void *ptr, size_t size, size_t=0)
void queryCacheSizes (int &l1, int &l2, int &l3)
int queryL1CacheSize ()
int queryTopLevelCacheSize ()
template<typename T >
void smart_copy (const T *start, const T *end, T *target)
void throw_std_bad_alloc ()

Macro Definition Documentation

#define ei_declare_aligned_stack_constructed_variable (   TYPE,
  NAME,
  SIZE,
  BUFFER 
)
#define EIGEN_FREEBSD_MALLOC_ALREADY_ALIGNED
#define EIGEN_GLIBC_MALLOC_ALREADY_ALIGNED
#define EIGEN_HAS_MM_MALLOC
#define EIGEN_HAS_POSIX_MEMALIGN
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW_IF (   NeedsToAlign)
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW_IF_VECTORIZABLE_FIXED_SIZE (   Scalar,
  Size 
)
#define EIGEN_MALLOC_ALREADY_ALIGNED