Commit 9134e96c authored by Jean-Marc Valin's avatar Jean-Marc Valin
Browse files

Fixes SMALL_FOOTPRINT for float

parent 81af2595
......@@ -51,6 +51,9 @@
#include "celt_lpc.h"
#include "vq.h"
#if defined(SMALL_FOOTPRINT) && defined(FIXED_POINT)
#define NORM_ALIASING_HACK
#endif
/**********************************************************************/
/* */
/* DECODER */
......@@ -458,7 +461,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, int N, int LM)
if (noise_based)
{
/* Noise-based PLC/CNG */
#ifdef SMALL_FOOTPRINT
#ifdef NORM_ALIASING_HACK
celt_norm *X;
#else
VARDECL(celt_norm, X);
......@@ -471,7 +474,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, int N, int LM)
end = st->end;
effEnd = IMAX(start, IMIN(end, mode->effEBands));
#ifdef SMALL_FOOTPRINT
#ifdef NORM_ALIASING_HACK
/* This is an ugly hack that breaks aliasing rules and would be easily broken,
but it saves almost 4kB of stack. */
X = (celt_norm*)(out_syn[C-1]+overlap/2);
......@@ -731,7 +734,7 @@ int celt_decode_with_ec(CELTDecoder * OPUS_RESTRICT st, const unsigned char *dat
int spread_decision;
opus_int32 bits;
ec_dec _dec;
#ifdef SMALL_FOOTPRINT
#ifdef NORM_ALIASING_HACK
celt_norm *X;
#else
VARDECL(celt_norm, X);
......@@ -980,7 +983,7 @@ int celt_decode_with_ec(CELTDecoder * OPUS_RESTRICT st, const unsigned char *dat
/* Decode fixed codebook */
ALLOC(collapse_masks, C*nbEBands, unsigned char);
#ifdef SMALL_FOOTPRINT
#ifdef NORM_ALIASING_HACK
/* This is an ugly hack that breaks aliasing rules and would be easily broken,
but it saves almost 4kB of stack. */
X = (celt_norm*)(out_syn[CC-1]+overlap/2);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment