diff --git a/lpcnet b/lpcnet
index 9b7039b5b9d337c5750f16754c054778e764eb31..7bf08dfe74ae53dea90f80afe504decbc53ced85 160000
--- a/lpcnet
+++ b/lpcnet
@@ -1 +1 @@
-Subproject commit 9b7039b5b9d337c5750f16754c054778e764eb31
+Subproject commit 7bf08dfe74ae53dea90f80afe504decbc53ced85
diff --git a/src/analysis.c b/src/analysis.c
index 058328f0fd513105b5e5d40fbfc06f44bdb59f33..1f5801381272b63ad926f913bf6524a94f7db247 100644
--- a/src/analysis.c
+++ b/src/analysis.c
@@ -929,9 +929,9 @@ static void tonality_analysis(TonalityAnalysisState *tonal, const CELTMode *celt
     features[23] = info->tonality_slope + 0.069216f;
     features[24] = tonal->lowECount - 0.067930f;
 
-    compute_dense(&layer0, layer_out, features);
-    compute_gru(&layer1, tonal->rnn_state, layer_out);
-    compute_dense(&layer2, frame_probs, tonal->rnn_state);
+    analysis_compute_dense(&layer0, layer_out, features);
+    analysis_compute_gru(&layer1, tonal->rnn_state, layer_out);
+    analysis_compute_dense(&layer2, frame_probs, tonal->rnn_state);
 
     /* Probability of speech or music vs noise */
     info->activity_probability = frame_probs[1];
diff --git a/src/mlp.c b/src/mlp.c
index 964c6a98f6d4301f3792ddf0542fa26481a87738..1a5e3c05882c40008e712e71b517d620d809f095 100644
--- a/src/mlp.c
+++ b/src/mlp.c
@@ -79,7 +79,7 @@ static void gemm_accum(float *out, const opus_int8 *weights, int rows, int cols,
    }
 }
 
-void compute_dense(const DenseLayer *layer, float *output, const float *input)
+void analysis_compute_dense(const AnalysisDenseLayer *layer, float *output, const float *input)
 {
    int i;
    int N, M;
@@ -101,7 +101,7 @@ void compute_dense(const DenseLayer *layer, float *output, const float *input)
    }
 }
 
-void compute_gru(const GRULayer *gru, float *state, const float *input)
+void analysis_compute_gru(const AnalysisGRULayer *gru, float *state, const float *input)
 {
    int i;
    int N, M;
diff --git a/src/mlp.h b/src/mlp.h
index d7670550fd889e3bfa11da9cf332de38f00c8e46..101322fc58ca90acf9cebe1bf84909daa72a1b5a 100644
--- a/src/mlp.h
+++ b/src/mlp.h
@@ -39,7 +39,7 @@ typedef struct {
   int nb_inputs;
   int nb_neurons;
   int sigmoid;
-} DenseLayer;
+} AnalysisDenseLayer;
 
 typedef struct {
   const opus_int8 *bias;
@@ -47,14 +47,14 @@ typedef struct {
   const opus_int8 *recurrent_weights;
   int nb_inputs;
   int nb_neurons;
-} GRULayer;
+} AnalysisGRULayer;
 
-extern const DenseLayer layer0;
-extern const GRULayer layer1;
-extern const DenseLayer layer2;
+extern const AnalysisDenseLayer layer0;
+extern const AnalysisGRULayer layer1;
+extern const AnalysisDenseLayer layer2;
 
-void compute_dense(const DenseLayer *layer, float *output, const float *input);
+void analysis_compute_dense(const AnalysisDenseLayer *layer, float *output, const float *input);
 
-void compute_gru(const GRULayer *gru, float *state, const float *input);
+void analysis_compute_gru(const AnalysisGRULayer *gru, float *state, const float *input);
 
 #endif /* _MLP_H_ */
diff --git a/src/mlp_data.c b/src/mlp_data.c
index ae4178df764ebde472ba24955dde9a5fae011846..65f7448ea0187ebd483fb3321cb0bb977a9c7357 100644
--- a/src/mlp_data.c
+++ b/src/mlp_data.c
@@ -651,20 +651,20 @@ static const opus_int8 layer2_bias[2] = {
    14, 117
 };
 
-const DenseLayer layer0 = {
+const AnalysisDenseLayer layer0 = {
    layer0_bias,
    layer0_weights,
    25, 32, 0
 };
 
-const GRULayer layer1 = {
+const AnalysisGRULayer layer1 = {
    layer1_bias,
    layer1_weights,
    layer1_recur_weights,
    32, 24
 };
 
-const DenseLayer layer2 = {
+const AnalysisDenseLayer layer2 = {
    layer2_bias,
    layer2_weights,
    24, 2, 1