annotate test/int.c @ 156:da529eab5618

static initialization powerpc static bug
author kono
date Tue, 05 Aug 2003 14:15:33 +0900
parents 07eb1249f07a
children 6391432ca002
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
1 #include "stdio.h"
a9261154cde9 integer operation debug
kono
parents:
diff changeset
2
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
3 double sin(double);
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
4 void test1();
a9261154cde9 integer operation debug
kono
parents:
diff changeset
5 void print(int d);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
6
a9261154cde9 integer operation debug
kono
parents:
diff changeset
7 int test2(int f,int i);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
8
a9261154cde9 integer operation debug
kono
parents:
diff changeset
9 unsigned f = 3;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
10 int d = -3;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
11 unsigned f1 = 3;
132
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
12 unsigned f2 = 4;
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
13 int d1 = -3;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
14 int d2 = -2;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
15 unsigned h = 65536*100;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
16
a9261154cde9 integer operation debug
kono
parents:
diff changeset
17 int
a9261154cde9 integer operation debug
kono
parents:
diff changeset
18 d2i(int d) {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
19 return (int)d;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
20 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
21
a9261154cde9 integer operation debug
kono
parents:
diff changeset
22 int
a9261154cde9 integer operation debug
kono
parents:
diff changeset
23 i2d(int u) {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
24 return (int)u;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
25 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
26
a9261154cde9 integer operation debug
kono
parents:
diff changeset
27 unsigned u;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
28 unsigned
a9261154cde9 integer operation debug
kono
parents:
diff changeset
29 d2u(int d) {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
30 return (unsigned)d;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
31 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
32
a9261154cde9 integer operation debug
kono
parents:
diff changeset
33 int
a9261154cde9 integer operation debug
kono
parents:
diff changeset
34 u2d(unsigned u) {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
35 return (int)u;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
36 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
37
a9261154cde9 integer operation debug
kono
parents:
diff changeset
38 int
a9261154cde9 integer operation debug
kono
parents:
diff changeset
39 main(int ac,char *av[]) {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
40 int g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
41 int i;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
42 unsigned u;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
43 unsigned d00 = ac?-30:ac;
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
44 unsigned d01 = 0x3ffffff;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
45 unsigned d02 = 0x300;
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
46
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
47 printf("%d %f %d %f\n",1,0.1,1,0.1);
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
48 printf("%f %d %f %d\n",0.1,1,0.1,1);
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
49
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
50 printf("%u %u %u\n",d00,d01%d02,d01*d02);
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
51
a9261154cde9 integer operation debug
kono
parents:
diff changeset
52 g = 1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
53 g = -g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
54 printf("%d\ncond ",g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
55 if(f==f*1) printf("1 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
56 if(d==f*1) printf("2 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
57 if(f==f1) printf("3 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
58 if(d==d1) printf("4 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
59 if(d==d2) printf("-4 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
60 if(d>d1) printf("5 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
61 if(d>d2) printf("-5 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
62 if(d>=d1) printf("6 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
63 if(d>=d2) printf("-6 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
64 if(d!=d1) printf("7 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
65 if(d!=d2) printf("-7 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
66 if(d<d1) printf("8 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
67 if(d<d2) printf("-8 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
68 if(d<=d1) printf("9 ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
69 if(d<=d2) printf("-9 ");
132
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
70
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
71 printf("unsigned ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
72 if(f>f1) printf("5 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
73 if(f>f2) printf("-5 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
74 if(f>=f1) printf("6 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
75 if(f>=f2) printf("-6 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
76 if(f!=f1) printf("7 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
77 if(f!=f2) printf("-7 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
78 if(f<f1) printf("8 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
79 if(f<f2) printf("-8 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
80 if(f<=f1) printf("9 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
81 if(f<=f2) printf("-9 ");
07eb1249f07a *** empty log message ***
kono
parents: 127
diff changeset
82
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
83 d = 123; f=-234;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
84 i = d;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
85 d = i;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
86 i = f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
87 f = i;
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
88 printf("\n%d %d %d",i,d,f);
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
89 f = g = d = d1 = d2 = f;
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
90 printf(" %d %d %d %d\n",i,d,f,g);
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
91
a9261154cde9 integer operation debug
kono
parents:
diff changeset
92 d = 320967294; f=224967294;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
93 u = d;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
94 d = u;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
95 u = f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
96 f = u;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
97 printf("%u %d %d\n",u,d,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
98
a9261154cde9 integer operation debug
kono
parents:
diff changeset
99 print(1.0);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
100 print(0.1234*100);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
101 print(1.234e6);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
102 print(-1.234e+3);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
103
a9261154cde9 integer operation debug
kono
parents:
diff changeset
104 test1();
a9261154cde9 integer operation debug
kono
parents:
diff changeset
105 printf("nested call: %d\n",test2(test2(test2(test2(-333,3),5),6),7));
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
106 /* test3(40,20); */
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
107 return 0;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
108 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
109
a9261154cde9 integer operation debug
kono
parents:
diff changeset
110 void
a9261154cde9 integer operation debug
kono
parents:
diff changeset
111 print(int d)
a9261154cde9 integer operation debug
kono
parents:
diff changeset
112 {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
113 unsigned f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
114 int *dd;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
115
a9261154cde9 integer operation debug
kono
parents:
diff changeset
116 f = d;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
117
a9261154cde9 integer operation debug
kono
parents:
diff changeset
118
a9261154cde9 integer operation debug
kono
parents:
diff changeset
119 dd = (int*) &f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
120 printf("f %d ",f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
121 printf("dx %08x \n",*(dd));
a9261154cde9 integer operation debug
kono
parents:
diff changeset
122 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
123
a9261154cde9 integer operation debug
kono
parents:
diff changeset
124 int
a9261154cde9 integer operation debug
kono
parents:
diff changeset
125 testd(int i,int j)
a9261154cde9 integer operation debug
kono
parents:
diff changeset
126 {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
127 return j+1.1+.0e3+12.3e-12;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
128 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
129
a9261154cde9 integer operation debug
kono
parents:
diff changeset
130 unsigned
a9261154cde9 integer operation debug
kono
parents:
diff changeset
131 testf(unsigned i,unsigned j)
a9261154cde9 integer operation debug
kono
parents:
diff changeset
132 {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
133 return j+1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
134 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
135
a9261154cde9 integer operation debug
kono
parents:
diff changeset
136 void
a9261154cde9 integer operation debug
kono
parents:
diff changeset
137 ahoaho() {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
138 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
139
a9261154cde9 integer operation debug
kono
parents:
diff changeset
140 void
a9261154cde9 integer operation debug
kono
parents:
diff changeset
141 test1()
a9261154cde9 integer operation debug
kono
parents:
diff changeset
142 {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
143 unsigned f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
144 unsigned f1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
145 int g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
146 int g1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
147 unsigned *pf;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
148 unsigned *pf1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
149 int *pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
150 int *pg1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
151 int n = 1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
152
a9261154cde9 integer operation debug
kono
parents:
diff changeset
153 printf("simple int ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
154 f = 1.3;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
155
a9261154cde9 integer operation debug
kono
parents:
diff changeset
156 g = 1.0;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
157 g = g+g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
158 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
159 g1 = g*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
160 printf("%d:%d\t",n++,g1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
161 g = g/g1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
162 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
163 g = g-g1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
164 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
165 g = sin(g1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
166 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
167 g = testd(g,g1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
168 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
169 printf("\n");
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
170 g = g+g;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
171
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
172 g = 3.0;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
173 printf("%d:%d\t",n++,g);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
174 g1 = g<<g;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
175 printf("%d:%d\t",n++,g1);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
176 g = g%g1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
177 printf("%d:%d\t",n++,g);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
178 g = g|g1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
179 printf("%d:%d\t",n++,g);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
180 g = g&g1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
181 printf("%d:%d\t",n++,g);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
182 g = g^g1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
183 printf("%d:%d\t",n++,g);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
184 printf("\n");
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
185
a9261154cde9 integer operation debug
kono
parents:
diff changeset
186 printf("simple unsigned ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
187 f = f+f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
188 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
189 f1 = f*f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
190 printf("%d:%d\t",n++,f1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
191 f = f/f1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
192 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
193 f = f-f1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
194 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
195 f = sin(f1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
196 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
197 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
198
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
199 f = 3.0;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
200 printf("%d:%d\t",n++,f);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
201 f1 = f<<f;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
202 printf("%d:%d\t",n++,f1);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
203 f = f%f1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
204 printf("%d:%d\t",n++,f);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
205 f = f|f1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
206 printf("%d:%d\t",n++,f);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
207 f = f&f1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
208 printf("%d:%d\t",n++,f);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
209 f = f^f1;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
210 printf("%d:%d\t",n++,f);
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
211 printf("\n");
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
212
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
213
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
214 printf("post/pre increment ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
215 g1 = g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
216 printf("%d:%d\t",n++,g1++ - ++g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
217
a9261154cde9 integer operation debug
kono
parents:
diff changeset
218 f1 = f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
219 printf("%d:%d\t",n++,f1++ - ++f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
220
a9261154cde9 integer operation debug
kono
parents:
diff changeset
221 g1 = g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
222 printf("%d:%d\t",n++,g1-- - --g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
223
a9261154cde9 integer operation debug
kono
parents:
diff changeset
224 f1 = f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
225 printf("%d:%d\t",n++,f1-- - --f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
226
a9261154cde9 integer operation debug
kono
parents:
diff changeset
227 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
228 printf("simple calc ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
229
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
230 f=3.13; g=-7.56; f1=-5.13; g1=7.56;
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
231
a9261154cde9 integer operation debug
kono
parents:
diff changeset
232 g = f+f;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
233 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
234 f = g*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
235 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
236 g = g*g+f*f-g1*g1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
237 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
238 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
239
a9261154cde9 integer operation debug
kono
parents:
diff changeset
240 printf("unsigned argument ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
241 f = testf(f,f1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
242 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
243
a9261154cde9 integer operation debug
kono
parents:
diff changeset
244 printf("\nindirect ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
245 n=1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
246 f = 1.3; pf=&f; pf1=&f1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
247
a9261154cde9 integer operation debug
kono
parents:
diff changeset
248 ahoaho();
a9261154cde9 integer operation debug
kono
parents:
diff changeset
249 g = 1.0; pg=&g; pg1=&g1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
250 *pg = *pg+ *pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
251 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
252 *pg1 = *pg**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
253 printf("%d:%d\t",n++,*pg1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
254 *pg = *pg/ *pg1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
255 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
256 *pg = *pg-*pg1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
257 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
258 *pg = sin(*pg1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
259 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
260 *pg = testd(*pg,*pg1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
261 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
262 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
263
a9261154cde9 integer operation debug
kono
parents:
diff changeset
264 *pf = *pf+*pf;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
265 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
266 *pf1 = *pf**pf;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
267 printf("%d:%d\t",n++,*pf1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
268 *pf = *pf/ *pf1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
269 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
270 *pf = *pf-*pf1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
271 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
272 *pf = sin(*pf1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
273 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
274 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
275
a9261154cde9 integer operation debug
kono
parents:
diff changeset
276 printf("indirect post/pre ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
277 *pg1 = *pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
278 printf("%d:%d\t",n++,(*pg1)++ - ++(*pg));
a9261154cde9 integer operation debug
kono
parents:
diff changeset
279
a9261154cde9 integer operation debug
kono
parents:
diff changeset
280 *pf1 = *pf;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
281 printf("%d:%d\t",n++,(*pf1)++ - ++(*pf));
a9261154cde9 integer operation debug
kono
parents:
diff changeset
282
a9261154cde9 integer operation debug
kono
parents:
diff changeset
283 *pg1 = *pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
284 printf("%d:%d\t",n++, (*pg1)-- - --(*pg));
a9261154cde9 integer operation debug
kono
parents:
diff changeset
285
a9261154cde9 integer operation debug
kono
parents:
diff changeset
286 *pf1 = *pf;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
287 printf("%d:%d\t",n++, (*pf1)-- - --(*pf));
a9261154cde9 integer operation debug
kono
parents:
diff changeset
288 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
289
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
290 *pf=3.13; *pg=-7.56; *pf1=-5.13; *pg1=7.56;
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
291
a9261154cde9 integer operation debug
kono
parents:
diff changeset
292 *pg = *pf+*pf;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
293 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
294 *pf = *pg**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
295 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
296 *pg = *pg**pg+*pf**pf-*pg1**pg1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
297 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
298 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
299
a9261154cde9 integer operation debug
kono
parents:
diff changeset
300 printf("unsigned argument ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
301
a9261154cde9 integer operation debug
kono
parents:
diff changeset
302 *pf = testf(*pf,*pf1);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
303 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
304
a9261154cde9 integer operation debug
kono
parents:
diff changeset
305
a9261154cde9 integer operation debug
kono
parents:
diff changeset
306 printf("\nassop ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
307 n=1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
308 f = 1.3;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
309 g = 1.0;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
310
a9261154cde9 integer operation debug
kono
parents:
diff changeset
311 g *= 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
312 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
313 g /= 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
314 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
315 g -= 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
316 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
317 g += 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
318 printf("%d:%d\t",n++,g);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
319
127
eb4d8975926c Intel float fix
kono
parents: 116
diff changeset
320 g = -3;
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
321 f *= 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
322 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
323 f /= 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
324 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
325 f -= 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
326 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
327 f += 2*g;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
328 printf("%d:%d\t",n++,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
329 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
330
a9261154cde9 integer operation debug
kono
parents:
diff changeset
331 n=1;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
332 f = 1.3;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
333 g = 1.0;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
334
a9261154cde9 integer operation debug
kono
parents:
diff changeset
335 printf("indirect assop ");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
336 *pg *= 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
337 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
338 *pg /= 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
339 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
340 *pg -= 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
341 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
342 *pg += 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
343 printf("%d:%d\t",n++,*pg);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
344
127
eb4d8975926c Intel float fix
kono
parents: 116
diff changeset
345 *pg = -3;
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
346 *pf *= 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
347 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
348 *pf /= 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
349 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
350 *pf -= 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
351 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
352 *pf += 2**pg;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
353 printf("%d:%d\t",n++,*pf);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
354 printf("\n");
a9261154cde9 integer operation debug
kono
parents:
diff changeset
355
a9261154cde9 integer operation debug
kono
parents:
diff changeset
356
a9261154cde9 integer operation debug
kono
parents:
diff changeset
357 return;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
358 }
a9261154cde9 integer operation debug
kono
parents:
diff changeset
359
a9261154cde9 integer operation debug
kono
parents:
diff changeset
360 int
a9261154cde9 integer operation debug
kono
parents:
diff changeset
361 test2(int f,int i)
a9261154cde9 integer operation debug
kono
parents:
diff changeset
362 {
a9261154cde9 integer operation debug
kono
parents:
diff changeset
363 int g,h;
a9261154cde9 integer operation debug
kono
parents:
diff changeset
364
a9261154cde9 integer operation debug
kono
parents:
diff changeset
365 if (i<=0) return f;
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
366 #if 0
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
367 printf("rec: %d %d\n",i,f);
a9261154cde9 integer operation debug
kono
parents:
diff changeset
368 #endif
a9261154cde9 integer operation debug
kono
parents:
diff changeset
369 g = f*2;
114
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
370 h = f-3.5;
e6cb1e293b35 float/int passed.
kono
parents: 113
diff changeset
371 return h/3-(3.0-(g+3)*test2(f*1.5,i-1)/(h-1));
113
a9261154cde9 integer operation debug
kono
parents:
diff changeset
372 }
116
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
373
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
374 int
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
375 test3(int base,int base1)
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
376 {
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
377 int i,j;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
378 for(i=0;i<10;i++) {
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
379 for(j=0;j<10;j++) {
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
380 printf("%d ",(base+i)%(base1+j));
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
381 }
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
382 printf("\n");
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
383 }
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
384 return 0;
b14ff9671c90 register offset fix
kono
parents: 114
diff changeset
385 }