Skip to content

Commit 4421c17

Browse files
committed
REFAC: Remove NOOPs
1 parent 650717d commit 4421c17

File tree

5 files changed

+41
-62
lines changed

5 files changed

+41
-62
lines changed

src/_renamenoise_fft_guts.h

Lines changed: 16 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -73,41 +73,29 @@
7373
(c).i *= (s); \
7474
} while (0)
7575

76-
#ifndef RENAMENOISE_CHECK_OVERFLOW_OP
77-
# define RENAMENOISE_CHECK_OVERFLOW_OP(a, op, b) /* NOOP */
78-
#endif
79-
8076
#ifndef RENAMENOISE_C_ADD
81-
# define RENAMENOISE_C_ADD(res, a, b) \
82-
do { \
83-
RENAMENOISE_CHECK_OVERFLOW_OP((a).r, +, (b).r) \
84-
RENAMENOISE_CHECK_OVERFLOW_OP((a).i, +, (b).i) \
85-
(res).r = (a).r + (b).r; \
86-
(res).i = (a).i + (b).i; \
77+
# define RENAMENOISE_C_ADD(res, a, b) \
78+
do { \
79+
(res).r = (a).r + (b).r; \
80+
(res).i = (a).i + (b).i; \
8781
} while (0)
8882

89-
# define RENAMENOISE_C_SUB(res, a, b) \
90-
do { \
91-
RENAMENOISE_CHECK_OVERFLOW_OP((a).r, -, (b).r) \
92-
RENAMENOISE_CHECK_OVERFLOW_OP((a).i, -, (b).i) \
93-
(res).r = (a).r - (b).r; \
94-
(res).i = (a).i - (b).i; \
83+
# define RENAMENOISE_C_SUB(res, a, b) \
84+
do { \
85+
(res).r = (a).r - (b).r; \
86+
(res).i = (a).i - (b).i; \
9587
} while (0)
9688

97-
# define RENAMENOISE_C_ADDTO(res, a) \
98-
do { \
99-
RENAMENOISE_CHECK_OVERFLOW_OP((res).r, +, (a).r) \
100-
RENAMENOISE_CHECK_OVERFLOW_OP((res).i, +, (a).i) \
101-
(res).r += (a).r; \
102-
(res).i += (a).i; \
89+
# define RENAMENOISE_C_ADDTO(res, a) \
90+
do { \
91+
(res).r += (a).r; \
92+
(res).i += (a).i; \
10393
} while (0)
10494

105-
# define RENAMENOISE_C_SUBFROM(res, a) \
106-
do { \
107-
RENAMENOISE_CHECK_OVERFLOW_OP((res).r, -, (a).r) \
108-
RENAMENOISE_CHECK_OVERFLOW_OP((res).i, -, (a).i) \
109-
(res).r -= (a).r; \
110-
(res).i -= (a).i; \
95+
# define RENAMENOISE_C_SUBFROM(res, a) \
96+
do { \
97+
(res).r -= (a).r; \
98+
(res).i -= (a).i; \
11199
} while (0)
112100
#endif /* !RENAMENOISE_C_ADD defined */
113101

src/arch.h

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -129,16 +129,8 @@ static RENAMENOISE_INLINE int renamenoise_isnan(float x) {
129129
#define RENAMENOISE_VERY_SMALL 1e-30f
130130
#define RENAMENOISE_VERY_LARGE16 1e15f
131131

132-
#define RENAMENOISE_QCONST16(x, bits) (x)
133-
134132
#define RENAMENOISE_NEG32_ovflw(x) (-(x))
135-
#define RENAMENOISE_EXTRACT16(x) (x)
136-
#define RENAMENOISE_EXTEND32(x) (x)
137-
#define RENAMENOISE_SHR32(a, shift) (a)
138-
#define RENAMENOISE_SHL32(a, shift) (a)
139-
#define RENAMENOISE_VSHR32(a, shift) (a)
140133

141-
#define RENAMENOISE_ROUND16(a, shift) (a)
142134
#define RENAMENOISE_HALF16(x) (.5f * (x))
143135
#define RENAMENOISE_HALF32(x) (.5f * (x))
144136

src/pitch.c

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,13 @@ static void renamenoise_find_best_pitch(renamenoise_val32 *xcorr, renamenoise_va
5858
best_pitch[0] = 0;
5959
best_pitch[1] = 1;
6060
for (j = 0; j < len; j++) {
61-
Syy = RENAMENOISE_ADD32(Syy, RENAMENOISE_SHR32(RENAMENOISE_MULT16_16(y[j], y[j]), yshift));
61+
Syy = RENAMENOISE_ADD32(Syy, RENAMENOISE_MULT16_16(y[j], y[j]));
6262
}
6363
for (i = 0; i < max_pitch; i++) {
6464
if (xcorr[i] > 0) {
6565
renamenoise_val16 num;
6666
renamenoise_val32 xcorr16;
67-
xcorr16 = RENAMENOISE_EXTRACT16(RENAMENOISE_VSHR32(xcorr[i], xshift));
67+
xcorr16 = xcorr[i];
6868
// Considering the range of xcorr16, this should avoid both underflows and overflows (inf) when squaring xcorr16
6969
xcorr16 *= 1e-12f;
7070
num = RENAMENOISE_MULT16_16_Q15(xcorr16, xcorr16);
@@ -83,8 +83,7 @@ static void renamenoise_find_best_pitch(renamenoise_val32 *xcorr, renamenoise_va
8383
}
8484
}
8585
}
86-
Syy +=
87-
RENAMENOISE_SHR32(RENAMENOISE_MULT16_16(y[i + len], y[i + len]), yshift) - RENAMENOISE_SHR32(RENAMENOISE_MULT16_16(y[i], y[i]), yshift);
86+
Syy += RENAMENOISE_MULT16_16(y[i + len], y[i + len]) - RENAMENOISE_MULT16_16(y[i], y[i]);
8887
Syy = RENAMENOISE_MAX32(1, Syy);
8988
}
9089
}
@@ -104,7 +103,7 @@ static void renamenoise_fir5(const renamenoise_val16 *x, const renamenoise_val16
104103
mem3 = mem[3];
105104
mem4 = mem[4];
106105
for (i = 0; i < N; i++) {
107-
renamenoise_val32 sum = RENAMENOISE_SHL32(RENAMENOISE_EXTEND32(x[i]), SIG_SHIFT);
106+
renamenoise_val32 sum = x[i];
108107
sum = RENAMENOISE_MAC16_16(sum, num0, mem0);
109108
sum = RENAMENOISE_MAC16_16(sum, num1, mem1);
110109
sum = RENAMENOISE_MAC16_16(sum, num2, mem2);
@@ -115,7 +114,7 @@ static void renamenoise_fir5(const renamenoise_val16 *x, const renamenoise_val16
115114
mem2 = mem1;
116115
mem1 = mem0;
117116
mem0 = x[i];
118-
y[i] = RENAMENOISE_ROUND16(sum, SIG_SHIFT);
117+
y[i] = sum;
119118
}
120119
mem[0] = mem0;
121120
mem[1] = mem1;
@@ -130,16 +129,16 @@ void renamenoise_pitch_downsample(renamenoise_sig *x[], renamenoise_val16 *x_lp,
130129
renamenoise_val16 tmp = RENAMENOISE_Q15ONE;
131130
renamenoise_val16 lpc[4], mem[5] = {0, 0, 0, 0, 0};
132131
renamenoise_val16 lpc2[5];
133-
renamenoise_val16 c1 = RENAMENOISE_QCONST16(.8f, 15);
132+
renamenoise_val16 c1 = .8f;
134133
for (i = 1; i < (len >> 1); i++) {
135-
x_lp[i] = RENAMENOISE_SHR32(RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[0][(2 * i - 1)] + x[0][(2 * i + 1)]) + x[0][2 * i]), shift);
134+
x_lp[i] = RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[0][(2 * i - 1)] + x[0][(2 * i + 1)]) + x[0][2 * i]);
136135
}
137-
x_lp[0] = RENAMENOISE_SHR32(RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[0][1]) + x[0][0]), shift);
136+
x_lp[0] = RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[0][1]) + x[0][0]);
138137
if (C == 2) {
139138
for (i = 1; i < (len >> 1); i++) {
140-
x_lp[i] += RENAMENOISE_SHR32(RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[1][(2 * i - 1)] + x[1][(2 * i + 1)]) + x[1][2 * i]), shift);
139+
x_lp[i] += RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[1][(2 * i - 1)] + x[1][(2 * i + 1)]) + x[1][2 * i]);
141140
}
142-
x_lp[0] += RENAMENOISE_SHR32(RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[1][1]) + x[1][0]), shift);
141+
x_lp[0] += RENAMENOISE_HALF32(RENAMENOISE_HALF32(x[1][1]) + x[1][0]);
143142
}
144143

