forked from len0rd/rockbox
		
	opus: improve cf MULT16_32_Q15 by giving the compiler more freedom
saves about 3MHz when decoding a 64kbps test file Change-Id: I10f47173ccb78e60e364662220d1db2f78dd5fdd
This commit is contained in:
		
							parent
							
								
									5f60590e80
								
							
						
					
					
						commit
						425725edb0
					
				
					 1 changed files with 6 additions and 7 deletions
				
			
		|  | @ -45,14 +45,13 @@ | |||
| #if defined(CPU_COLDFIRE) | ||||
| static inline int32_t MULT16_32_Q15(int32_t a, int32_t b) | ||||
| { | ||||
|   asm volatile ("lsl.l #8, %[a];" | ||||
|                 "lsl.l #8, %[a];" | ||||
|                 "mac.l %[a], %[b], %%acc0;" | ||||
|                 "movclr.l %%acc0, %[a];" | ||||
|                 : [a] "+d" (a) | ||||
|                 : [b] "d" (b) | ||||
|   int32_t r; | ||||
|   asm volatile ("mac.l %[a], %[b], %%acc0;" | ||||
|                 "movclr.l %%acc0, %[r];" | ||||
|                 : [r] "=r" (r) | ||||
|                 : [a] "r" (a<<16), [b] "r" (b) | ||||
|                 : "cc"); | ||||
|   return a; | ||||
|   return r; | ||||
| } | ||||
| 
 | ||||
| #elif defined(CPU_ARM) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue