From 3d2043852d1533c79154c21c7a5f8bb453fa6e63 Mon Sep 17 00:00:00 2001 From: Nick Kurshev Date: Thu, 13 Sep 2001 07:16:59 +0000 Subject: memalign autodetection Originally committed as revision 115 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/utils.c | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) (limited to 'libavcodec') diff --git a/libavcodec/utils.c b/libavcodec/utils.c index f1253ab..78e1246 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -16,37 +16,23 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -#include #include #include #include -#include /* __GLIBC__ and __GLIBC_MINOR__ are defined here */ -#if __GLIBC__ >=2 && __GLIBC_MINOR__ >= 1 /* Fixme about glibc-2.0 */ -#define HAVE_MEMALIGN 1 -#include -#endif #include "common.h" #include "dsputil.h" #include "avcodec.h" +#ifdef HAVE_MALLOC_H +#include +#else +#include +#endif /* memory alloc */ void *av_mallocz(int size) { void *ptr; #if defined ( ARCH_X86 ) && defined ( HAVE_MEMALIGN ) -/* - From glibc-2.1.x manuals: - ------------------------- - The address of a block returned by `malloc' or `realloc' in the GNU -system is always a multiple of eight (or sixteen on 64-bit systems). -If you need a block whose address is a multiple of a higher power of -two than that, use `memalign' or `valloc'. These functions are -declared in `stdlib.h'. - - With the GNU library, you can use `free' to free the blocks that -`memalign' and `valloc' return. That does not work in BSD, -however--BSD does not provide any way to free such blocks. -*/ ptr = memalign(64,size); /* Why 64? Indeed, we should align it: -- cgit v1.1