summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2008-02-12 19:57:26 +0000
committerJens Arnold <amiconn@rockbox.org>2008-02-12 19:57:26 +0000
commit99db6dbafe4b151d960499b1dcf032f9e4797dbe (patch)
tree4cf1571b21283c34ea654b521da4f10213ca4c2c /apps
parentad5610dccde648400b900a974b9d6b76eff21221 (diff)
downloadrockbox-99db6dbafe4b151d960499b1dcf032f9e4797dbe.zip
rockbox-99db6dbafe4b151d960499b1dcf032f9e4797dbe.tar.gz
rockbox-99db6dbafe4b151d960499b1dcf032f9e4797dbe.tar.bz2
rockbox-99db6dbafe4b151d960499b1dcf032f9e4797dbe.tar.xz
Revert the buggy warning fix for gcc 4.2. It caused a sim built with gcc 4.2 to segfault. Get rid of the warning by introducing a temporary variable instead. Obviously the cfft1(pos|neg)() call is too complex for gcc 4.2 to cope without that tempvar. Oh well...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16292 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/codecs/libfaad/cfft.c16
1 files changed, 4 insertions, 12 deletions
diff --git a/apps/codecs/libfaad/cfft.c b/apps/codecs/libfaad/cfft.c
index 0785975..806dc8f 100644
--- a/apps/codecs/libfaad/cfft.c
+++ b/apps/codecs/libfaad/cfft.c
@@ -847,24 +847,16 @@ static INLINE void cfftf1neg(uint16_t n, complex_t *c, complex_t *ch,
}
}
-#if (__GNUC__ == 4) && (__GNUC_MINOR__ == 2) && (__GNUC_PATCHLEVEL__ >= 1)
-/* To me (Daniel S) this looks like a compiler error/problem so we only
- silence it this way on this specific compiler version we know causes this
- Known to happen for 4.2.1 until 4.2.3 */
-#define COMPLEXPTR *(const complex_t **)
-#else
-#define COMPLEXPTR (const complex_t *)
-#endif
-
-
void cfftf(cfft_info *cfft, complex_t *c)
{
- cfftf1neg(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, COMPLEXPTR cfft->tab, -1);
+ const complex_t *ct = (const complex_t*)cfft->tab;
+ cfftf1neg(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, ct, -1);
}
void cfftb(cfft_info *cfft, complex_t *c)
{
- cfftf1pos(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, COMPLEXPTR cfft->tab, +1);
+ const complex_t *ct = (const complex_t*)cfft->tab;
+ cfftf1pos(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, ct, +1);
}
static void cffti1(uint16_t n, complex_t *wa, uint16_t *ifac)