|
1 // Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
2 // All rights reserved. |
|
3 // This component and the accompanying materials are made available |
|
4 // under the terms of "Eclipse Public License v1.0" |
|
5 // which accompanies this distribution, and is available |
|
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
7 // |
|
8 // Initial Contributors: |
|
9 // Nokia Corporation - initial contribution. |
|
10 // |
|
11 // Contributors: |
|
12 // |
|
13 // Description: |
|
14 // |
|
15 |
|
16 #ifndef _BASICOP_H |
|
17 #define _BASICOP_H |
|
18 |
|
19 #include "types.h" |
|
20 |
|
21 int2 add( int2 var1, int2 var2 ); |
|
22 int2 sub( int2 var1, int2 var2 ); |
|
23 int2 mult( int2 var1, int2 var2 ); |
|
24 int2 abs_s( int2 var1 ); |
|
25 |
|
26 #ifdef L_MULTF |
|
27 /* |
|
28 ** define L_MULTF controls if L_mult is implemented |
|
29 ** as a macro or as a function |
|
30 ** See functional description in file basicop.c |
|
31 */ |
|
32 int4 L_mult( int2 var1, int2 var2 ); |
|
33 #else |
|
34 #define L_mult( var1, var2 ) \ |
|
35 ( ((int4)(var1) * (int2)(var2)) << 1 ) |
|
36 #endif |
|
37 |
|
38 int2 shl( int2 var1, int2 var2 ); |
|
39 int2 shr( int2 var1, int2 var2 ); |
|
40 int2 negate( int2 var1 ); |
|
41 int2 extract_h( int4 L_var1 ); |
|
42 int2 extract_l( int4 L_var2 ); |
|
43 int4 L_mac( int4 L_var3, int2 var1, int2 var2 ); |
|
44 |
|
45 int4 L_add( int4 L_var1, int4 L_var2 ); |
|
46 int4 L_sub( int4 L_var1, int4 L_var2 ); |
|
47 int2 mult_r( int2 var1, int2 var2 ); |
|
48 int4 L_shl( int4 L_var1, int2 var2 ); |
|
49 int4 L_shr( int4 L_var1, int2 var2 ); |
|
50 |
|
51 int4 L_deposit_h( int2 var1 ); |
|
52 int4 L_deposit_l( int2 var1 ); |
|
53 |
|
54 int2 norm_s( int2 var1 ); |
|
55 |
|
56 int2 div_s( int2 var1, int2 var2 ); |
|
57 |
|
58 int2 norm_l( int4 L_var1 ); |
|
59 |
|
60 |
|
61 #endif |