From aa942839ceaad94d81ba85704c7aac216fccc8b8 Mon Sep 17 00:00:00 2001 From: Ludwig Nussel Date: Sat, 17 Sep 2005 14:59:28 +0000 Subject: [PATCH] apply altivec fixes from Emanuel Steen (#2383) --- code/client/snd_mix.c | 7 +++++-- code/renderer/tr_shade.c | 7 +++++-- code/renderer/tr_shade_calc.c | 7 +++++-- code/renderer/tr_surface.c | 3 +++ 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/code/client/snd_mix.c b/code/client/snd_mix.c index 02be59c5..2915b43b 100644 --- a/code/client/snd_mix.c +++ b/code/client/snd_mix.c @@ -22,6 +22,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA // snd_mix.c -- portable code to mix sounds for snd_dma.c #include "snd_local.h" +#if idppc_altivec +#include +#endif static portable_samplepair_t paintbuffer[PAINTBUFFER_SIZE]; static int snd_vol; @@ -301,9 +304,9 @@ static void S_PaintChannelFrom16( channel_t *ch, const sfx_t *sc, int count, int vector signed int merge0, merge1; vector signed int d0, d1, d2, d3; vector unsigned char samplePermute0 = - (vector unsigned char)(0, 1, 4, 5, 0, 1, 4, 5, 2, 3, 6, 7, 2, 3, 6, 7); + (vector unsigned char){0, 1, 4, 5, 0, 1, 4, 5, 2, 3, 6, 7, 2, 3, 6, 7}; vector unsigned char samplePermute1 = - (vector unsigned char)(8, 9, 12, 13, 8, 9, 12, 13, 10, 11, 14, 15, 10, 11, 14, 15); + (vector unsigned char){8, 9, 12, 13, 8, 9, 12, 13, 10, 11, 14, 15, 10, 11, 14, 15}; vector unsigned char loadPermute0, loadPermute1; // Rather than permute the vectors after we load them to do the sample diff --git a/code/renderer/tr_shade.c b/code/renderer/tr_shade.c index e6f86883..d2b164b1 100644 --- a/code/renderer/tr_shade.c +++ b/code/renderer/tr_shade.c @@ -22,6 +22,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA // tr_shade.c #include "tr_local.h" +#if idppc_altivec +#include +#endif /* @@ -409,10 +412,10 @@ static void ProjectDlightTexture( void ) { vector short colorShort; vector signed int colorInt; vector unsigned char floatColorVecPerm, modulatePerm, colorChar; - vector unsigned char vSel = (vector unsigned char)(0x00, 0x00, 0x00, 0xff, + vector unsigned char vSel = (vector unsigned char){0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, - 0x00, 0x00, 0x00, 0xff); + 0x00, 0x00, 0x00, 0xff}; #else vec3_t origin; #endif diff --git a/code/renderer/tr_shade_calc.c b/code/renderer/tr_shade_calc.c index f6a1171f..b97f6749 100644 --- a/code/renderer/tr_shade_calc.c +++ b/code/renderer/tr_shade_calc.c @@ -22,6 +22,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA // tr_shade_calc.c #include "tr_local.h" +#if idppc_altivec +#include +#endif #define WAVEVALUE( table, base, amplitude, phase, freq ) ((base) + table[ myftol( ( ( (phase) + tess.shaderTime * (freq) ) * FUNCTABLE_SIZE ) ) & FUNCTABLE_MASK ] * (amplitude)) @@ -1106,10 +1109,10 @@ void RB_CalcDiffuseColor( unsigned char *colors ) vec3_t directedLight; int numVertexes; #if idppc_altivec - vector unsigned char vSel = (vector unsigned char)(0x00, 0x00, 0x00, 0xff, + vector unsigned char vSel = (vector unsigned char){0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, - 0x00, 0x00, 0x00, 0xff); + 0x00, 0x00, 0x00, 0xff}; vector float ambientLightVec; vector float directedLightVec; vector float lightDirVec; diff --git a/code/renderer/tr_surface.c b/code/renderer/tr_surface.c index e3f00511..2f4d1c95 100644 --- a/code/renderer/tr_surface.c +++ b/code/renderer/tr_surface.c @@ -21,6 +21,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ // tr_surf.c #include "tr_local.h" +#if idppc_altivec +#include +#endif /*