145144
_renamenoise_autocorr(x_lp, ac, NULL, 0, 4, len >> 1);
@@ -154,11 +153,11 @@ void renamenoise_pitch_downsample(renamenoise_sig *x[], renamenoise_val16 *x_lp,
154153

155154
_renamenoise_lpc(lpc, ac, 4);
156155
for (i = 0; i < 4; i++) {
157-
tmp = RENAMENOISE_MULT16_16_Q15(RENAMENOISE_QCONST16(.9f, 15), tmp);
156+
tmp = RENAMENOISE_MULT16_16_Q15(.9f, tmp);
158157
lpc[i] = RENAMENOISE_MULT16_16_Q15(lpc[i], tmp);
159158
}
160159
// Add a zero
161-
lpc2[0] = lpc[0] + RENAMENOISE_QCONST16(.8f, SIG_SHIFT);
160+
lpc2[0] = lpc[0] + .8f;
162161
lpc2[1] = lpc[1] + RENAMENOISE_MULT16_16_Q15(c1, lpc[0]);
163162
lpc2[2] = lpc[2] + RENAMENOISE_MULT16_16_Q15(c1, lpc[1]);
164163
lpc2[3] = lpc[3] + RENAMENOISE_MULT16_16_Q15(c1, lpc[2]);
@@ -237,9 +236,9 @@ void renamenoise_pitch_search(const renamenoise_val16 *x_lp, renamenoise_val16 *
237236
a = xcorr[best_pitch[0] - 1];
238237
b = xcorr[best_pitch[0]];
239238
c = xcorr[best_pitch[0] + 1];
240-
if ((c - a) > RENAMENOISE_MULT16_32_Q15(RENAMENOISE_QCONST16(.7f, 15), b - a)) {
239+
if ((c - a) > RENAMENOISE_MULT16_32_Q15(.7f, b - a)) {
241240
offset = 1;
242-
} else if ((a - c) > RENAMENOISE_MULT16_32_Q15(RENAMENOISE_QCONST16(.7f, 15), b - c)) {
241+
} else if ((a - c) > RENAMENOISE_MULT16_32_Q15(.7f, b - c)) {
243242
offset = -1;
244243
} else {
245244
offset = 0;
@@ -321,12 +320,12 @@ renamenoise_val16 renamenoise_remove_doubling(renamenoise_val16 *x, int maxperio
321320
} else {
322321
cont = 0;
323322
}
324-
thresh = RENAMENOISE_MAX16(RENAMENOISE_QCONST16(.3f, 15), RENAMENOISE_MULT16_16_Q15(RENAMENOISE_QCONST16(.7f, 15), g0) - cont);
323+
thresh = RENAMENOISE_MAX16(.3f, RENAMENOISE_MULT16_16_Q15(.7f, g0) - cont);
325324
// Bias against very high pitch (very short period) to avoid false-positives due to short-term correlation
326325
if (T1 < 3 * minperiod) {
327-
thresh = RENAMENOISE_MAX16(RENAMENOISE_QCONST16(.4f, 15), RENAMENOISE_MULT16_16_Q15(RENAMENOISE_QCONST16(.85f, 15), g0) - cont);
326+
thresh = RENAMENOISE_MAX16(.4f, RENAMENOISE_MULT16_16_Q15(.85f, g0) - cont);
328327
} else if (T1 < 2 * minperiod) {
329-
thresh = RENAMENOISE_MAX16(RENAMENOISE_QCONST16(.5f, 15), RENAMENOISE_MULT16_16_Q15(RENAMENOISE_QCONST16(.9f, 15), g0) - cont);
328+
thresh = RENAMENOISE_MAX16(.5f, RENAMENOISE_MULT16_16_Q15(.9f, g0) - cont);
330329
}
331330
if (g1 > thresh) {
332331
best_xy = xy;
@@ -345,9 +344,9 @@ renamenoise_val16 renamenoise_remove_doubling(renamenoise_val16 *x, int maxperio
345344
for (k = 0; k < 3; k++) {
346345
xcorr[k] = renamenoise_inner_prod(x, x - (T + k - 1), N);
347346
}
348-
if ((xcorr[2] - xcorr[0]) > RENAMENOISE_MULT16_32_Q15(RENAMENOISE_QCONST16(.7f, 15), xcorr[1] - xcorr[0])) {
347+
if ((xcorr[2] - xcorr[0]) > RENAMENOISE_MULT16_32_Q15(.7f, xcorr[1] - xcorr[0])) {
349348
offset = 1;
350-
} else if ((xcorr[0] - xcorr[2]) > RENAMENOISE_MULT16_32_Q15(RENAMENOISE_QCONST16(.7f, 15), xcorr[1] - xcorr[2])) {
349+
} else if ((xcorr[0] - xcorr[2]) > RENAMENOISE_MULT16_32_Q15(.7f, xcorr[1] - xcorr[2])) {
351350
offset = -1;
352351
} else {
353352
offset = 0;

src/renamenoise_fft.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ static void renamenoise_kf_bfly2(renamenoise_fft_cpx *Fout, int m, int N) {
6262
}
6363
} else {
6464
renamenoise_val16 tw;
65-
tw = RENAMENOISE_QCONST16(0.7071067812f, 15);
65+
tw = 0.7071067812f;
6666
// We know that m==4 here because the radix-2 is just after a radix-4
6767
renamenoise_assert(m == 4);
6868
for (i = 0; i < N; i++) {
@@ -465,8 +465,8 @@ void renamenoise_fft_c(const renamenoise_fft_state *st, const renamenoise_fft_cp
465465
// Bit-reverse the input
466466
for (i = 0; i < st->nfft; i++) {
467467
renamenoise_fft_cpx x = fin[i];
468-
fout[st->bitrev[i]].r = RENAMENOISE_SHR32(RENAMENOISE_MULT16_32_Q16(scale, x.r), scale_shift);
469-
fout[st->bitrev[i]].i = RENAMENOISE_SHR32(RENAMENOISE_MULT16_32_Q16(scale, x.i), scale_shift);
468+
fout[st->bitrev[i]].r = RENAMENOISE_MULT16_32_Q16(scale, x.r);
469+
fout[st->bitrev[i]].i = RENAMENOISE_MULT16_32_Q16(scale, x.i);
470470
}
471471
renamenoise_fft_impl(st, fout);
472472
}

src/renamenoise_lpc.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,10 @@ void _renamenoise_lpc(renamenoise_val16 *_lpc, // out: [0...p-1] LPC coeffic
5454
for (j = 0; j < i; j++) {
5555
rr += RENAMENOISE_MULT32_32_Q31(lpc[j], ac[i - j]);
5656
}
57-
rr += RENAMENOISE_SHR32(ac[i + 1], 3);
58-
r = -RENAMENOISE_SHL32(rr, 3) / error;
57+
rr += ac[i + 1];
58+
r = -rr / error;
5959
// Update LPC coefficients and total error
60-
lpc[i] = RENAMENOISE_SHR32(r, 3);
60+
lpc[i] = r;
6161
for (j = 0; j < ((i + 1) >> 1); j++) {
6262
renamenoise_val32 tmp1, tmp2;
6363
tmp1 = lpc[j];

0 commit comments

Comments
 (0)