more debug

This commit is contained in:
Stefano D'Angelo 2023-09-25 17:16:42 +02:00
parent 8ee4150889
commit 9162c57cb1
12 changed files with 33 additions and 23 deletions

1
TODO
View File

@ -70,6 +70,7 @@ code:
* are we sure about inlining everything?
* reset style is not enough when you have feedbacks... (see reverb)
* IMPLEMENTATION/DECL/DEF prepocessor defs, maybe if DECL/DEF is defined then IMPLEMENTATION is needed to get implementation, etc.
* actually assert no buffer overlap
build system:
* make makefiles handle paths with spaces etc

View File

@ -382,6 +382,7 @@ static inline void bw_balance_process_multi(
BW_ASSERT(x_r != NULL);
BW_ASSERT(y_l != NULL);
BW_ASSERT(y_r != NULL);
BW_ASSERT(y_l != y_r);
#ifndef BW_NO_DEBUG
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++) {

View File

@ -516,7 +516,7 @@ static inline void bw_env_follow_process_multi(
if (y != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y[i] != y[j]);
BW_ASSERT(y[i] == NULL || y[j] == NULL || y[i] != y[j]);
#endif
bw_env_follow_update_coeffs_ctrl(coeffs);

View File

@ -691,7 +691,7 @@ static inline void bw_env_gen_process_multi(
if (y != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y[i] != y[j]);
BW_ASSERT(y[i] == NULL || y[j] == NULL || y[i] != y[j]);
#endif
bw_env_gen_update_coeffs_ctrl(coeffs);

View File

@ -894,7 +894,7 @@ static inline void bw_one_pole_process_multi(
if (y != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y[i] != y[j]);
BW_ASSERT(y[i] == NULL || y[j] == NULL || y[i] != y[j]);
#endif
bw_one_pole_update_coeffs_ctrl(coeffs);

View File

@ -374,6 +374,7 @@ static inline void bw_pan_process_multi(
BW_ASSERT(x != NULL);
BW_ASSERT(y_l != NULL);
BW_ASSERT(y_r != NULL);
BW_ASSERT(y_l != y_r);
#ifndef BW_NO_DEBUG
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++) {

View File

@ -506,7 +506,7 @@ static inline void bw_ppm_process_multi(
if (y != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y[i] != y[j]);
BW_ASSERT(y[i] == NULL || y[j] == NULL || y[i] != y[j]);
#endif
bw_ppm_update_coeffs_ctrl(coeffs);

View File

@ -837,6 +837,7 @@ static inline void bw_reverb_process1(
BW_ASSERT(bw_is_finite(x_r));
BW_ASSERT(y_l != NULL);
BW_ASSERT(y_r != NULL);
BW_ASSERT(y_l != y_r);
const float i = 0.5f * (x_l + x_r);
const float pd = bw_delay_process1(&coeffs->predelay_coeffs, &state->predelay_state, i);
@ -947,6 +948,7 @@ static inline void bw_reverb_process(
BW_ASSERT_DEEP(bw_has_only_finite(x_r, n_samples));
BW_ASSERT(y_l != NULL);
BW_ASSERT(y_r != NULL);
BW_ASSERT(y_l != y_r);
bw_reverb_update_coeffs_ctrl(coeffs);
for (size_t i = 0; i < n_samples; i++) {
@ -984,19 +986,16 @@ static inline void bw_reverb_process_multi(
BW_ASSERT(x_r != NULL);
BW_ASSERT(y_l != NULL);
BW_ASSERT(y_r != NULL);
BW_ASSERT(y_l != y_r);
#ifndef BW_NO_DEBUG
if (y_l_0 != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y_l_0[i] != y_l_0[j]);
if (y_r_0 != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y_r_0[i] != y_r_0[j]);
if (y_l_0 != y_r_0)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = 0; j < n_channels; j++)
BW_ASSERT(y_l_0[i] != y_r_0[j]);
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++) {
BW_ASSERT(y_l[i] != y_l[j]);
BW_ASSERT(y_r[i] != y_r[j]);
}
for (size_t i = 0; i < n_channels; i++)
for (size_t j = 0; j < n_channels; j++)
BW_ASSERT(y_l[i] != y_r[j]);
#endif
bw_reverb_update_coeffs_ctrl(coeffs);

View File

@ -674,7 +674,7 @@ static inline void bw_slew_lim_process_multi(
if (y != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y[i] != y[j]);
BW_ASSERT(y[i] == NULL || y[j] == NULL || y[i] != y[j]);
#endif
bw_slew_lim_update_coeffs_ctrl(coeffs);

View File

@ -454,6 +454,7 @@ static inline void bw_src_process_multi(
#endif
BW_ASSERT(x != NULL);
BW_ASSERT(y != NULL);
BW_ASSERT((void *)x != (void *)y);
#ifndef BW_NO_DEBUG
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)

View File

@ -430,6 +430,7 @@ static inline void bw_src_int_process_multi(
#endif
BW_ASSERT(x != NULL);
BW_ASSERT(y != NULL);
BW_ASSERT((void *)x != (void *)y);
#ifndef BW_NO_DEBUG
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)

View File

@ -678,6 +678,9 @@ static inline void bw_svf_process(
BW_ASSERT_DEEP(bw_svf_state_is_valid(coeffs, state));
BW_ASSERT(x != NULL);
BW_ASSERT_DEEP(bw_has_only_finite(x, n_samples));
BW_ASSERT(y_lp == NULL || y_bp == NULL || y_lp != y_bp);
BW_ASSERT(y_lp == NULL || y_hp == NULL || y_lp != y_hp);
BW_ASSERT(y_bp == NULL || y_hp == NULL || y_bp != y_hp);
if (y_lp != NULL) {
if (y_bp != NULL) {
@ -767,31 +770,34 @@ static inline void bw_svf_process_multi(
BW_ASSERT(state[i] != state[j]);
#endif
BW_ASSERT(x != NULL);
BW_ASSERT(y_lp == NULL || y_bp == NULL || y_lp != y_bp);
BW_ASSERT(y_lp == NULL || y_hp == NULL || y_lp != y_hp);
BW_ASSERT(y_bp == NULL || y_hp == NULL || y_bp != y_hp);
#ifndef BW_NO_DEBUG
if (y_lp != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y_lp[i] != y_lp[j]);
BW_ASSERT(y_lp[i] == NULL || y_lp[j] == NULL || y_lp[i] != y_lp[j]);
if (y_bp != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y_bp[i] != y_bp[j]);
BW_ASSERT(y_bp[i] == NULL || y_bp[j] == NULL || y_bp[i] != y_bp[j]);
if (y_hp != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = i + 1; j < n_channels; j++)
BW_ASSERT(y_hp[i] != y_hp[j]);
BW_ASSERT(y_hp[i] == NULL || y_hp[j] == NULL || y_hp[i] != y_hp[j]);
if (y_lp != NULL && y_bp != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = 0; j < n_channels; j++)
BW_ASSERT(y_lp[i] != y_bp[j]);
BW_ASSERT(y_lp[i] == NULL || y_bp[j] == NULL || y_lp[i] != y_bp[j]);
if (y_lp != NULL && y_hp != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = 0; j < n_channels; j++)
BW_ASSERT(y_lp[i] != y_hp[j]);
BW_ASSERT(y_lp[i] == NULL || y_hp[j] == NULL || y_lp[i] != y_hp[j]);
if (y_bp != NULL && y_hp != NULL)
for (size_t i = 0; i < n_channels; i++)
for (size_t j = 0; j < n_channels; j++)
BW_ASSERT(y_bp[i] != y_hp[j]);
BW_ASSERT(y_bp[i] == NULL || y_hp[j] == NULL || y_bp[i] != y_hp[j]);
#endif
if (y_lp != NULL) {