summaryrefslogtreecommitdiff
path: root/gnuradio-core/src
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-core/src')
-rw-r--r--gnuradio-core/src/lib/filter/gri_iir.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/gnuradio-core/src/lib/filter/gri_iir.h b/gnuradio-core/src/lib/filter/gri_iir.h
index 61d3be44d..5bc67df53 100644
--- a/gnuradio-core/src/lib/filter/gri_iir.h
+++ b/gnuradio-core/src/lib/filter/gri_iir.h
@@ -143,19 +143,18 @@ gri_iir<i_type, o_type, tap_type>::filter (const i_type input)
for (i = 1; i < m; i ++)
acc += (d_fbtaps[i] * d_prev_output[latest_m + i]);
- latest_n--;
- latest_m--;
- if (latest_n < 0)
- latest_n += n;
- if (latest_m < 0)
- latest_m += m;
-
// store the values twice to avoid having to handle wrap-around in the loop
d_prev_output[latest_m] = acc;
d_prev_output[latest_m+m] = acc;
d_prev_input[latest_n] = input;
d_prev_input[latest_n+n] = input;
+ latest_n--;
+ latest_m--;
+ if (latest_n < 0)
+ latest_n += n;
+ if (latest_m < 0)
+ latest_m += m;
d_latest_m = latest_m;
d_latest_n = latest_n;