Witam
Kiedyś napisałem klasy implementujące wektor i macierz i wykonujące obliczenia a pomocą instrukcji SSE, SSE2, SSE3. Klasy były pisane pod Windowsem i kompilatorem vs2k3, wszystko działało bardzo ładnie.
Teraz jednak gdy chciałem wykorzystać stworzone kiedyś klasy ale pod LINUXem pojawił sie problem dynamicznej alokacji pamięci. Otóż mam tak przeciążone operatory new oraz delete:
void* operator new(size_t size)
{ return ( _aligned_malloc(size, 16) ); }
void operator delete (void* mem)
{ _aligned_free(mem); }
Problem w tym ze pod linuxem nie znajduje _aligned_malloc ( pod windowsem malloc.h ).
Jak zastąpić _aligned_malloc aby alokował pamięć w blokach po 16B ? albo skąd wziąć _aligned_malloc oraz _aligned_free ??