annotate test/basic.c @ 375:91849fdeea60

PowerPC large offset.
author kono
date Mon, 12 Jul 2004 07:33:23 +0900
parents 096559f07a70
children 0c256ea2a97e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
375
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
1 #define ARG_ADDRESS 0
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
2
97
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
3 double ggg = 0.134;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
4 float fff = 0.0;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
5
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
6 extern double eggg;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
7 double eggg = 0.134;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
8 extern float efff;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
9 float efff = 0.1345;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
10
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
11 double ggg0;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
12 float fff0;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
13
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
14 #if 0
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
15 extern double reggg;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
16 extern float refff;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
17 #endif
89
917947ffeb7c power pc version
kono
parents:
diff changeset
18
917947ffeb7c power pc version
kono
parents:
diff changeset
19 int i;
917947ffeb7c power pc version
kono
parents:
diff changeset
20 print(double d)
917947ffeb7c power pc version
kono
parents:
diff changeset
21 {
917947ffeb7c power pc version
kono
parents:
diff changeset
22 float f;
917947ffeb7c power pc version
kono
parents:
diff changeset
23 int *dd;
917947ffeb7c power pc version
kono
parents:
diff changeset
24
97
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
25 #if 0
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
26 f = refff;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
27 f = reggg;
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
28 #endif
6d42fcac07af *** empty log message ***
kono
parents: 96
diff changeset
29
89
917947ffeb7c power pc version
kono
parents:
diff changeset
30 f = d;
917947ffeb7c power pc version
kono
parents:
diff changeset
31
917947ffeb7c power pc version
kono
parents:
diff changeset
32 dd = (int*) &d;
917947ffeb7c power pc version
kono
parents:
diff changeset
33 printf("d %g\n",d);
917947ffeb7c power pc version
kono
parents:
diff changeset
34 printf("dx %08x %08x\n",*(dd),*(dd+1));
917947ffeb7c power pc version
kono
parents:
diff changeset
35
917947ffeb7c power pc version
kono
parents:
diff changeset
36 dd = (int*) &f;
917947ffeb7c power pc version
kono
parents:
diff changeset
37 printf("f %g\n",f);
917947ffeb7c power pc version
kono
parents:
diff changeset
38 printf("dx %08x \n",*(dd));
917947ffeb7c power pc version
kono
parents:
diff changeset
39 }
917947ffeb7c power pc version
kono
parents:
diff changeset
40
917947ffeb7c power pc version
kono
parents:
diff changeset
41 void
917947ffeb7c power pc version
kono
parents:
diff changeset
42 tmp () {
917947ffeb7c power pc version
kono
parents:
diff changeset
43 char c;
917947ffeb7c power pc version
kono
parents:
diff changeset
44 int i;
917947ffeb7c power pc version
kono
parents:
diff changeset
45 c=-1;
917947ffeb7c power pc version
kono
parents:
diff changeset
46 i=c;
917947ffeb7c power pc version
kono
parents:
diff changeset
47 printf("%d %d %d\n",!i,~i,-i);
917947ffeb7c power pc version
kono
parents:
diff changeset
48 printf("%d\n",i);
917947ffeb7c power pc version
kono
parents:
diff changeset
49 }
917947ffeb7c power pc version
kono
parents:
diff changeset
50
96
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
51 int
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
52 g(
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
53 int a0,int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
54 )
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
55 {
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
56 printf("g: %d\n",
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
57 a0+a1+a2+a3+a4+a5+a6+a7+a8
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
58 );
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
59 return a8;
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
60 }
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
61
103
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
62 int
119
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
63 i50(
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
64 int a0,int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10,int a11,int a12,int a13,int a14,int a15,int a16,int a17,int a18,int a19,int a20,int a21,int a22,int a23,int a24,int a25,int a26,int a27,int a28,int a29,int a30,int a31,int a32,int a33,int a34,int a35,int a36,int a37,int a38,int a39,int a40,int a41,int a42,int a43,int a44,int a45,int a46,int a47,int a48,int a49
108
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
65 )
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
66 {
375
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
67 #if ARG_ADDRESS
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
68 printf("i50: a0 %x a49 %x\n",&a0,&a49);
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
69 #endif
119
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
70 printf("i50: %d\n",
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
71 a0+a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12+a13+a14+a15+a16+a17+a18+a19+a20+a21+a22+a23+a24+a25+a26+a27+a28+a29+a30+a31+a32+a33+a34+a35+a36+a37+a38+a39+a40+a41+a42+a43+a44+a45+a46+a47+a48+a49
108
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
72 );
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
73 return a8;
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
74 }
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
75
119
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
76 float
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
77 f50(
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
78 float a0,float a1,float a2,float a3,float a4,float a5,float a6,float a7,float a8,float a9,float a10,float a11,float a12,float a13,float a14,float a15,float a16,float a17,float a18,float a19,float a20,float a21,float a22,float a23,float a24,float a25,float a26,float a27,float a28,float a29,float a30,float a31,float a32,float a33,float a34,float a35,float a36,float a37,float a38,float a39,float a40,float a41,float a42,float a43,float a44,float a45,float a46,float a47,float a48,float a49
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
79 )
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
80 {
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
81 printf("f50: %g\n",
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
82 a0+a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12+a13+a14+a15+a16+a17+a18+a19+a20+a21+a22+a23+a24+a25+a26+a27+a28+a29+a30+a31+a32+a33+a34+a35+a36+a37+a38+a39+a40+a41+a42+a43+a44+a45+a46+a47+a48+a49
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
83 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
84 return a8;
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
85 }
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
86
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
87 double
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
88 d50(
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
89 double a0,double a1,double a2,double a3,double a4,double a5,double a6,double a7,double a8,double a9,double a10,double a11,double a12,double a13,double a14,double a15,double a16,double a17,double a18,double a19,double a20,double a21,double a22,double a23,double a24,double a25,double a26,double a27,double a28,double a29,double a30,double a31,double a32,double a33,double a34,double a35,double a36,double a37,double a38,double a39,double a40,double a41,double a42,double a43,double a44,double a45,double a46,double a47,double a48,double a49
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
90 )
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
91 {
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
92 printf("d50: %g\n",
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
93 a0+a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12+a13+a14+a15+a16+a17+a18+a19+a20+a21+a22+a23+a24+a25+a26+a27+a28+a29+a30+a31+a32+a33+a34+a35+a36+a37+a38+a39+a40+a41+a42+a43+a44+a45+a46+a47+a48+a49
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
94 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
95 return a8;
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
96 }
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
97
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
98
108
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
99 int
103
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
100 h( int a0,int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8)
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
101 {
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
102 g( a0,a1,a2,a3,a4,a5,a6,a7,a8);
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
103 }
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
104
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
105
96
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
106 double
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
107 f(
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
108 double a0,double a1,double a2,double a3,double a4,double a5,double a6,double a7,double a8
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
109 )
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
110 {
122
b884271bcab2 input registers (long arguments )
kono
parents: 119
diff changeset
111 printf("f: %g\n",
96
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
112 a0+a1+a2+a3+a4+a5+a6+a7+a8
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
113 );
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
114 return a8;
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
115 }
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
116
89
917947ffeb7c power pc version
kono
parents:
diff changeset
117 void
917947ffeb7c power pc version
kono
parents:
diff changeset
118 tmp1 () {
375
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
119 #if ARG_ADDRESS
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
120 int a0;
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
121 printf("tmp1: a0 %x\n",&a0);
91849fdeea60 PowerPC large offset.
kono
parents: 172
diff changeset
122 #endif
89
917947ffeb7c power pc version
kono
parents:
diff changeset
123
119
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
124 printf("%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d \n",
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
125 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
126 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
127 printf("%g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g \n",
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
128 0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0,20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0,40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
129 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
130
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
131 i50(
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
132 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
133 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
134 f50(
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
135 0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0,20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0,40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
136 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
137 d50(
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
138 0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0,20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0,40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
139 );
b815fcd57b9d input var ( incomplete )
kono
parents: 108
diff changeset
140
103
f849af4b5ea9 *** empty log message ***
kono
parents: 97
diff changeset
141 h(0,1,2,3,4,5,6,7,1);
96
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
142 g(g(0,1,2,3,4,5,6,7,0),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
143 g(0,1,2,3,4,5,6,7,1),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
144 g(0,1,2,3,4,5,6,7,2),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
145 g(0,1,2,3,4,5,6,7,3),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
146 g(0,1,2,3,4,5,6,7,4),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
147 g(0,1,2,3,4,5,6,7,5),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
148 g(0,1,2,3,4,5,6,7,6),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
149 g(0,1,2,3,4,5,6,7,6),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
150 g(0,1,2,3,4,5,6,7,7));
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
151 f(f(0,1,2,3,4,5,6,7,0),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
152 f(0,1,2,3,4,5,6,7,1),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
153 f(0,1,2,3,4,5,6,7,2),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
154 f(0,1,2,3,4,5,6,7,3),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
155 f(0,1,2,3,4,5,6,7,4),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
156 f(0,1,2,3,4,5,6,7,5),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
157 f(0,1,2,3,4,5,6,7,6),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
158 f(0,1,2,3,4,5,6,7,6),
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
159 f(0,1,2,3,4,5,6,7,7));
7d8de41390d8 *** empty log message ***
kono
parents: 89
diff changeset
160
89
917947ffeb7c power pc version
kono
parents:
diff changeset
161 }
917947ffeb7c power pc version
kono
parents:
diff changeset
162
917947ffeb7c power pc version
kono
parents:
diff changeset
163
917947ffeb7c power pc version
kono
parents:
diff changeset
164 main() {
917947ffeb7c power pc version
kono
parents:
diff changeset
165 print(1.0);
917947ffeb7c power pc version
kono
parents:
diff changeset
166 print(0.1234);
917947ffeb7c power pc version
kono
parents:
diff changeset
167 print(1.234e10);
917947ffeb7c power pc version
kono
parents:
diff changeset
168 print(1.234e-10);
108
69e2e763cce5 object assemble first try.
kono
parents: 103
diff changeset
169 tmp1();
172
096559f07a70 some check
kono
parents: 122
diff changeset
170 return 0;
89
917947ffeb7c power pc version
kono
parents:
diff changeset
171 }