mirror of https://git.ffmpeg.org/ffmpeg.git
cosmetics, expand all tabs to four spaces.
Originally committed as revision 22983 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
This commit is contained in:
parent
2a80b21d38
commit
3a74415d59
|
@ -60,116 +60,116 @@ static char *args_parse(int argc, char *argv[])
|
|||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int i, funcNum;
|
||||
uint8_t *srcBuffer= (uint8_t*)av_malloc(SIZE);
|
||||
uint8_t *dstBuffer= (uint8_t*)av_malloc(SIZE);
|
||||
int failedNum=0;
|
||||
int passedNum=0;
|
||||
|
||||
av_log(NULL, AV_LOG_INFO, "memory corruption test ...\n");
|
||||
args_parse(argc, argv);
|
||||
av_log(NULL, AV_LOG_INFO, "CPU capabilities forced to %x\n", cpu_caps);
|
||||
sws_rgb2rgb_init(cpu_caps);
|
||||
|
||||
for(funcNum=0; ; funcNum++){
|
||||
struct func_info_s {
|
||||
int src_bpp;
|
||||
int dst_bpp;
|
||||
char *name;
|
||||
void (*func)(const uint8_t *src, uint8_t *dst, long src_size);
|
||||
} func_info[] = {
|
||||
FUNC(2, 2, rgb15to16),
|
||||
FUNC(2, 3, rgb15to24),
|
||||
FUNC(2, 4, rgb15to32),
|
||||
FUNC(2, 3, rgb16to24),
|
||||
FUNC(2, 4, rgb16to32),
|
||||
FUNC(3, 2, rgb24to15),
|
||||
FUNC(3, 2, rgb24to16),
|
||||
FUNC(3, 4, rgb24to32),
|
||||
FUNC(4, 2, rgb32to15),
|
||||
FUNC(4, 2, rgb32to16),
|
||||
FUNC(4, 3, rgb32to24),
|
||||
FUNC(2, 2, rgb16to15),
|
||||
FUNC(2, 2, rgb15tobgr15),
|
||||
FUNC(2, 2, rgb15tobgr16),
|
||||
FUNC(2, 3, rgb15tobgr24),
|
||||
FUNC(2, 4, rgb15tobgr32),
|
||||
FUNC(2, 2, rgb16tobgr15),
|
||||
FUNC(2, 2, rgb16tobgr16),
|
||||
FUNC(2, 3, rgb16tobgr24),
|
||||
FUNC(2, 4, rgb16tobgr32),
|
||||
FUNC(3, 2, rgb24tobgr15),
|
||||
FUNC(3, 2, rgb24tobgr16),
|
||||
FUNC(3, 3, rgb24tobgr24),
|
||||
FUNC(3, 4, rgb24tobgr32),
|
||||
FUNC(4, 2, rgb32tobgr15),
|
||||
FUNC(4, 2, rgb32tobgr16),
|
||||
FUNC(4, 3, rgb32tobgr24),
|
||||
FUNC(4, 4, rgb32tobgr32),
|
||||
FUNC(0, 0, NULL)
|
||||
};
|
||||
int width;
|
||||
int failed=0;
|
||||
int srcBpp=0;
|
||||
int dstBpp=0;
|
||||
int i, funcNum;
|
||||
uint8_t *srcBuffer= (uint8_t*)av_malloc(SIZE);
|
||||
uint8_t *dstBuffer= (uint8_t*)av_malloc(SIZE);
|
||||
int failedNum=0;
|
||||
int passedNum=0;
|
||||
|
||||
av_log(NULL, AV_LOG_INFO, "memory corruption test ...\n");
|
||||
args_parse(argc, argv);
|
||||
av_log(NULL, AV_LOG_INFO, "CPU capabilities forced to %x\n", cpu_caps);
|
||||
sws_rgb2rgb_init(cpu_caps);
|
||||
|
||||
for(funcNum=0; ; funcNum++){
|
||||
struct func_info_s {
|
||||
int src_bpp;
|
||||
int dst_bpp;
|
||||
char *name;
|
||||
void (*func)(const uint8_t *src, uint8_t *dst, long src_size);
|
||||
} func_info[] = {
|
||||
FUNC(2, 2, rgb15to16),
|
||||
FUNC(2, 3, rgb15to24),
|
||||
FUNC(2, 4, rgb15to32),
|
||||
FUNC(2, 3, rgb16to24),
|
||||
FUNC(2, 4, rgb16to32),
|
||||
FUNC(3, 2, rgb24to15),
|
||||
FUNC(3, 2, rgb24to16),
|
||||
FUNC(3, 4, rgb24to32),
|
||||
FUNC(4, 2, rgb32to15),
|
||||
FUNC(4, 2, rgb32to16),
|
||||
FUNC(4, 3, rgb32to24),
|
||||
FUNC(2, 2, rgb16to15),
|
||||
FUNC(2, 2, rgb15tobgr15),
|
||||
FUNC(2, 2, rgb15tobgr16),
|
||||
FUNC(2, 3, rgb15tobgr24),
|
||||
FUNC(2, 4, rgb15tobgr32),
|
||||
FUNC(2, 2, rgb16tobgr15),
|
||||
FUNC(2, 2, rgb16tobgr16),
|
||||
FUNC(2, 3, rgb16tobgr24),
|
||||
FUNC(2, 4, rgb16tobgr32),
|
||||
FUNC(3, 2, rgb24tobgr15),
|
||||
FUNC(3, 2, rgb24tobgr16),
|
||||
FUNC(3, 3, rgb24tobgr24),
|
||||
FUNC(3, 4, rgb24tobgr32),
|
||||
FUNC(4, 2, rgb32tobgr15),
|
||||
FUNC(4, 2, rgb32tobgr16),
|
||||
FUNC(4, 3, rgb32tobgr24),
|
||||
FUNC(4, 4, rgb32tobgr32),
|
||||
FUNC(0, 0, NULL)
|
||||
};
|
||||
int width;
|
||||
int failed=0;
|
||||
int srcBpp=0;
|
||||
int dstBpp=0;
|
||||
|
||||
if (!func_info[funcNum].func) break;
|
||||
if (!func_info[funcNum].func) break;
|
||||
|
||||
av_log(NULL, AV_LOG_INFO,".");
|
||||
memset(srcBuffer, srcByte, SIZE);
|
||||
av_log(NULL, AV_LOG_INFO,".");
|
||||
memset(srcBuffer, srcByte, SIZE);
|
||||
|
||||
for(width=32; width<64; width++){
|
||||
int dstOffset;
|
||||
for(dstOffset=128; dstOffset<196; dstOffset+=4){
|
||||
int srcOffset;
|
||||
memset(dstBuffer, dstByte, SIZE);
|
||||
for(width=32; width<64; width++){
|
||||
int dstOffset;
|
||||
for(dstOffset=128; dstOffset<196; dstOffset+=4){
|
||||
int srcOffset;
|
||||
memset(dstBuffer, dstByte, SIZE);
|
||||
|
||||
for(srcOffset=128; srcOffset<196; srcOffset+=4){
|
||||
uint8_t *src= srcBuffer+srcOffset;
|
||||
uint8_t *dst= dstBuffer+dstOffset;
|
||||
char *name=NULL;
|
||||
|
||||
if(failed) break; //don't fill the screen with shit ...
|
||||
for(srcOffset=128; srcOffset<196; srcOffset+=4){
|
||||
uint8_t *src= srcBuffer+srcOffset;
|
||||
uint8_t *dst= dstBuffer+dstOffset;
|
||||
char *name=NULL;
|
||||
|
||||
if(failed) break; //don't fill the screen with shit ...
|
||||
|
||||
srcBpp = func_info[funcNum].src_bpp;
|
||||
dstBpp = func_info[funcNum].dst_bpp;
|
||||
name = func_info[funcNum].name;
|
||||
srcBpp = func_info[funcNum].src_bpp;
|
||||
dstBpp = func_info[funcNum].dst_bpp;
|
||||
name = func_info[funcNum].name;
|
||||
|
||||
func_info[funcNum].func(src, dst, width*srcBpp);
|
||||
func_info[funcNum].func(src, dst, width*srcBpp);
|
||||
|
||||
if(!srcBpp) break;
|
||||
if(!srcBpp) break;
|
||||
|
||||
for(i=0; i<SIZE; i++){
|
||||
if(srcBuffer[i]!=srcByte){
|
||||
av_log(NULL, AV_LOG_INFO, "src damaged at %d w:%d src:%d dst:%d %s\n",
|
||||
i, width, srcOffset, dstOffset, name);
|
||||
failed=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(i=0; i<dstOffset; i++){
|
||||
if(dstBuffer[i]!=dstByte){
|
||||
av_log(NULL, AV_LOG_INFO, "dst damaged at %d w:%d src:%d dst:%d %s\n",
|
||||
i, width, srcOffset, dstOffset, name);
|
||||
failed=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(i=dstOffset + width*dstBpp; i<SIZE; i++){
|
||||
if(dstBuffer[i]!=dstByte){
|
||||
av_log(NULL, AV_LOG_INFO, "dst damaged at %d w:%d src:%d dst:%d %s\n",
|
||||
i, width, srcOffset, dstOffset, name);
|
||||
failed=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(failed) failedNum++;
|
||||
else if(srcBpp) passedNum++;
|
||||
}
|
||||
|
||||
av_log(NULL, AV_LOG_INFO, "\n%d converters passed, %d converters randomly overwrote memory\n", passedNum, failedNum);
|
||||
return failedNum;
|
||||
for(i=0; i<SIZE; i++){
|
||||
if(srcBuffer[i]!=srcByte){
|
||||
av_log(NULL, AV_LOG_INFO, "src damaged at %d w:%d src:%d dst:%d %s\n",
|
||||
i, width, srcOffset, dstOffset, name);
|
||||
failed=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(i=0; i<dstOffset; i++){
|
||||
if(dstBuffer[i]!=dstByte){
|
||||
av_log(NULL, AV_LOG_INFO, "dst damaged at %d w:%d src:%d dst:%d %s\n",
|
||||
i, width, srcOffset, dstOffset, name);
|
||||
failed=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(i=dstOffset + width*dstBpp; i<SIZE; i++){
|
||||
if(dstBuffer[i]!=dstByte){
|
||||
av_log(NULL, AV_LOG_INFO, "dst damaged at %d w:%d src:%d dst:%d %s\n",
|
||||
i, width, srcOffset, dstOffset, name);
|
||||
failed=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(failed) failedNum++;
|
||||
else if(srcBpp) passedNum++;
|
||||
}
|
||||
|
||||
av_log(NULL, AV_LOG_INFO, "\n%d converters passed, %d converters randomly overwrote memory\n", passedNum, failedNum);
|
||||
return failedNum;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue