summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--src/mp3-c-synth.c2
-rw-r--r--src/mp3-c.c14
3 files changed, 15 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 941f27e..0785344 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-12-05 Josep Torra <josep@fluendo.com>
+
+ * src/mp3-c-synth.c:
+ * src/mp3-c.c: (inv_mdct_l), (inv_mdct), (III_hybrid):
+ Use the flag --enable-tune-vfp to decide if the assembly code
+ have to be turn on.
+
2011-12-01 Josep Torra <josep@fluendo.com>
* src/decode.c:
diff --git a/src/mp3-c-synth.c b/src/mp3-c-synth.c
index 5516e72..b487d2f 100644
--- a/src/mp3-c-synth.c
+++ b/src/mp3-c-synth.c
@@ -146,7 +146,7 @@ MPG_DCT_32 (gfloat in[32], gfloat out[32])
}
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
#define CONVERT_TO_INTEGER(v,d) \
" fcmpezs " v " \n\t" \
" fmstat \n\t" \
diff --git a/src/mp3-c.c b/src/mp3-c.c
index d313d96..6e70f1c 100644
--- a/src/mp3-c.c
+++ b/src/mp3-c.c
@@ -1195,7 +1195,7 @@ inv_mdct_s (gfloat invec[6], gfloat outvec[12])
outvec[11] = -h[2];
}
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
static inline void
calculate_H (gfloat * H, gfloat * invec)
{
@@ -1236,7 +1236,7 @@ inv_mdct_l (gfloat invec[18], gfloat outvec[36])
int i;
gfloat H[17], h[18], even[9], odd[9], even_idct[9], odd_idct[9], *tmp;
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
calculate_H (H, invec);
#elif defined(USE_LIBOIL)
oil_add_f32 (H, invec, invec + 1, 17);
@@ -1358,7 +1358,7 @@ imdct_9pt (gfloat invec[9], gfloat outvec[9])
}
}
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
static inline void
dewindow_block_type_2 (gfloat * dst, gfloat * src, gfloat * win )
{
@@ -1460,7 +1460,7 @@ inv_mdct (gfloat in[18], gfloat out[36], gint block_type)
/* The three short blocks must be windowed and overlapped added
* with each other */
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
dewindow_block_type_2 (tmpptr, tmp, (gfloat *)win[2]);
#else
for (j = 0; j < 12; j++) {
@@ -1472,7 +1472,7 @@ inv_mdct (gfloat in[18], gfloat out[36], gint block_type)
inv_mdct_l (in, out);
/* Window the imdct result */
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
dewindow_block_type_other (out, out, (gfloat *) win[block_type]);
#elif defined(USE_LIBOIL)
oil_multiply_f32 (out, out, win[block_type], 36);
@@ -1535,7 +1535,7 @@ init_hybrid (mp3cimpl_info * c_impl)
c_impl->prevblck[i][j][k] = 0.0;
}
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
static inline void
overlap_addition (gfloat * dst, gfloat * src, gfloat * prev )
{
@@ -1600,7 +1600,7 @@ III_hybrid (gfloat fsIn[SSLIMIT], gfloat tsOut[SSLIMIT], int sb, int ch,
inv_mdct (fsIn, rawout, i);
/* overlap addition */
-#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+#if defined(USE_ARM_VFP) && defined(__VFP_FP__) && !defined(__SOFTFP__)
overlap_addition (tsOut, rawout, (gfloat *) tl->c_impl.prevblck[ch][sb]);
#elif defined(USE_LIBOIL)
oil_add_f32 (tsOut, rawout, (gfloat *) tl->c_impl.prevblck[ch][sb], SSLIMIT);