[AD] further in the bug... need help !

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


I finally reproduced my old bug (sigsegv in blit when in 16bpp and
converting a 8bpp bitmap to 16bpp).

See my old mails for the story and the listing to reproduce it.
I added some debug symbols only to the blit.o, xwin.o, iblit16.o (i386
assembly), and exmem (the modified version to trigger the crash).

Here is the result in gdb :

Program received signal SIGSEGV, Segmentation fault.
_xwin_write_line (bmp=0x0, line=1572601899) at ./src/x/xwin.c:2548
2548       int new_line = line + bmp->y_ofs;
(gdb) bt
#0  _xwin_write_line (bmp=0x0, line=1572601899) at ./src/x/xwin.c:2548
#1  0x804c9b9 in clearMMX_loop ()
#2  0x40094ed3 in _xwin_clear_to_color (dst=0x8068568, color=0)
    at ./src/x/xvtable.c:251
#3  0x40059a85 in clear () from /usr/local/lib/liballeg-3.9.34.so
#4  0x7030100 in ?? ()

So it looks like something is wrong with the mmx optimisation, but
only in 16bpp... Well I am sure some people around here know this code
much better than I do. I am lost in this mmx optimisation, and I have
quite some bugs left to take care of in my own appli !
So some help would be welcome.
I can send you any part of what created this crash if you ask.
I tried 2 cpus (P2 400 & K6-350), and 2 compilers (gcc-2.95.2, and the
2.96.xxx in the latest redhat). It crashed everywhere !



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/