Support for Streaming SIMD Extensions to speed up vector arithmetic. More...
#include <vcl_compiler.h>#include <vxl_config.h>#include <vcl_cfloat.h>#include <vnl/vnl_config.h>#include <vnl/vnl_alloc.h>Go to the source code of this file.
Classes | |
| class | vnl_sse< T > |
| Bog standard (no sse) implementation for non sse enabled hardware and any type which doesn't have a template specialisation. More... | |
Defines | |
| #define | VNL_SSE_FORCE_INLINE inline |
| #define | VNL_SSE_STACK_ALIGNED(x) |
| #define | VNL_SSE_STACK_STORE(pf) _mm_storeu_##pf |
| #define | VNL_SSE_HEAP_STORE(pf) _mm_storeu_##pf |
| #define | VNL_SSE_HEAP_LOAD(pf) _mm_loadu_##pf |
| #define | VNL_SSE_ALLOC(n, s, a) vnl_alloc::allocate((n == 0) ? 8 : (n * s)); |
| #define | VNL_SSE_FREE(v, n, s) if (v) vnl_alloc::deallocate(v, (n == 0) ? 8 : (n * s)); |
| #define | VNL_SSE_FORCE_INLINE |
Functions | |
| VNL_SSE_FORCE_INLINE void * | vnl_sse_alloc (vcl_size_t n, unsigned size) |
| Custom memory allocation function to force 16 byte alignment of data. | |
| VNL_SSE_FORCE_INLINE void | vnl_sse_dealloc (void *mem, vcl_size_t n, unsigned size) |
| Custom memory deallocation function to free 16 byte aligned of data. | |
Support for Streaming SIMD Extensions to speed up vector arithmetic.
Modifications
2009-03-30 Peter Vanroose - Added arg_min() & arg_max() and reimplemented min() & max()
Definition in file vnl_sse.h.
| #define VNL_SSE_ALLOC | ( | n, | |
| s, | |||
| a | |||
| ) | vnl_alloc::allocate((n == 0) ? 8 : (n * s)); |
| #define VNL_SSE_FREE | ( | v, | |
| n, | |||
| s | |||
| ) | if (v) vnl_alloc::deallocate(v, (n == 0) ? 8 : (n * s)); |
| VNL_SSE_FORCE_INLINE void* vnl_sse_alloc | ( | vcl_size_t | n, |
| unsigned | size | ||
| ) |
1.7.5.1