From: DRC Date: Wed, 5 Jan 2011 23:35:53 +0000 (+0000) Subject: Eliminate all of the __memalign() mess and just handle the alignment ourselves X-Git-Tag: 1.0.90^0 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=57423076e6189717441763de3253072dee42ff7e;p=libjpeg-turbo Eliminate all of the __memalign() mess and just handle the alignment ourselves git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@317 632fc199-4ca6-4c93-a231-07263d6284db --- diff --git a/turbojpegl.c b/turbojpegl.c index 7e812fc..9dd6eb6 100644 --- a/turbojpegl.c +++ b/turbojpegl.c @@ -23,32 +23,6 @@ #include #include #include "./turbojpeg.h" -#ifdef sun -#include -#endif - -void *__memalign(size_t boundary, size_t size) -{ - #ifdef _WIN32 - return _aligned_malloc(size, boundary); - #else - #ifdef __APPLE__ - return malloc(size); - #else - #ifdef sun - return memalign(boundary, size); - #else - void *ptr=NULL; - posix_memalign(&ptr, boundary, size); - return ptr; - #endif - #endif - #endif -} - -#ifndef _WIN32 -#define _aligned_free(addr) free(addr) -#endif #ifndef min #define min(a,b) ((a)<(b)?(a):(b)) @@ -204,9 +178,9 @@ DLLEXPORT int DLLCALL tjCompress(tjhandle h, for(i=0; inum_components; i++) { compptr=&cinfo->comp_info[i]; - _tmpbuf[i]=(JSAMPLE *)__memalign(16, + _tmpbuf[i]=(JSAMPLE *)malloc( PAD((compptr->width_in_blocks*cinfo->max_h_samp_factor*DCTSIZE) - /compptr->h_samp_factor, 16) * cinfo->max_v_samp_factor); + /compptr->h_samp_factor, 16) * cinfo->max_v_samp_factor + 16); if(!_tmpbuf[i]) _throw("Memory allocation failure"); tmpbuf[i]=(JSAMPROW *)malloc(sizeof(JSAMPROW)*cinfo->max_v_samp_factor); if(!tmpbuf[i]) _throw("Memory allocation failure"); for(row=0; rowmax_v_samp_factor; row++) - tmpbuf[i][row]=&_tmpbuf[i][ + { + unsigned char *_tmpbuf_aligned= + (unsigned char *)PAD((size_t)_tmpbuf[i], 16); + tmpbuf[i][row]=&_tmpbuf_aligned[ PAD((compptr->width_in_blocks*cinfo->max_h_samp_factor*DCTSIZE) /compptr->h_samp_factor, 16) * row]; - _tmpbuf2[i]=(JSAMPLE *)__memalign(16, - PAD(compptr->width_in_blocks*DCTSIZE, 16) * compptr->v_samp_factor); + } + _tmpbuf2[i]=(JSAMPLE *)malloc(PAD(compptr->width_in_blocks*DCTSIZE, 16) + * compptr->v_samp_factor + 16); if(!_tmpbuf2[i]) _throw("Memory allocation failure"); tmpbuf2[i]=(JSAMPROW *)malloc(sizeof(JSAMPROW)*compptr->v_samp_factor); if(!tmpbuf2[i]) _throw("Memory allocation failure"); for(row=0; rowv_samp_factor; row++) - tmpbuf2[i][row]=&_tmpbuf2[i][ + { + unsigned char *_tmpbuf2_aligned= + (unsigned char *)PAD((size_t)_tmpbuf2[i], 16); + tmpbuf2[i][row]=&_tmpbuf2_aligned[ PAD(compptr->width_in_blocks*DCTSIZE, 16) * row]; + } cw[i]=pw*compptr->h_samp_factor/cinfo->max_h_samp_factor; ch[i]=ph*compptr->v_samp_factor/cinfo->max_v_samp_factor; outbuf[i]=(JSAMPROW *)malloc(sizeof(JSAMPROW)*ch[i]); @@ -323,9 +305,9 @@ DLLEXPORT int DLLCALL tjCompress(tjhandle h, for(i=0; i