Hi, all Recently, I updated my mencoder from the svn trunk, and compiled it with gcc under my ia32 box, however, I got the message below when running it: "Compiler did not align stack variables. Libavcodec has been miscompiled and may be very slow or crash. This is not a bug in libavcodec, but in the compiler. Do not report crashes to FFmpeg developers." The source of this message resides in libavcodec/dsputil.c #define DECLARE_ALIGNED_16(t,v) t v __attribute__ ((aligned (16))) int ff_check_alignment(void){ static int did_fail=0; DECLARE_ALIGNED_16(int, aligned); if((int)&aligned & 15){ if(!did_fail){ #if defined(HAVE_MMX) || defined(HAVE_ALTIVEC) av_log(NULL, AV_LOG_ERROR, "Compiler did not align stack variables. Libavcodec has been miscompiled\n" "and may be very slow or crash. This is not a bug in libavcodec,\n" "but in the compiler. Do not report crashes to FFmpeg developers.\n"); #endif did_fail=1; } return -1; } return 0; } As we know, gcc does not align local variables (ever since the 2.95version), the DECLARE_XXX macro may only work for global vars like this: DECLARE_ALIGNED_16(int, aligned); int ff_check_alignment(void) { static int did_fail=0; if((int)&aligned & 15) { ................ } } I wonder which compiler the developers are using, would you refer an appropriate compiler to me? -- truly yours ice
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4