Actually, it seems to be a bit more complex than that. I've stepped through it more carefully in gdb, and vlc does correctly trap SIGLL from mtvrsave and lvx in its has_altivec(). The real problem comes later on in ff_er_frame_end().
Program received signal SIGILL, Illegal instruction. 0x0c7c603c in ff_er_frame_end () from /usr/lib/libavcodec.so.0d #0 0x0c7c603c in ff_er_frame_end () from /usr/lib/libavcodec.so.0d #1 0x0c7f5bc8 in ff_h263_decode_frame () from /usr/lib/libavcodec.so.0d #2 0x0c6bac28 in avcodec_decode_video () from /usr/lib/libavcodec.so.0d 0x0c7c603c <ff_er_frame_end+8>: vxor v0,v0,v0 Attempting to play the same movie in totem gives me: 0x0d0ff34c in ff_er_frame_end () from /usr/lib/gstreamer-0.10/libgstffmpeg.so #0 0x0d0ff34c in ff_er_frame_end () from /usr/lib/gstreamer-0.10/libgstffmpeg.so #1 0x0d1baff8 in ff_h263_decode_frame () from /usr/lib/gstreamer-0.10/libgstffmpeg.so #2 0x0d038a18 in avcodec_decode_video () from /usr/lib/gstreamer-0.10/libgstffmpeg.so 0x0d0ff34c <ff_er_frame_end+8>: vxor v0,v0,v0 ffmpeg appears to be the common factor in all cases. It appears that ffmpeg is incorrectly using Altivec instructions on machines which do not support it. -- Altivec detection broken on G3 (multiple packages) https://launchpad.net/bugs/74282 -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
