On Tue, Apr 13, 2010 at 11:57:35 +0200, Michel Dänzer wrote: > Can the problem be worked around by running the affected apps with the > environment variable SDL_ALTIVEC_BLIT_FEATURES=0? > > If yes, SDL_HasAltiVec() may just incorrectly return true on > non-Altivec-capable systems. > > If no, apparently the Altivec specific code isn't separated enough yet > in the SDL build / packaging. Should be solvable either by moving all > the Altivec specific code to separate .c files and only setting the > Altivec specific compiler flags for those, or by building the binaries > once with and without Altivec support each and installing the Altivec > enabled binaries in /usr/lib/altivec/. > As far as I can tell, if libsdl detects altivec compiler support, it builds *everything* with -maltivec, not just the files which make use of altivec intrinsics. It would probably be best to fix that by moving the altivec-using functions from src/video/SDL_blit_*.c to their own file, and only compile that file with -maltivec, so gcc doesn't generate altivec instructions for the rest of the library. For squeeze however, I think I'll nmu with altivec disabled, unless some powerpc person wants to provide a patch for the 'two passes' suggestion.
Cheers, Julien
signature.asc
Description: Digital signature