1
0
Fork 0
forked from len0rd/rockbox

Enable strict aliasing optimizations for codecs on gcc versions >= 4.0, fix alising violations that this uncovered, gives small speedups for most codecs, FS#10801

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23784 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Nils Wallménius 2009-11-29 18:11:49 +00:00
parent 685ca2672e
commit 13f08d70fd
5 changed files with 38 additions and 33 deletions

View file

@ -1097,16 +1097,16 @@ static inline int clip(int i)
else return(i);
}
STATICIRAM void synthrender(void *renderbuffer, int samplecount) ICODE_ATTR;
void synthrender(void *renderbuffer, int samplecount)
STATICIRAM void synthrender(int32_t *renderbuffer, int samplecount) ICODE_ATTR;
void synthrender(int32_t *renderbuffer, int samplecount)
{
/* 125bpm equals to 50Hz (= 0.02s)
* => one tick = mixingrate/50,
* samples passing in one tick:
* mixingrate/(bpm/2.5) = 2.5*mixingrate/bpm */
int *p_left = (int *) renderbuffer; /* int in rockbox */
int *p_right = p_left+1;
int32_t *p_left = renderbuffer; /* int in rockbox */
int32_t *p_right = p_left+1;
signed short s;
int qf_distance, qf_distance2;