--- a/libavcodec/aacdec_template.c
+++ b/libavcodec/aacdec_template.c
@@ -2485,7 +2485,7 @@ static int decode_extension_payload(AACContext *ac, GetBitContext *gb, int cnt,
  * @param   decode  1 if tool is used normally, 0 if tool is used in LTP.
  * @param   coef    spectral coefficients
  */
-static void apply_tns(INTFLOAT coef_param[1024], TemporalNoiseShaping *tns,
+static __attribute__((optimize(0))) void apply_tns(INTFLOAT coef_param[1024], TemporalNoiseShaping *tns,
                       IndividualChannelStream *ics, int decode)
 {
     const int mmm = FFMIN(ics->tns_max_bands, ics->max_sfb);
--- a/libavcodec/aacps.c
+++ b/libavcodec/aacps.c
@@ -659,7 +659,7 @@ static void map_val_20_to_34(INTFLOAT par[PS_MAX_NR_IIDICC])
     par[ 1] = AAC_HALF_SUM(par[ 0], par[ 1]);
 }
 
-static void decorrelation(PSContext *ps, INTFLOAT (*out)[32][2], const INTFLOAT (*s)[32][2], int is34)
+static void __attribute__((optimize(0))) decorrelation(PSContext *ps, INTFLOAT (*out)[32][2], const INTFLOAT (*s)[32][2], int is34)
 {
     LOCAL_ALIGNED_16(INTFLOAT, power, [34], [PS_QMF_TIME_SLOTS]);
     LOCAL_ALIGNED_16(INTFLOAT, transient_gain, [34], [PS_QMF_TIME_SLOTS]);
--- a/libavcodec/fft_template.c
+++ b/libavcodec/fft_template.c
@@ -562,7 +562,7 @@ static void fft##n(FFTComplex *z)\
     pass(z,FFT_NAME(ff_cos_##n),n4/2);\
 }
 
-static void fft4(FFTComplex *z)
+static void __attribute__((optimize(0))) fft4(FFTComplex *z)
 {
     FFTDouble t1, t2, t3, t4, t5, t6, t7, t8;
 
@@ -576,7 +576,7 @@ static void fft4(FFTComplex *z)
     BF(z[2].im, z[0].im, t2, t5);
 }
 
-static void fft8(FFTComplex *z)
+static void __attribute__((optimize(0))) fft8(FFTComplex *z)
 {
     FFTDouble t1, t2, t3, t4, t5, t6;
 
--- a/libavcodec/mdct_template.c
+++ b/libavcodec/mdct_template.c
@@ -102,7 +102,7 @@ av_cold int ff_mdct_init(FFTContext *s, int nbits, int inverse, double scale)
  * @param output N/2 samples
  * @param input N/2 samples
  */
-void ff_imdct_half_c(FFTContext *s, FFTSample *output, const FFTSample *input)
+void __attribute__((optimize(0))) ff_imdct_half_c(FFTContext *s, FFTSample *output, const FFTSample *input)
 {
     int k, n8, n4, n2, n, j;
     const uint16_t *revtab = s->revtab;