]> matita.cs.unibo.it Git - pkg-cerco/acc.git/blob - tests/clight/complets.c.expected
Imported Upstream version 0.2
[pkg-cerco/acc.git] / tests / clight / complets.c.expected
1 int comp_fir_basic(int input[], int h[], int z[], int N,int n)       \r
2 {\r
3     int i,j,k;\r
4     int y ;\r
5         y = 0;\r
6     /* calc FIR */\r
7     for(k=0;k<3;k=k+1){\r
8                 \r
9         /* store input at the beginning of the delay line */\r
10         z[0] = input[k];\r
11             for (i = 0; i < 3; i=i+1) {\r
12                y = y +h[i] * z[i];\r
13             }\r
14                 \r
15             /* shift delay line */\r
16             for (j = 2; j >=0; j=j-1) {\r
17                 z[j + 1] = z[j];\r
18             }\r
19     }\r
20     return y;\r
21 }\r
22 \r
23 \r
24 int comp_fir16(int in[], int c[], int out[], int size) {\r
25     int i,j,res,tmp;\r
26         int x[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};\r
27         int adx =0;\r
28         res =0;\r
29         for (j=0;j<size;j++) {\r
30                 x[adx]=in[j];\r
31             for(i=0;i<16;i=i+1){\r
32                 tmp = (x[adx]*c[i])*(2^16);\r
33                 res = res + tmp;\r
34                 adx=(adx+1)%16;\r
35             }\r
36             adx=(adx+1)%16;\r
37             out[j]=res;\r
38         }\r
39         return x[0];\r
40 }\r
41 \r
42 int comp_ifFor (int a, int b, int pas) {\r
43         int i, result;\r
44         result = 0;\r
45         for (i = 0; i < a; i=i+pas) {\r
46                 if (i != b) {\r
47                         result = result + i;    \r
48                 }\r
49                 else {\r
50                         result = 0;\r
51                 }\r
52         }\r
53         return result;\r
54 }\r
55 \r
56 int comp_total (int tabParam[], int a, int b) {\r
57         int i, j, k;\r
58         int tabLocal1[10] = {0,0,0,0,0,0,0,0,0,0};\r
59         int tabLocal2[10] = {0,0,0,0,0,0,0,0,0,0};;\r
60         if (a < b) {\r
61                 for (i = 0; i <= a; i++) {\r
62                         tabLocal1[i] = tabParam[a-i];\r
63                 }\r
64         }\r
65         else {\r
66                 for (k = 0; k < a; k++) {\r
67                         for (j = b; j > 0; j--) {\r
68                                 tabParam[k] = tabLocal1[k]+tabLocal2[j];\r
69                         }\r
70                 }\r
71         }\r
72         return 0;\r
73 }\r
74 \r
75 int comp_tri (int t[], int n) {\r
76         int i,j,tmp;\r
77         tmp = 0; \r
78 \r
79         for(i = 0 ; (i < n); i=i+1)\r
80         {\r
81                 for(j = 1 ; j < n- i ; j=j+1)\r
82                 {\r
83                         if(t[j] < t[j-1])\r
84                         {\r
85                                 tmp = t[j-1];\r
86                                 t[j-1] = t[j];\r
87                                 t[j] = tmp;\r
88                         }\r
89                 }\r
90         }\r
91         return tmp;\r
92 }\r
93 int comp_forif2 (int u[], int v[], int a, int b){\r
94         int i,j,k,l,res;\r
95         k=0;\r
96         l=0;\r
97         for (i=0;i<a;i=i+1) {\r
98                 k = k+u[i];\r
99         }\r
100         for (j=0;j<b;j=j+1) {\r
101                 l = l+v[j];\r
102         }\r
103         if (k%2 == 0 && l%2 == 0) {\r
104                 res = 0;\r
105         }\r
106         else if (k%2 == 0) {\r
107                 res = 1;\r
108         }\r
109         else if (l%2 == 0) {\r
110                 res = 2;\r
111         }\r
112         else {\r
113                 res = 3;\r
114         }\r
115         return 0;\r
116 }\r
117 int comp_forif (){\r
118         int i,j,k;\r
119         j=0;k=0;\r
120         for (i=0;i<10;i=i+1) {\r
121         j=j+1;j=j+1;\r
122         if (i % 2 == 0) {k=k+1;}\r
123         }\r
124         return j;\r
125 }\r
126 \r
127 int main(){\r
128         int a;\r
129         int t[16] = {10,9,8,7,6,0,5,4,3,2,0,0,0,0,0,0};\r
130         a = comp_fir_basic(t,t,t,10,10);\r
131         a = comp_fir16(t,t,t,16);\r
132         a = comp_ifFor(4,1,1);\r
133         a = comp_total(t,9,3);\r
134         a = comp_tri(t,10);\r
135         a = comp_forif2(t,t,10,10);\r
136         a = comp_forif();\r
137         return a;\r
138 }\r