This ensures gcc does not create unnecessary
loads or stores and possibly even does not vectorize
the negation.
Speeds up mp3 to aac transcoding with default settings
by 10% when using "gcc (Debian 5.3.1-10) 5.3.1
20160224".
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
int i;
for (i = 0; i < size; i++) {
float qc = scaled[i] * Q34;
- out[i] = (int)FFMIN(qc + rounding, (float)maxval);
+ int tmp = (int)FFMIN(qc + rounding, (float)maxval);
if (is_signed && in[i] < 0.0f) {
- out[i] = -out[i];
+ tmp = -tmp;
}
+ out[i] = tmp;
}
}