[MPlayer-users] bugreport: crash with -fs

Dietmar Hofer didi at a-t-s.at
Tue Nov 22 10:19:18 CET 2005


Hi again

I think I forgot to mention:
it crashes only if I set "x11" as output driver. With "xv" it works. 
I often need to choose x11 for HD-resolutions; when the movie resolution is 
higher than the display ones, with xv it looks wrong and often mplayer 
crashes, but that's another issue.

> > > Please try, if possible with another version of gcc: either gcc-2.95,
> > > gcc-3.4 or 4.0.
> >
> > hmm, this is my PC @work and I have no clue how to install another
> > version on SuSE (don't want to make experiments here)...
>
> Either get some of your co-worker to help you, or ask google. I'm
> pretty confident that Suze ships at least 2 version of gcc.

You're right. I found a rpm of 2.95 on a suse ftp.
 # /opt/gcc295/bin/gcc --version
 2.95.3
Result: with this compiler the bug isn't there!

I then began to think about compiler flags. I noticed that "-O4" is set and 
wondered about this, because I remember that in gentoo forums people always 
tell NOT to use > -O2 (and I also wonder, because as of what I know O3 is the 
highest).
I changed the flags manually in config.mak, deleting the optimization option.
Result: 

cc -I../libvo -I../../libvo -I/usr/X11/include -fno-PIC -march=prescott 
-mcpu=prescott -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -DHAVE_AV_CONFIG_H -I.. 
-I../libavutil -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE   -c 
-o libpostproc/postprocess.o libpostproc/postprocess.c
libpostproc/postprocess_template.c: In function `dering_MMX2':
libpostproc/postprocess_template.c:1186: error: can't find a register in class 
`GENERAL_REGS' while reloading `asm'
make[1]: *** [libpostproc/postprocess.o] Error 1
make[1]: Leaving directory `/store/src/mplayer-current/libavcodec'
make: *** [libavcodec/libavcodec.a] Fehler 2

This was with 3.3.5 and I think it's interesting since the error is in the 
same file where my mplayer crashes.

I then tried the same with 2.95 and was very astonished that I also got a 
compile error (but not the same one).
I always thought that optimization can cause troubles, but not vice versa. How 
can it be that without optimization something doesn't compile while with it 
does? Is this normal? I think this is funny :-)

To be continued (seriously):
I retried with "-O2" succesfully, but the bug was still there.
Then I set "-march" and "-mcpu" to "i686" instead of "prescott".
Still crash.

I also compiled the newest CVS version on my private machine running Ubuntu 
5.10, gcc 4.0.x.  There I don't have the bug.
Do you think this problem is closely related to my system configuration or 
more generally to the compiler version?

If you want to continue investigation and need other info, let me know


> > I looked at the code and it seems that the problem sits in Assembler
> > code. That's too "high" for me :-)
>
> That's good, that means you're a _normal_ human being. Welcome in the club!
> :-)

*gg*

greetings
didi




More information about the MPlayer-users mailing list