From cd8b56f29e9ba23ec95e6ddc2c06d5eae34a9adb Mon Sep 17 00:00:00 2001 From: Jean Pierre Cimalando Date: Tue, 25 Feb 2020 07:10:35 +0100 Subject: [PATCH] Fix in incoherency in generated filter source There was at least on case where a member `fRecN` had a mismatching size with what the implementation expected, and it raised a compiler warning. Perhaps it's a previous git merge which has created this problem. --- scripts/generate_filters.sh | 3 ++ src/sfizz/gen/filters/sfz2chBpf6p.cxx | 12 ++++---- src/sfizz/gen/filters/sfz2chPink.cxx | 34 +++++++++++----------- src/sfizz/gen/filters/sfzBpf6p.cxx | 36 +++++++++++------------ src/sfizz/gen/filters/sfzHsh.cxx | 42 +++++++++++++-------------- src/sfizz/gen/filters/sfzLsh.cxx | 36 +++++++++++------------ src/sfizz/gen/filters/sfzPink.cxx | 34 +++++++++++----------- 7 files changed, 100 insertions(+), 97 deletions(-) diff --git a/scripts/generate_filters.sh b/scripts/generate_filters.sh index 6d2c65a2..04168241 100755 --- a/scripts/generate_filters.sh +++ b/scripts/generate_filters.sh @@ -49,6 +49,9 @@ faustgen() { if test ! -z "$bwVar"; then $SED -r -i 's/\b'"$bwVar"'\b/fBandwidth/' "$outfile" fi + + # remove trailing whitespace + $SED -r -i 's/[ \t]+$//' "$outfile" } for f in \ diff --git a/src/sfizz/gen/filters/sfz2chBpf6p.cxx b/src/sfizz/gen/filters/sfz2chBpf6p.cxx index e9690ea2..571d635e 100644 --- a/src/sfizz/gen/filters/sfz2chBpf6p.cxx +++ b/src/sfizz/gen/filters/sfz2chBpf6p.cxx @@ -38,10 +38,10 @@ class faust2chBpf6p : public sfzFilterDsp { FAUSTFLOAT fCutoff; FAUSTFLOAT fQ; double fRec0[2]; - double fRec3[2]; + double fRec4[2]; double fRec5[2]; + double fRec3[3]; double fRec6[2]; - double fRec4[3]; double fRec7[2]; double fRec2[3]; double fRec1[3]; @@ -203,11 +203,11 @@ class faust2chBpf6p : public sfzFilterDsp { fRec8[0] = ((((fRec0[0] * fRec9[0]) + (fRec6[0] * fRec9[1])) + (fRec7[0] * fRec9[2])) - ((fRec4[0] * fRec8[1]) + (fRec5[0] * fRec8[2]))); output1[i] = FAUSTFLOAT((((fRec0[0] * fRec8[0]) + (fRec6[0] * fRec8[1])) + (fRec7[0] * fRec8[2]))); fRec0[1] = fRec0[0]; - fRec3[1] = fRec3[0]; - fRec5[1] = fRec5[0]; - fRec6[1] = fRec6[0]; - fRec4[2] = fRec4[1]; fRec4[1] = fRec4[0]; + fRec5[1] = fRec5[0]; + fRec3[2] = fRec3[1]; + fRec3[1] = fRec3[0]; + fRec6[1] = fRec6[0]; fRec7[1] = fRec7[0]; fRec2[2] = fRec2[1]; fRec2[1] = fRec2[0]; diff --git a/src/sfizz/gen/filters/sfz2chPink.cxx b/src/sfizz/gen/filters/sfz2chPink.cxx index 09103050..c04cbcec 100644 --- a/src/sfizz/gen/filters/sfz2chPink.cxx +++ b/src/sfizz/gen/filters/sfz2chPink.cxx @@ -11,32 +11,32 @@ Compilation options: -lang cpp -inpl -double -ftz 0 #ifndef FAUSTFLOAT #define FAUSTFLOAT float -#endif +#endif #include #include -#ifndef FAUSTCLASS +#ifndef FAUSTCLASS #define FAUSTCLASS faust2chPink #endif -#ifdef __APPLE__ +#ifdef __APPLE__ #define exp10f __exp10f #define exp10 __exp10 #endif class faust2chPink : public sfzFilterDsp { - + public: - + double fRec0[4]; double fRec1[4]; int fSampleRate; - + public: - - void metadata(Meta* m) { + + void metadata(Meta* m) { } virtual int getNumInputs() { @@ -81,17 +81,17 @@ class faust2chPink : public sfzFilterDsp { } return rate; } - + static void classInit(int sample_rate) { } - + virtual void instanceConstants(int sample_rate) { fSampleRate = sample_rate; } - + virtual void instanceResetUserInterface() { } - + virtual void instanceClear() { for (int l0 = 0; (l0 < 4); l0 = (l0 + 1)) { fRec0[l0] = 0.0; @@ -100,7 +100,7 @@ class faust2chPink : public sfzFilterDsp { fRec1[l1] = 0.0; } } - + virtual void init(int sample_rate) { classInit(sample_rate); instanceInit(sample_rate); @@ -110,18 +110,18 @@ class faust2chPink : public sfzFilterDsp { instanceResetUserInterface(); instanceClear(); } - + virtual faust2chPink* clone() { return new faust2chPink(); } - + virtual int getSampleRate() { return fSampleRate; } - + virtual void buildUserInterface(UI* ui_interface) { } - + virtual void compute(int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs) { FAUSTFLOAT* input0 = inputs[0]; FAUSTFLOAT* input1 = inputs[1]; diff --git a/src/sfizz/gen/filters/sfzBpf6p.cxx b/src/sfizz/gen/filters/sfzBpf6p.cxx index dff814f2..ee81b215 100644 --- a/src/sfizz/gen/filters/sfzBpf6p.cxx +++ b/src/sfizz/gen/filters/sfzBpf6p.cxx @@ -38,10 +38,10 @@ class faustBpf6p : public sfzFilterDsp { FAUSTFLOAT fCutoff; FAUSTFLOAT fQ; double fRec0[2]; - double fRec3[2]; + double fRec4[2]; double fRec5[2]; + double fRec3[3]; double fRec6[2]; - double fRec4[3]; double fRec7[2]; double fRec2[3]; double fRec1[3]; @@ -106,16 +106,16 @@ class faustBpf6p : public sfzFilterDsp { fRec0[l0] = 0.0; } for (int l1 = 0; (l1 < 2); l1 = (l1 + 1)) { - fRec3[l1] = 0.0; + fRec4[l1] = 0.0; } for (int l2 = 0; (l2 < 2); l2 = (l2 + 1)) { fRec5[l2] = 0.0; } - for (int l3 = 0; (l3 < 2); l3 = (l3 + 1)) { - fRec6[l3] = 0.0; + for (int l3 = 0; (l3 < 3); l3 = (l3 + 1)) { + fRec3[l3] = 0.0; } - for (int l4 = 0; (l4 < 3); l4 = (l4 + 1)) { - fRec4[l4] = 0.0; + for (int l4 = 0; (l4 < 2); l4 = (l4 + 1)) { + fRec6[l4] = 0.0; } for (int l5 = 0; (l5 < 2); l5 = (l5 + 1)) { fRec7[l5] = 0.0; @@ -167,20 +167,20 @@ class faustBpf6p : public sfzFilterDsp { for (int i = 0; (i < count); i = (i + 1)) { double fTemp0 = double(input0[i]); fRec0[0] = ((fSlow0 * fRec0[1]) + fSlow8); - fRec3[0] = (fSlow0 * fRec3[1]); - fRec5[0] = ((fSlow0 * fRec5[1]) + fSlow9); - fRec6[0] = ((fSlow0 * fRec6[1]) + fSlow10); - fRec4[0] = (fTemp0 - ((fRec5[0] * fRec4[1]) + (fRec6[0] * fRec4[2]))); + fRec4[0] = ((fSlow0 * fRec4[1]) + fSlow9); + fRec5[0] = ((fSlow0 * fRec5[1]) + fSlow10); + fRec3[0] = (fTemp0 - ((fRec4[0] * fRec3[1]) + (fRec5[0] * fRec3[2]))); + fRec6[0] = (fSlow0 * fRec6[1]); fRec7[0] = ((fSlow0 * fRec7[1]) + fSlow11); - fRec2[0] = (((fRec3[0] * fRec4[1]) + ((fRec4[0] * fRec0[0]) + (fRec7[0] * fRec4[2]))) - ((fRec5[0] * fRec2[1]) + (fRec6[0] * fRec2[2]))); - fRec1[0] = ((((fRec0[0] * fRec2[0]) + (fRec3[0] * fRec2[1])) + (fRec7[0] * fRec2[2])) - ((fRec5[0] * fRec1[1]) + (fRec6[0] * fRec1[2]))); - output0[i] = FAUSTFLOAT((((fRec0[0] * fRec1[0]) + (fRec3[0] * fRec1[1])) + (fRec7[0] * fRec1[2]))); + fRec2[0] = ((((fRec3[0] * fRec0[0]) + (fRec6[0] * fRec3[1])) + (fRec7[0] * fRec3[2])) - ((fRec4[0] * fRec2[1]) + (fRec5[0] * fRec2[2]))); + fRec1[0] = ((((fRec0[0] * fRec2[0]) + (fRec6[0] * fRec2[1])) + (fRec7[0] * fRec2[2])) - ((fRec4[0] * fRec1[1]) + (fRec5[0] * fRec1[2]))); + output0[i] = FAUSTFLOAT((((fRec0[0] * fRec1[0]) + (fRec6[0] * fRec1[1])) + (fRec7[0] * fRec1[2]))); fRec0[1] = fRec0[0]; - fRec3[1] = fRec3[0]; - fRec5[1] = fRec5[0]; - fRec6[1] = fRec6[0]; - fRec4[2] = fRec4[1]; fRec4[1] = fRec4[0]; + fRec5[1] = fRec5[0]; + fRec3[2] = fRec3[1]; + fRec3[1] = fRec3[0]; + fRec6[1] = fRec6[0]; fRec7[1] = fRec7[0]; fRec2[2] = fRec2[1]; fRec2[1] = fRec2[0]; diff --git a/src/sfizz/gen/filters/sfzHsh.cxx b/src/sfizz/gen/filters/sfzHsh.cxx index e7b34a5b..dbae8ae8 100644 --- a/src/sfizz/gen/filters/sfzHsh.cxx +++ b/src/sfizz/gen/filters/sfzHsh.cxx @@ -38,10 +38,10 @@ class faustHsh : public sfzFilterDsp { double fConst2; FAUSTFLOAT fCutoff; FAUSTFLOAT fQ; - double fRec0[2]; + double fRec1[2]; double fRec2[2]; + double fRec0[3]; double fRec3[2]; - double fRec1[3]; double fRec4[2]; double fRec5[2]; @@ -103,16 +103,16 @@ class faustHsh : public sfzFilterDsp { virtual void instanceClear() { for (int l0 = 0; (l0 < 2); l0 = (l0 + 1)) { - fRec0[l0] = 0.0; + fRec1[l0] = 0.0; } for (int l1 = 0; (l1 < 2); l1 = (l1 + 1)) { fRec2[l1] = 0.0; } - for (int l2 = 0; (l2 < 2); l2 = (l2 + 1)) { - fRec3[l2] = 0.0; + for (int l2 = 0; (l2 < 3); l2 = (l2 + 1)) { + fRec0[l2] = 0.0; } - for (int l3 = 0; (l3 < 3); l3 = (l3 + 1)) { - fRec1[l3] = 0.0; + for (int l3 = 0; (l3 < 2); l3 = (l3 + 1)) { + fRec3[l3] = 0.0; } for (int l4 = 0; (l4 < 2); l4 = (l4 + 1)) { fRec4[l4] = 0.0; @@ -155,26 +155,26 @@ class faustHsh : public sfzFilterDsp { double fSlow6 = (fSlow3 * (fSlow1 + -1.0)); double fSlow7 = ((fSlow1 + fSlow5) + (1.0 - fSlow6)); double fSlow8 = (1.0 - fSlow0); - double fSlow9 = ((((0.0 - (2.0 * fSlow1)) * ((fSlow1 + fSlow4) + -1.0)) / fSlow7) * fSlow8); - double fSlow10 = ((2.0 * ((fSlow1 + (-1.0 - fSlow4)) / fSlow7)) * fSlow8); - double fSlow11 = (((fSlow1 + (1.0 - (fSlow5 + fSlow6))) / fSlow7) * fSlow8); - double fSlow12 = (fSlow1 + fSlow6); - double fSlow13 = (((fSlow1 * ((fSlow5 + fSlow12) + 1.0)) / fSlow7) * fSlow8); - double fSlow14 = (((fSlow1 * (fSlow12 + (1.0 - fSlow5))) / fSlow7) * fSlow8); + double fSlow9 = ((2.0 * ((fSlow1 + (-1.0 - fSlow4)) / fSlow7)) * fSlow8); + double fSlow10 = (((fSlow1 + (1.0 - (fSlow5 + fSlow6))) / fSlow7) * fSlow8); + double fSlow11 = (fSlow1 + fSlow6); + double fSlow12 = (((fSlow1 * ((fSlow5 + fSlow11) + 1.0)) / fSlow7) * fSlow8); + double fSlow13 = ((((0.0 - (2.0 * fSlow1)) * ((fSlow1 + fSlow4) + -1.0)) / fSlow7) * fSlow8); + double fSlow14 = (((fSlow1 * (fSlow11 + (1.0 - fSlow5))) / fSlow7) * fSlow8); for (int i = 0; (i < count); i = (i + 1)) { double fTemp0 = double(input0[i]); - fRec0[0] = ((fSlow0 * fRec0[1]) + fSlow9); + fRec1[0] = ((fSlow0 * fRec1[1]) + fSlow9); fRec2[0] = ((fSlow0 * fRec2[1]) + fSlow10); - fRec3[0] = ((fSlow0 * fRec3[1]) + fSlow11); - fRec1[0] = (fTemp0 - ((fRec2[0] * fRec1[1]) + (fRec3[0] * fRec1[2]))); + fRec0[0] = (fTemp0 - ((fRec1[0] * fRec0[1]) + (fRec2[0] * fRec0[2]))); + fRec3[0] = ((fSlow0 * fRec3[1]) + fSlow12); fRec4[0] = ((fSlow0 * fRec4[1]) + fSlow13); fRec5[0] = ((fSlow0 * fRec5[1]) + fSlow14); - output0[i] = FAUSTFLOAT(((fRec0[0] * fRec1[1]) + ((fRec1[0] * fRec4[0]) + (fRec5[0] * fRec1[2])))); - fRec0[1] = fRec0[0]; - fRec2[1] = fRec2[0]; - fRec3[1] = fRec3[0]; - fRec1[2] = fRec1[1]; + output0[i] = FAUSTFLOAT((((fRec0[0] * fRec3[0]) + (fRec4[0] * fRec0[1])) + (fRec5[0] * fRec0[2]))); fRec1[1] = fRec1[0]; + fRec2[1] = fRec2[0]; + fRec0[2] = fRec0[1]; + fRec0[1] = fRec0[0]; + fRec3[1] = fRec3[0]; fRec4[1] = fRec4[0]; fRec5[1] = fRec5[0]; } diff --git a/src/sfizz/gen/filters/sfzLsh.cxx b/src/sfizz/gen/filters/sfzLsh.cxx index 12f10f8e..746645d6 100644 --- a/src/sfizz/gen/filters/sfzLsh.cxx +++ b/src/sfizz/gen/filters/sfzLsh.cxx @@ -38,10 +38,10 @@ class faustLsh : public sfzFilterDsp { double fConst2; FAUSTFLOAT fCutoff; FAUSTFLOAT fQ; - double fRec0[2]; + double fRec1[2]; double fRec2[2]; + double fRec0[3]; double fRec3[2]; - double fRec1[3]; double fRec4[2]; double fRec5[2]; @@ -103,16 +103,16 @@ class faustLsh : public sfzFilterDsp { virtual void instanceClear() { for (int l0 = 0; (l0 < 2); l0 = (l0 + 1)) { - fRec0[l0] = 0.0; + fRec1[l0] = 0.0; } for (int l1 = 0; (l1 < 2); l1 = (l1 + 1)) { fRec2[l1] = 0.0; } - for (int l2 = 0; (l2 < 2); l2 = (l2 + 1)) { - fRec3[l2] = 0.0; + for (int l2 = 0; (l2 < 3); l2 = (l2 + 1)) { + fRec0[l2] = 0.0; } - for (int l3 = 0; (l3 < 3); l3 = (l3 + 1)) { - fRec1[l3] = 0.0; + for (int l3 = 0; (l3 < 2); l3 = (l3 + 1)) { + fRec3[l3] = 0.0; } for (int l4 = 0; (l4 < 2); l4 = (l4 + 1)) { fRec4[l4] = 0.0; @@ -156,25 +156,25 @@ class faustLsh : public sfzFilterDsp { double fSlow7 = (fSlow1 + fSlow6); double fSlow8 = ((fSlow5 + fSlow7) + 1.0); double fSlow9 = (1.0 - fSlow0); - double fSlow10 = ((2.0 * ((fSlow1 * (fSlow1 + (-1.0 - fSlow4))) / fSlow8)) * fSlow9); - double fSlow11 = (((0.0 - (2.0 * ((fSlow1 + fSlow4) + -1.0))) / fSlow8) * fSlow9); - double fSlow12 = (((fSlow7 + (1.0 - fSlow5)) / fSlow8) * fSlow9); - double fSlow13 = (((fSlow1 * ((fSlow1 + fSlow5) + (1.0 - fSlow6))) / fSlow8) * fSlow9); + double fSlow10 = (((0.0 - (2.0 * ((fSlow1 + fSlow4) + -1.0))) / fSlow8) * fSlow9); + double fSlow11 = (((fSlow7 + (1.0 - fSlow5)) / fSlow8) * fSlow9); + double fSlow12 = (((fSlow1 * ((fSlow1 + fSlow5) + (1.0 - fSlow6))) / fSlow8) * fSlow9); + double fSlow13 = ((2.0 * ((fSlow1 * (fSlow1 + (-1.0 - fSlow4))) / fSlow8)) * fSlow9); double fSlow14 = (((fSlow1 * (fSlow1 + (1.0 - (fSlow5 + fSlow6)))) / fSlow8) * fSlow9); for (int i = 0; (i < count); i = (i + 1)) { double fTemp0 = double(input0[i]); - fRec0[0] = ((fSlow0 * fRec0[1]) + fSlow10); + fRec1[0] = ((fSlow0 * fRec1[1]) + fSlow10); fRec2[0] = ((fSlow0 * fRec2[1]) + fSlow11); + fRec0[0] = (fTemp0 - ((fRec1[0] * fRec0[1]) + (fRec2[0] * fRec0[2]))); fRec3[0] = ((fSlow0 * fRec3[1]) + fSlow12); - fRec1[0] = (fTemp0 - ((fRec2[0] * fRec1[1]) + (fRec3[0] * fRec1[2]))); fRec4[0] = ((fSlow0 * fRec4[1]) + fSlow13); fRec5[0] = ((fSlow0 * fRec5[1]) + fSlow14); - output0[i] = FAUSTFLOAT(((fRec0[0] * fRec1[1]) + ((fRec1[0] * fRec4[0]) + (fRec5[0] * fRec1[2])))); - fRec0[1] = fRec0[0]; - fRec2[1] = fRec2[0]; - fRec3[1] = fRec3[0]; - fRec1[2] = fRec1[1]; + output0[i] = FAUSTFLOAT((((fRec0[0] * fRec3[0]) + (fRec4[0] * fRec0[1])) + (fRec5[0] * fRec0[2]))); fRec1[1] = fRec1[0]; + fRec2[1] = fRec2[0]; + fRec0[2] = fRec0[1]; + fRec0[1] = fRec0[0]; + fRec3[1] = fRec3[0]; fRec4[1] = fRec4[0]; fRec5[1] = fRec5[0]; } diff --git a/src/sfizz/gen/filters/sfzPink.cxx b/src/sfizz/gen/filters/sfzPink.cxx index 3546af26..31b1f1c5 100644 --- a/src/sfizz/gen/filters/sfzPink.cxx +++ b/src/sfizz/gen/filters/sfzPink.cxx @@ -11,31 +11,31 @@ Compilation options: -lang cpp -inpl -double -ftz 0 #ifndef FAUSTFLOAT #define FAUSTFLOAT float -#endif +#endif #include #include -#ifndef FAUSTCLASS +#ifndef FAUSTCLASS #define FAUSTCLASS faustPink #endif -#ifdef __APPLE__ +#ifdef __APPLE__ #define exp10f __exp10f #define exp10 __exp10 #endif class faustPink : public sfzFilterDsp { - + public: - + double fRec0[4]; int fSampleRate; - + public: - - void metadata(Meta* m) { + + void metadata(Meta* m) { } virtual int getNumInputs() { @@ -72,23 +72,23 @@ class faustPink : public sfzFilterDsp { } return rate; } - + static void classInit(int sample_rate) { } - + virtual void instanceConstants(int sample_rate) { fSampleRate = sample_rate; } - + virtual void instanceResetUserInterface() { } - + virtual void instanceClear() { for (int l0 = 0; (l0 < 4); l0 = (l0 + 1)) { fRec0[l0] = 0.0; } } - + virtual void init(int sample_rate) { classInit(sample_rate); instanceInit(sample_rate); @@ -98,18 +98,18 @@ class faustPink : public sfzFilterDsp { instanceResetUserInterface(); instanceClear(); } - + virtual faustPink* clone() { return new faustPink(); } - + virtual int getSampleRate() { return fSampleRate; } - + virtual void buildUserInterface(UI* ui_interface) { } - + virtual void compute(int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs) { FAUSTFLOAT* input0 = inputs[0]; FAUSTFLOAT* output0 = outputs[0];