Lines Matching refs:L_var1

55 #define L_negate(L_var1) (((L_var1) == (MIN_32)) ? (MAX_32) : (-(L_var1)))
63 __inline Word16 saturate(Word32 L_var1);
65 Word16 saturate(Word32 L_var1);
97 __inline Word32 L_sub(Word32 L_var1, Word32 L_var2);
99 Word32 L_sub(Word32 L_var1, Word32 L_var2);
104 __inline Word32 L_shl (Word32 L_var1, Word16 var2);
106 Word32 L_shl (Word32 L_var1, Word16 var2);
111 __inline Word32 L_shr (Word32 L_var1, Word16 var2);
113 Word32 L_shr (Word32 L_var1, Word16 var2);
153 __inline Word16 norm_l (Word32 L_var1);
155 Word16 norm_l (Word32 L_var1);
160 __inline Word16 round16(Word32 L_var1);
162 Word16 round16(Word32 L_var1);
173 __inline Word32 L_add (Word32 L_var1, Word32 L_var2);
175 Word32 L_add (Word32 L_var1, Word32 L_var2);
180 __inline Word16 extract_h (Word32 L_var1);
182 Word16 extract_h (Word32 L_var1);
187 __inline Word16 extract_l(Word32 L_var1);
189 Word16 extract_l(Word32 L_var1);
222 __inline Word32 L_shr_r (Word32 L_var1, Word16 var2);
224 Word32 L_shr_r (Word32 L_var1, Word16 var2);
228 __inline Word32 ASM_L_shr(Word32 L_var1, Word16 var2)
230 return L_var1 >> var2;
233 __inline Word32 ASM_L_shl(Word32 L_var1, Word16 var2)
237 "MOV %[result], %[L_var1], ASL %[var2] \n"
238 "TEQ %[L_var1], %[result], ASR %[var2]\n"
239 "EORNE %[result], %[mask], %[L_var1], ASR #31\n"
241 :[L_var1]"r"(L_var1), [var2]"r"(var2), [mask]"r"(0x7fffffff)
246 __inline Word32 ASM_shr(Word32 L_var1, Word16 var2)
251 "MOVLT %[result], %[L_var1], ASR %[var2]\n"
252 "MOVGE %[result], %[L_var1], ASR #15\n"
254 :[L_var1]"r"(L_var1), [var2]"r"(var2)
259 __inline Word32 ASM_shl(Word32 L_var1, Word16 var2)
265 "MOVLT %[result], %[L_var1], ASL %[var2]\n"
266 "MOVGE %[result], %[L_var1], ASL #16\n"
269 :[L_var1]"r"(L_var1), [var2]"r"(var2)
277 "MOVLT %[result], %[L_var1], ASL %[var2]\n"
278 "MOVGE %[result], %[L_var1], ASL #16\n"
283 :[L_var1]"r"(L_var1), [var2]"r"(var2), [mask]"r"(0x7fff)
296 __inline Word16 saturate(Word32 L_var1)
301 "SSAT %[result], #16, %[L_var1]"
303 : [L_var1]"r"(L_var1)
310 "MOV %[tmp], %[L_var1],ASR#15\n"
311 "TEQ %[tmp], %[L_var1],ASR#31\n"
312 "EORNE %[result], %[mask],%[L_var1],ASR#31\n"
313 "MOVEQ %[result], %[L_var1]\n"
315 :[L_var1]"r"(L_var1), [mask]"r"(0x7fff)
322 //var_out = (L_var1 > (Word32)0X00007fffL) ? (MAX_16) : ((L_var1 < (Word32)0xffff8000L) ? (MIN_16) : ((Word16)L_var1));
324 if (L_var1 > 0X00007fffL)
328 else if (L_var1 < (Word32) 0xffff8000L)
334 var_out = extract_l(L_var1);
480 __inline Word32 L_sub(Word32 L_var1, Word32 L_var2)
485 "QSUB %[result], %[L_var1], %[L_var2]\n"
487 :[L_var1]"r"(L_var1), [L_var2]"r"(L_var2)
493 L_var_out = L_var1 - L_var2;
495 if (((L_var1 ^ L_var2) & MIN_32) != 0)
497 if ((L_var_out ^ L_var1) & MIN_32)
499 L_var_out = (L_var1 < 0L) ? MIN_32 : MAX_32;
509 __inline Word32 L_shl(Word32 L_var1, Word16 var2)
514 return ASM_L_shl( L_var1, var2);
518 return ASM_L_shr( L_var1, -var2);
525 L_var1 = L_shr(L_var1, (Word16)-var2);
531 if (L_var1 > (Word32) 0X3fffffffL)
537 if (L_var1 < (Word32) 0xc0000000L)
542 L_var1 <<= 1;
543 L_var_out = L_var1;
546 return (L_var1);
552 __inline Word32 L_shr (Word32 L_var1, Word16 var2)
557 return ASM_L_shr( L_var1, var2);
561 return ASM_L_shl( L_var1, -var2);
568 L_var_out = L_shl (L_var1, (Word16)-var2);
574 L_var_out = (L_var1 < 0L) ? -1 : 0;
578 if (L_var1 < 0)
580 L_var_out = ~((~L_var1) >> var2);
584 L_var_out = L_var1 >> var2;
776 __inline Word16 norm_l (Word32 L_var1)
781 "CMP %[L_var1], #0\n"
782 "CLZNE %[result], %[L_var1]\n"
786 :[L_var1]"r"(L_var1)
792 //if (L_var1 == 0)
798 // if (L_var1 == (Word32) 0xffffffffL)
804 // if (L_var1 < 0)
806 // L_var1 = ~L_var1;
808 // for (var_out = 0; L_var1 < (Word32) 0x40000000L; var_out++)
810 // L_var1 <<= 1;
819 if ( L_var1 < 0 ) {
820 L_var1 = ~L_var1;
823 if (0 == (L_var1 & 0x7fff8000)) {
824 a16 = extract_l(L_var1);
902 a16 = extract_h(L_var1);
986 __inline Word16 round16(Word32 L_var1)
991 "QADD %[result], %[L_var1], %[bias]\n"
994 :[L_var1]"r"(L_var1), [bias]"r"(0x8000)
1001 L_rounded = L_add (L_var1, (Word32) 0x00008000L);
1033 __inline Word32 L_add (Word32 L_var1, Word32 L_var2)
1038 "QADD %[result], %[L_var1], %[L_var2]\n"
1040 :[L_var1]"r"(L_var1), [L_var2]"r"(L_var2)
1046 L_var_out = L_var1 + L_var2;
1047 if (((L_var1 ^ L_var2) & MIN_32) == 0)
1049 if ((L_var_out ^ L_var1) & MIN_32)
1051 L_var_out = (L_var1 < 0) ? MIN_32 : MAX_32;
1128 __inline Word32 L_shr_r (Word32 L_var1, Word16 var2)
1138 L_var_out = L_shr(L_var1, var2);
1142 if ((L_var1 & ((Word32) 1 << (var2 - 1))) != 0)
1154 __inline Word16 extract_h (Word32 L_var1)
1158 var_out = (Word16) (L_var1 >> 16);
1165 __inline Word16 extract_l(Word32 L_var1)
1167 return (Word16) L_var1;