view src/audio/SDL_mixer_MMX.h @ 5029:5d7d48157be7

Greg Jandl to SDL I did some digging, and I think I've found a better solution. By including some additional .m4 macros in the acinclude directory (http://www.gnu.org/software/autoconf-archive/ax_check_compiler_flags.html, http://www.gnu.org/software/autoconf-archive/ax_gcc_archflag.html and http://www.gnu.org/software/autoconf-archive/ax_gcc_x86_cpuid.html) then using the patch below (same as previous patch + one line change to configure.in), SDL will build correctly out of the box. The arch can then be overridden by --with-gcc-arch=<arch> (most will probably want to build with i686 there for general distribution) or --without-gcc-arch, to disable setting the arch all together. On my Atom netbook, I get -march=PentiumPro by default, which works great, as does --with-gcc-arch=i686.
author Sam Lantinga <slouken@libsdl.org>
date Tue, 18 Jan 2011 22:40:45 -0800
parents 4d46850be3f6
children
line wrap: on
line source

/*
    headers for MMX assembler version of SDL_MixAudio
    Copyright 2002 Stephane Marchesin (stephane.marchesin@wanadoo.fr)
    This code is licensed under the LGPL (see COPYING for details)

    Assumes buffer size in bytes is a multiple of 16
    Assumes SDL_MIX_MAXVOLUME = 128
*/
#include "SDL_config.h"

#if defined(SDL_BUGGY_MMX_MIXERS) /* buggy, so we're disabling them. --ryan. */
#if defined(__GNUC__) && defined(__i386__) && defined(SDL_ASSEMBLY_ROUTINES)
void SDL_MixAudio_MMX_S16(char *, char *, unsigned int, int);
void SDL_MixAudio_MMX_S8(char *, char *, unsigned int, int);
#endif
#endif /* SDL_BUGGY_MMX_MIXERS */
/* vi: set ts=4 sw=4 expandtab: */