1 #include <freehdl/kernel.h>
2 #include <freehdl/std.h>
3
4
5
6 /* package :ieee:math_real */
7 /* External declarations */
8 /* End of external declarations */
9 /* Prototype for subprogram :ieee:math_real:sign */
10 floatingpoint L4ieee_Q9math_real_Y4sign_i20(const floatingpoint );
11 /* Prototype for subprogram :ieee:math_real:ceil */
12 floatingpoint L4ieee_Q9math_real_Y4ceil_i22(const floatingpoint );
13 /* Prototype for subprogram :ieee:math_real:floor */
14 floatingpoint L4ieee_Q9math_real_Y5floor_i24(const floatingpoint );
15 /* Prototype for subprogram :ieee:math_real:round */
16 floatingpoint L4ieee_Q9math_real_Y5round_i26(const floatingpoint );
17 /* Prototype for subprogram :ieee:math_real:fmax */
18 floatingpoint L4ieee_Q9math_real_Y4fmax_i29(const floatingpoint ,const floatingpoint );
19 /* Prototype for subprogram :ieee:math_real:fmin */
20 floatingpoint L4ieee_Q9math_real_Y4fmin_i32(const floatingpoint ,const floatingpoint );
21 /* Prototype for subprogram :ieee:math_real:uniform */
22 void L4ieee_Q9math_real_X7uniform_i36(integer &,integer &,floatingpoint &);
23 /* Prototype for subprogram :ieee:math_real:srand */
24 integer L4ieee_Q9math_real_Y5srand_i38(const integer );
25 /* Prototype for subprogram :ieee:math_real:rand */
26 integer L4ieee_Q9math_real_Y4rand_i39();
27 /* Prototype for subprogram :ieee:math_real:get_rand_max */
28 integer L4ieee_Q9math_real_Y12get_rand_max_i40();
29 /* Prototype for subprogram :ieee:math_real:sqrt */
30 floatingpoint L4ieee_Q9math_real_Y4sqrt_i42(const floatingpoint );
31 /* Prototype for subprogram :ieee:math_real:cbrt */
32 floatingpoint L4ieee_Q9math_real_Y4cbrt_i44(const floatingpoint );
33 /* Prototype for subprogram :ieee:math_real:"**" */
34 floatingpoint L4ieee_Q9math_real_Y8op_power_i47(const integer ,const floatingpoint );
35 /* Prototype for subprogram :ieee:math_real:"**" */
36 floatingpoint L4ieee_Q9math_real_Y8op_power_i50(const floatingpoint ,const floatingpoint );
37 /* Prototype for subprogram :ieee:math_real:exp */
38 floatingpoint L4ieee_Q9math_real_Y3exp_i52(const floatingpoint );
39 /* Prototype for subprogram :ieee:math_real:log */
40 floatingpoint L4ieee_Q9math_real_Y3log_i54(const floatingpoint );
41 /* Prototype for subprogram :ieee:math_real:log */
42 floatingpoint L4ieee_Q9math_real_Y3log_i57(const integer ,const floatingpoint );
43 /* Prototype for subprogram :ieee:math_real:sin */
44 floatingpoint L4ieee_Q9math_real_Y3sin_i59(const floatingpoint );
45 /* Prototype for subprogram :ieee:math_real:cos */
46 floatingpoint L4ieee_Q9math_real_Y3cos_i61(const floatingpoint );
47 /* Prototype for subprogram :ieee:math_real:tan */
48 floatingpoint L4ieee_Q9math_real_Y3tan_i63(const floatingpoint );
49 /* Prototype for subprogram :ieee:math_real:asin */
50 floatingpoint L4ieee_Q9math_real_Y4asin_i65(const floatingpoint );
51 /* Prototype for subprogram :ieee:math_real:acos */
52 floatingpoint L4ieee_Q9math_real_Y4acos_i67(const floatingpoint );
53 /* Prototype for subprogram :ieee:math_real:atan */
54 floatingpoint L4ieee_Q9math_real_Y4atan_i69(const floatingpoint );
55 /* Prototype for subprogram :ieee:math_real:atan2 */
56 floatingpoint L4ieee_Q9math_real_Y5atan2_i72(const floatingpoint ,const floatingpoint );
57 /* Prototype for subprogram :ieee:math_real:sinh */
58 floatingpoint L4ieee_Q9math_real_Y4sinh_i74(const floatingpoint );
59 /* Prototype for subprogram :ieee:math_real:cosh */
60 floatingpoint L4ieee_Q9math_real_Y4cosh_i76(const floatingpoint );
61 /* Prototype for subprogram :ieee:math_real:tanh */
62 floatingpoint L4ieee_Q9math_real_Y4tanh_i78(const floatingpoint );
63 /* Prototype for subprogram :ieee:math_real:asinh */
64 floatingpoint L4ieee_Q9math_real_Y5asinh_i80(const floatingpoint );
65 /* Prototype for subprogram :ieee:math_real:acosh */
66 floatingpoint L4ieee_Q9math_real_Y5acosh_i82(const floatingpoint );
67 /* Prototype for subprogram :ieee:math_real:atanh */
68 floatingpoint L4ieee_Q9math_real_Y5atanh_i84(const floatingpoint );
69 floatingpoint L4ieee_Q9math_real_C6math_e,L4ieee_Q9math_real_C8math_1_e,L4ieee_Q9math_real_C7math_pi,L4ieee_Q9math_real_C9math_1_pi,L4ieee_Q9math_real_C13math_log_of_2,L4ieee_Q9math_real_C14math_log_of_10,L4ieee_Q9math_real_C14math_log2_of_e,L4ieee_Q9math_real_C15math_log10_of_e,L4ieee_Q9math_real_C10math_sqrt2,L4ieee_Q9math_real_C12math_sqrt1_2,L4ieee_Q9math_real_C12math_sqrt_pi,L4ieee_Q9math_real_C15math_deg_to_rad,L4ieee_Q9math_real_C15math_rad_to_deg;
70 /* Initialization function for package :ieee:math_real */
71 int L3std_Q8standard_init ();
72 bool L4ieee_Q9math_real_init_done = false;
L4ieee_Q9math_real_init()73 int L4ieee_Q9math_real_init(){
74 if (L4ieee_Q9math_real_init_done) return 1;
75 L4ieee_Q9math_real_init_done=true;
76 L3std_Q8standard_init ();
77 register_source_file("/home/stefan/cvs-local/freehdl-teaser/ieee/math_real.vhdl","math_real.vhdl");
78 name_stack iname;
79 iname.push("");
80 void *sref=register_package(":ieee",":math_real");
81 L4ieee_Q9math_real_C6math_e=2.71828182845904523536;
82 L4ieee_Q9math_real_C8math_1_e=0.36787944117144232160;
83 L4ieee_Q9math_real_C7math_pi=3.14159265358979323846;
84 L4ieee_Q9math_real_C9math_1_pi=0.31830988618379067154;
85 L4ieee_Q9math_real_C13math_log_of_2=0.69314718055994530942;
86 L4ieee_Q9math_real_C14math_log_of_10=2.30258509299404568402;
87 L4ieee_Q9math_real_C14math_log2_of_e=1.4426950408889634074;
88 L4ieee_Q9math_real_C15math_log10_of_e=0.43429448190325182765;
89 L4ieee_Q9math_real_C10math_sqrt2=1.41421356237309504880;
90 L4ieee_Q9math_real_C12math_sqrt1_2=0.70710678118654752440;
91 L4ieee_Q9math_real_C12math_sqrt_pi=1.77245385090551602730;
92 L4ieee_Q9math_real_C15math_deg_to_rad=0.01745329251994329577;
93 L4ieee_Q9math_real_C15math_rad_to_deg=57.29577951308232087685;
94 iname.pop();
95 handle_info *h = get_handle ("ieee","math_real",NULL);
96 if (h != NULL) (*h->init_function) ();
97 return 1;
98 }
99
100 /* end of package :ieee:math_real */
101
102 /* package :ieee:math_complex */
103 /* External declarations */
104 /* End of external declarations */
105 /* Definitions for record type :ieee:math_complex:complex */
106 #define L4ieee_Q12math_complex_I7complex record_info
107 void *L4ieee_Q12math_complex_T7complex_ELEM_ADDR(void*,int);
108 struct L4ieee_Q12math_complex_T7complex_DATA {
109 floatingpoint M2re;
110 floatingpoint M2im;
L4ieee_Q12math_complex_T7complex_DATAL4ieee_Q12math_complex_T7complex_DATA111 L4ieee_Q12math_complex_T7complex_DATA(floatingpoint M2re, floatingpoint M2im) :
112 M2re(M2re),
113 M2im(M2im)
114 { }
L4ieee_Q12math_complex_T7complex_DATAL4ieee_Q12math_complex_T7complex_DATA115 L4ieee_Q12math_complex_T7complex_DATA() { }
initL4ieee_Q12math_complex_T7complex_DATA116 void init(type_info_interface *rinfo) {
117 type_info_interface **einfos = ((record_info*)rinfo)->element_types;
118 M2re=((float_info_base*)einfos[0])->left_bound;
119 M2im=((float_info_base*)einfos[1])->left_bound;
120 };
initL4ieee_Q12math_complex_T7complex_DATA121 void init(type_info_interface *rinfo, const void *p) {
122 type_info_interface **einfos = ((record_info*)rinfo)->element_types;
123 const L4ieee_Q12math_complex_T7complex_DATA &src_data = *(L4ieee_Q12math_complex_T7complex_DATA*)((const record_base *)p)->data;
124 M2re=src_data.M2re;
125 M2im=src_data.M2im;
126 };
127 };
128 #define L4ieee_Q12math_complex_T7complex record_type<L4ieee_Q12math_complex_T7complex_DATA>
129 extern record_info L4ieee_Q12math_complex_I7complex_INFO;
130 extern array_info L4ieee_Q12math_complex_I14complex_vector_INFO;
131 #define L4ieee_Q12math_complex_T14complex_vector array_type<L4ieee_Q12math_complex_T7complex >
132 #define L4ieee_Q12math_complex_I14complex_vector array_info
133
134 /* Definitions for record type :ieee:math_complex:complex_polar */
135 #define L4ieee_Q12math_complex_I13complex_polar record_info
136 void *L4ieee_Q12math_complex_T13complex_polar_ELEM_ADDR(void*,int);
137 struct L4ieee_Q12math_complex_T13complex_polar_DATA {
138 floatingpoint M3mag;
139 floatingpoint M3arg;
L4ieee_Q12math_complex_T13complex_polar_DATAL4ieee_Q12math_complex_T13complex_polar_DATA140 L4ieee_Q12math_complex_T13complex_polar_DATA(floatingpoint M3mag, floatingpoint M3arg) :
141 M3mag(M3mag),
142 M3arg(M3arg)
143 { }
L4ieee_Q12math_complex_T13complex_polar_DATAL4ieee_Q12math_complex_T13complex_polar_DATA144 L4ieee_Q12math_complex_T13complex_polar_DATA() { }
initL4ieee_Q12math_complex_T13complex_polar_DATA145 void init(type_info_interface *rinfo) {
146 type_info_interface **einfos = ((record_info*)rinfo)->element_types;
147 M3mag=((float_info_base*)einfos[0])->left_bound;
148 M3arg=((float_info_base*)einfos[1])->left_bound;
149 };
initL4ieee_Q12math_complex_T13complex_polar_DATA150 void init(type_info_interface *rinfo, const void *p) {
151 type_info_interface **einfos = ((record_info*)rinfo)->element_types;
152 const L4ieee_Q12math_complex_T13complex_polar_DATA &src_data = *(L4ieee_Q12math_complex_T13complex_polar_DATA*)((const record_base *)p)->data;
153 M3mag=src_data.M3mag;
154 M3arg=src_data.M3arg;
155 };
156 };
157 #define L4ieee_Q12math_complex_T13complex_polar record_type<L4ieee_Q12math_complex_T13complex_polar_DATA>
158 extern record_info L4ieee_Q12math_complex_I13complex_polar_INFO;
159 /* Prototype for subprogram :ieee:math_complex:cabs */
160 floatingpoint L4ieee_Q12math_complex_Y4cabs_i22(const L4ieee_Q12math_complex_T7complex &);
161 /* Prototype for subprogram :ieee:math_complex:carg */
162 floatingpoint L4ieee_Q12math_complex_Y4carg_i24(const L4ieee_Q12math_complex_T7complex &);
163 /* Prototype for subprogram :ieee:math_complex:cmplx */
164 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y5cmplx_i27(const floatingpoint ,const floatingpoint );
165 /* Prototype for subprogram :ieee:math_complex:"-" */
166 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i29(const L4ieee_Q12math_complex_T7complex &);
167 /* Prototype for subprogram :ieee:math_complex:"-" */
168 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y8op_minus_i31(const L4ieee_Q12math_complex_T13complex_polar &);
169 /* Prototype for subprogram :ieee:math_complex:conj */
170 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y4conj_i33(const L4ieee_Q12math_complex_T7complex &);
171 /* Prototype for subprogram :ieee:math_complex:conj */
172 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y4conj_i35(const L4ieee_Q12math_complex_T13complex_polar &);
173 /* Prototype for subprogram :ieee:math_complex:csqrt */
174 L4ieee_Q12math_complex_T14complex_vector L4ieee_Q12math_complex_Y5csqrt_i37(const L4ieee_Q12math_complex_T7complex &);
175 /* Prototype for subprogram :ieee:math_complex:cexp */
176 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y4cexp_i39(const L4ieee_Q12math_complex_T7complex &);
177 /* Prototype for subprogram :ieee:math_complex:complex_to_polar */
178 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y16complex_to_polar_i41(const L4ieee_Q12math_complex_T7complex &);
179 /* Prototype for subprogram :ieee:math_complex:polar_to_complex */
180 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y16polar_to_complex_i43(const L4ieee_Q12math_complex_T13complex_polar &);
181 /* Prototype for subprogram :ieee:math_complex:"+" */
182 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i46(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
183 /* Prototype for subprogram :ieee:math_complex:"+" */
184 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i49(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
185 /* Prototype for subprogram :ieee:math_complex:"+" */
186 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i52(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
187 /* Prototype for subprogram :ieee:math_complex:"+" */
188 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i55(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
189 /* Prototype for subprogram :ieee:math_complex:"+" */
190 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i58(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
191 /* Prototype for subprogram :ieee:math_complex:"+" */
192 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i61(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
193 /* Prototype for subprogram :ieee:math_complex:"+" */
194 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i64(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
195 /* Prototype for subprogram :ieee:math_complex:"+" */
196 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i67(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
197 /* Prototype for subprogram :ieee:math_complex:"-" */
198 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i70(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
199 /* Prototype for subprogram :ieee:math_complex:"-" */
200 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i73(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
201 /* Prototype for subprogram :ieee:math_complex:"-" */
202 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i76(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
203 /* Prototype for subprogram :ieee:math_complex:"-" */
204 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i79(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
205 /* Prototype for subprogram :ieee:math_complex:"-" */
206 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i82(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
207 /* Prototype for subprogram :ieee:math_complex:"-" */
208 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i85(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
209 /* Prototype for subprogram :ieee:math_complex:"-" */
210 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i88(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
211 /* Prototype for subprogram :ieee:math_complex:"-" */
212 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i91(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
213 /* Prototype for subprogram :ieee:math_complex:"*" */
214 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i94(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
215 /* Prototype for subprogram :ieee:math_complex:"*" */
216 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i97(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
217 /* Prototype for subprogram :ieee:math_complex:"*" */
218 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i100(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
219 /* Prototype for subprogram :ieee:math_complex:"*" */
220 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i103(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
221 /* Prototype for subprogram :ieee:math_complex:"*" */
222 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i106(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
223 /* Prototype for subprogram :ieee:math_complex:"*" */
224 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i109(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
225 /* Prototype for subprogram :ieee:math_complex:"*" */
226 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i112(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
227 /* Prototype for subprogram :ieee:math_complex:"*" */
228 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i115(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
229 /* Prototype for subprogram :ieee:math_complex:"/" */
230 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i118(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
231 /* Prototype for subprogram :ieee:math_complex:"/" */
232 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i121(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
233 /* Prototype for subprogram :ieee:math_complex:"/" */
234 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i124(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
235 /* Prototype for subprogram :ieee:math_complex:"/" */
236 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i127(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
237 /* Prototype for subprogram :ieee:math_complex:"/" */
238 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i130(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
239 /* Prototype for subprogram :ieee:math_complex:"/" */
240 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i133(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
241 /* Prototype for subprogram :ieee:math_complex:"/" */
242 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i136(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
243 /* Prototype for subprogram :ieee:math_complex:"/" */
244 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i139(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
245 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_C7cbase_1,L4ieee_Q12math_complex_C7cbase_j,L4ieee_Q12math_complex_C5czero;
246 const char *L4ieee_Q12math_complex_T7complex_NAMES[] = {
247 "re",
248 "im"
249 };
L4ieee_Q12math_complex_T7complex_ELEM_ADDR(void * p,int i)250 void *L4ieee_Q12math_complex_T7complex_ELEM_ADDR(void *p, int i)
251 {
252 L4ieee_Q12math_complex_T7complex_DATA &obj=*(L4ieee_Q12math_complex_T7complex_DATA*)p;
253 switch (i) {
254 case 0: return (void*)&obj.M2re;
255 case 1: return (void*)&obj.M2im;
256 };
257 };
258 L4ieee_Q12math_complex_I7complex L4ieee_Q12math_complex_I7complex_INFO;
259 L4ieee_Q12math_complex_I14complex_vector L4ieee_Q12math_complex_I14complex_vector_INFO;
260 const char *L4ieee_Q12math_complex_T13complex_polar_NAMES[] = {
261 "mag",
262 "arg"
263 };
L4ieee_Q12math_complex_T13complex_polar_ELEM_ADDR(void * p,int i)264 void *L4ieee_Q12math_complex_T13complex_polar_ELEM_ADDR(void *p, int i)
265 {
266 L4ieee_Q12math_complex_T13complex_polar_DATA &obj=*(L4ieee_Q12math_complex_T13complex_polar_DATA*)p;
267 switch (i) {
268 case 0: return (void*)&obj.M3mag;
269 case 1: return (void*)&obj.M3arg;
270 };
271 };
272 L4ieee_Q12math_complex_I13complex_polar L4ieee_Q12math_complex_I13complex_polar_INFO;
273 /* Initialization function for package :ieee:math_complex */
274 int L3std_Q8standard_init ();
275 bool L4ieee_Q12math_complex_init_done = false;
L4ieee_Q12math_complex_init()276 int L4ieee_Q12math_complex_init(){
277 if (L4ieee_Q12math_complex_init_done) return 1;
278 L4ieee_Q12math_complex_init_done=true;
279 L3std_Q8standard_init ();
280 register_source_file("/home/stefan/cvs-local/freehdl-teaser/ieee/math_real.vhdl","math_real.vhdl");
281 name_stack iname;
282 iname.push("");
283 void *sref=register_package(":ieee",":math_complex");
284 L4ieee_Q12math_complex_I7complex_INFO.set(2,sizeof(L4ieee_Q12math_complex_T7complex_DATA),L4ieee_Q12math_complex_T7complex_NAMES,L4ieee_Q12math_complex_T7complex_ELEM_ADDR,-1).set(0,(&L3std_Q8standard_I4real_INFO)).set(1,(&L3std_Q8standard_I4real_INFO)).register_type(":ieee:math_complex",":ieee:math_complex:complex",":COMPLEX",NULL);
285 L4ieee_Q12math_complex_I14complex_vector_INFO.set((&L4ieee_Q12math_complex_I7complex_INFO),(&L3std_Q8standard_I7integer_INFO),-1).register_type(":ieee:math_complex",":ieee:math_complex:complex_vector",":COMPLEX_VECTOR",NULL);
286 L4ieee_Q12math_complex_I13complex_polar_INFO.set(2,sizeof(L4ieee_Q12math_complex_T13complex_polar_DATA),L4ieee_Q12math_complex_T13complex_polar_NAMES,L4ieee_Q12math_complex_T13complex_polar_ELEM_ADDR,-1).set(0,(&L3std_Q8standard_I4real_INFO)).set(1,(&L3std_Q8standard_I4real_INFO)).register_type(":ieee:math_complex",":ieee:math_complex:complex_polar",":COMPLEX_POLAR",NULL);
287 L4ieee_Q12math_complex_C7cbase_1.init((&L4ieee_Q12math_complex_I7complex_INFO));
288 L4ieee_Q12math_complex_C7cbase_1=L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(1.0)).aggregate_set(1,const_pointer(0.0));
289 L4ieee_Q12math_complex_C7cbase_j.init((&L4ieee_Q12math_complex_I7complex_INFO));
290 L4ieee_Q12math_complex_C7cbase_j=L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(0.0)).aggregate_set(1,const_pointer(1.0));
291 L4ieee_Q12math_complex_C5czero.init((&L4ieee_Q12math_complex_I7complex_INFO));
292 L4ieee_Q12math_complex_C5czero=L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(0.0)).aggregate_set(1,const_pointer(0.0));
293 iname.pop();
294 handle_info *h = get_handle ("ieee","math_complex",NULL);
295 if (h != NULL) (*h->init_function) ();
296 return 1;
297 }
298
299 /* end of package :ieee:math_complex */
300
301 /* package body :ieee:math_real */
302 /* External declarations */
303 /* End of external declarations */
304 extern array_info L4ieee_W9math_real_I11real_vector_INFO;
305 #define L4ieee_W9math_real_T11real_vector array_type<floatingpoint >
306 #define L4ieee_W9math_real_I11real_vector array_info
307
308 extern array_info L4ieee_W9math_real_I14natural_vector_INFO;
309 #define L4ieee_W9math_real_T14natural_vector array_type<integer >
310 #define L4ieee_W9math_real_I14natural_vector array_info
311
312 extern array_info L4ieee_W9math_real_I13real_vector_n_INFO;
313 #define L4ieee_W9math_real_T13real_vector_n array_type<floatingpoint >
314 #define L4ieee_W9math_real_I13real_vector_n array_info
315
316 extern array_info L4ieee_W9math_real_I10real_arr_2_INFO;
317 #define L4ieee_W9math_real_T10real_arr_2 array_type<floatingpoint >
318 #define L4ieee_W9math_real_I10real_arr_2 array_info
319
320 extern array_info L4ieee_W9math_real_I10real_arr_3_INFO;
321 #define L4ieee_W9math_real_T10real_arr_3 array_type<floatingpoint >
322 #define L4ieee_W9math_real_I10real_arr_3 array_info
323
324 /** Integer info class :ieee:math_real:quadrant */
325 class L4ieee_W9math_real_I8quadrant:public integer_info_base{
326 public:
L4ieee_W9math_real_I8quadrant()327 L4ieee_W9math_real_I8quadrant():integer_info_base(0,3,0,3) {};
low()328 static integer low() { return 0; }
high()329 static integer high() { return 3; }
left()330 static integer left() { return 0; }
right()331 static integer right() { return 3; }
332 };
333 extern L4ieee_W9math_real_I8quadrant L4ieee_W9math_real_I8quadrant_INFO;
334 /* Definitions for enumeration type :ieee:math_real:cordic_mode_type */
335 class L4ieee_W9math_real_I16cordic_mode_type:public enum_info_base{
336 static const char *values[];
337 public:
L4ieee_W9math_real_I16cordic_mode_type()338 L4ieee_W9math_real_I16cordic_mode_type():enum_info_base(0,1,values) {};
get_values()339 static const char **get_values() { return values; }
low()340 static int low() { return 0; }
high()341 static int high() { return 1; }
left()342 static int left() { return 0; }
right()343 static int right() { return 1; }
344 };
345 extern L4ieee_W9math_real_I16cordic_mode_type L4ieee_W9math_real_I16cordic_mode_type_INFO;
346 /* Prototype for subprogram :ieee:math_real:power_of_2_series */
347 L4ieee_W9math_real_T11real_vector L4ieee_W9math_real_Y17power_of_2_series_i44(const L4ieee_W9math_real_T14natural_vector &,const floatingpoint ,const integer );
348 /* Prototype for subprogram :ieee:math_real:cordic */
349 L4ieee_W9math_real_T10real_arr_3 L4ieee_W9math_real_Y6cordic_i59(const floatingpoint ,const floatingpoint ,const floatingpoint ,const integer ,const enumeration );
350 /* Prototype for subprogram :ieee:math_real:sign */
351 floatingpoint L4ieee_Q9math_real_Y4sign_i20(const floatingpoint );
352 /** Integer info class :ieee:math_real:ceil:long */
353 class L4ieee_Q9math_real_Y4ceil_i22_I4long:public integer_info_base{
354 public:
L4ieee_Q9math_real_Y4ceil_i22_I4long()355 L4ieee_Q9math_real_Y4ceil_i22_I4long():integer_info_base(-1073741824,1073741824,-1073741824,1073741824) {};
low()356 static integer low() { return -1073741824; }
high()357 static integer high() { return 1073741824; }
left()358 static integer left() { return -1073741824; }
right()359 static integer right() { return 1073741824; }
360 };
361 extern L4ieee_Q9math_real_Y4ceil_i22_I4long L4ieee_Q9math_real_Y4ceil_i22_I4long_INFO;
362 /* Prototype for subprogram :ieee:math_real:ceil */
363 floatingpoint L4ieee_Q9math_real_Y4ceil_i22(const floatingpoint );
364 /** Integer info class :ieee:math_real:floor:long */
365 class L4ieee_Q9math_real_Y5floor_i24_I4long:public integer_info_base{
366 public:
L4ieee_Q9math_real_Y5floor_i24_I4long()367 L4ieee_Q9math_real_Y5floor_i24_I4long():integer_info_base(-1073741824,1073741824,-1073741824,1073741824) {};
low()368 static integer low() { return -1073741824; }
high()369 static integer high() { return 1073741824; }
left()370 static integer left() { return -1073741824; }
right()371 static integer right() { return 1073741824; }
372 };
373 extern L4ieee_Q9math_real_Y5floor_i24_I4long L4ieee_Q9math_real_Y5floor_i24_I4long_INFO;
374 /* Prototype for subprogram :ieee:math_real:floor */
375 floatingpoint L4ieee_Q9math_real_Y5floor_i24(const floatingpoint );
376 /* Prototype for subprogram :ieee:math_real:round */
377 floatingpoint L4ieee_Q9math_real_Y5round_i26(const floatingpoint );
378 /* Prototype for subprogram :ieee:math_real:fmax */
379 floatingpoint L4ieee_Q9math_real_Y4fmax_i29(const floatingpoint ,const floatingpoint );
380 /* Prototype for subprogram :ieee:math_real:fmin */
381 floatingpoint L4ieee_Q9math_real_Y4fmin_i32(const floatingpoint ,const floatingpoint );
382 /* Prototype for subprogram :ieee:math_real:uniform */
383 void L4ieee_Q9math_real_X7uniform_i36(integer &,integer &,floatingpoint &);
384 /* Prototype for subprogram :ieee:math_real:srand */
385 integer L4ieee_Q9math_real_Y5srand_i38(const integer );
386 /* Prototype for subprogram :ieee:math_real:rand */
387 integer L4ieee_Q9math_real_Y4rand_i39();
388 /* Prototype for subprogram :ieee:math_real:get_rand_max */
389 integer L4ieee_Q9math_real_Y12get_rand_max_i40();
390 /* Prototype for subprogram :ieee:math_real:sqrt */
391 floatingpoint L4ieee_Q9math_real_Y4sqrt_i42(const floatingpoint );
392 /* Prototype for subprogram :ieee:math_real:cbrt */
393 floatingpoint L4ieee_Q9math_real_Y4cbrt_i44(const floatingpoint );
394 /* Prototype for subprogram :ieee:math_real:"**" */
395 floatingpoint L4ieee_Q9math_real_Y8op_power_i47(const integer ,const floatingpoint );
396 /* Prototype for subprogram :ieee:math_real:"**" */
397 floatingpoint L4ieee_Q9math_real_Y8op_power_i50(const floatingpoint ,const floatingpoint );
398 /* Prototype for subprogram :ieee:math_real:exp */
399 floatingpoint L4ieee_Q9math_real_Y3exp_i52(const floatingpoint );
400 /* Prototype for subprogram :ieee:math_real:log */
401 floatingpoint L4ieee_Q9math_real_Y3log_i54(const floatingpoint );
402 /* Prototype for subprogram :ieee:math_real:log */
403 floatingpoint L4ieee_Q9math_real_Y3log_i57(const integer ,const floatingpoint );
404 /* Prototype for subprogram :ieee:math_real:sin */
405 floatingpoint L4ieee_Q9math_real_Y3sin_i59(const floatingpoint );
406 /* Prototype for subprogram :ieee:math_real:cos */
407 floatingpoint L4ieee_Q9math_real_Y3cos_i61(const floatingpoint );
408 /* Prototype for subprogram :ieee:math_real:tan */
409 floatingpoint L4ieee_Q9math_real_Y3tan_i63(const floatingpoint );
410 /* Prototype for subprogram :ieee:math_real:asin */
411 floatingpoint L4ieee_Q9math_real_Y4asin_i65(const floatingpoint );
412 /* Prototype for subprogram :ieee:math_real:acos */
413 floatingpoint L4ieee_Q9math_real_Y4acos_i67(const floatingpoint );
414 /* Prototype for subprogram :ieee:math_real:atan */
415 floatingpoint L4ieee_Q9math_real_Y4atan_i69(const floatingpoint );
416 /* Prototype for subprogram :ieee:math_real:atan2 */
417 floatingpoint L4ieee_Q9math_real_Y5atan2_i72(const floatingpoint ,const floatingpoint );
418 /* Prototype for subprogram :ieee:math_real:sinh */
419 floatingpoint L4ieee_Q9math_real_Y4sinh_i74(const floatingpoint );
420 /* Prototype for subprogram :ieee:math_real:cosh */
421 floatingpoint L4ieee_Q9math_real_Y4cosh_i76(const floatingpoint );
422 /* Prototype for subprogram :ieee:math_real:tanh */
423 floatingpoint L4ieee_Q9math_real_Y4tanh_i78(const floatingpoint );
424 /* Prototype for subprogram :ieee:math_real:asinh */
425 floatingpoint L4ieee_Q9math_real_Y5asinh_i80(const floatingpoint );
426 /* Prototype for subprogram :ieee:math_real:acosh */
427 floatingpoint L4ieee_Q9math_real_Y5acosh_i82(const floatingpoint );
428 /* Prototype for subprogram :ieee:math_real:atanh */
429 floatingpoint L4ieee_Q9math_real_Y5atanh_i84(const floatingpoint );
430 floatingpoint L4ieee_W9math_real_C4q_pi,L4ieee_W9math_real_C7half_pi,L4ieee_W9math_real_C6two_pi;
431 integer L4ieee_W9math_real_C8max_iter;
432 floatingpoint L4ieee_W9math_real_C2kc;
433 L4ieee_W9math_real_T11real_vector L4ieee_W9math_real_C12two_at_minus;
434 L4ieee_W9math_real_T13real_vector_n L4ieee_W9math_real_C7epsilon;
435 L4ieee_W9math_real_I11real_vector L4ieee_W9math_real_I11real_vector_INFO;
436 L4ieee_W9math_real_I14natural_vector L4ieee_W9math_real_I14natural_vector_INFO;
437 L4ieee_W9math_real_I13real_vector_n L4ieee_W9math_real_I13real_vector_n_INFO;
438 L4ieee_W9math_real_I10real_arr_2 L4ieee_W9math_real_I10real_arr_2_INFO;
439 L4ieee_W9math_real_I10real_arr_3 L4ieee_W9math_real_I10real_arr_3_INFO;
440 L4ieee_W9math_real_I8quadrant L4ieee_W9math_real_I8quadrant_INFO;
441 /* Implementation of enumeration type :ieee:math_real:cordic_mode_type */
442 const char *L4ieee_W9math_real_I16cordic_mode_type::values[]={"ROTATION","VECTORING"};
443 L4ieee_W9math_real_I16cordic_mode_type L4ieee_W9math_real_I16cordic_mode_type_INFO;
444 /* Implementation of subprogram :ieee:math_real:power_of_2_series */
L4ieee_W9math_real_Y17power_of_2_series_i44(const L4ieee_W9math_real_T14natural_vector & L4ieee_W9math_real_Y17power_of_2_series_i44_C1d,const floatingpoint L4ieee_W9math_real_Y17power_of_2_series_i44_C13initial_value,const integer L4ieee_W9math_real_Y17power_of_2_series_i44_C16number_of_values)445 L4ieee_W9math_real_T11real_vector L4ieee_W9math_real_Y17power_of_2_series_i44(const L4ieee_W9math_real_T14natural_vector &L4ieee_W9math_real_Y17power_of_2_series_i44_C1d,const floatingpoint L4ieee_W9math_real_Y17power_of_2_series_i44_C13initial_value,const integer L4ieee_W9math_real_Y17power_of_2_series_i44_C16number_of_values)
446 {
447 L4ieee_W9math_real_T11real_vector L4ieee_W9math_real_Y17power_of_2_series_i44_V1v;
448 floatingpoint L4ieee_W9math_real_Y17power_of_2_series_i44_V4temp;
449 enumeration L4ieee_W9math_real_Y17power_of_2_series_i44_V4flag;
450 integer L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i_lc,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_lc,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_ls;
451 L4ieee_W9math_real_Y17power_of_2_series_i44_V1v.init((new array_info((&L4ieee_W9math_real_I11real_vector_INFO)->element_type,(&L4ieee_W9math_real_I11real_vector_INFO)->index_type,0,to,L4ieee_W9math_real_Y17power_of_2_series_i44_C16number_of_values,0)),-9.9999999999999998603e+306);
452 L4ieee_W9math_real_Y17power_of_2_series_i44_V4temp=L4ieee_W9math_real_Y17power_of_2_series_i44_C13initial_value;
453 L4ieee_W9math_real_Y17power_of_2_series_i44_V4flag=enumeration(1);
454 for (L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i=0,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i_lc=up_range_to_length<integer>(0,L4ieee_W9math_real_Y17power_of_2_series_i44_C16number_of_values); L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i_lc!=0; L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i++,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i_lc--) {
455 L4ieee_W9math_real_Y17power_of_2_series_i44_V1v[L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i]=L4ieee_W9math_real_Y17power_of_2_series_i44_V4temp;
456 for (L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p=L4ieee_W9math_real_Y17power_of_2_series_i44_C1d.info->left_bound,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_ls=L4ieee_W9math_real_Y17power_of_2_series_i44_C1d.info->index_direction==to?+1:-1,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_lc=range_to_length<integer>(L4ieee_W9math_real_Y17power_of_2_series_i44_C1d.info->left_bound,L4ieee_W9math_real_Y17power_of_2_series_i44_C1d.info->index_direction,L4ieee_W9math_real_Y17power_of_2_series_i44_C1d.info->right_bound);L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_lc!=0; L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p+=L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_ls,L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p_lc--) {
457 if((L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_C1i==L4ieee_W9math_real_Y17power_of_2_series_i44_C1d[L4ieee_W9math_real_Y17power_of_2_series_i44_L448ln_L450ln_C1p])) {
458 L4ieee_W9math_real_Y17power_of_2_series_i44_V4flag=enumeration(0);
459 }
460 }
461 if(L4ieee_W9math_real_Y17power_of_2_series_i44_V4flag) {
462 L4ieee_W9math_real_Y17power_of_2_series_i44_V4temp=(L4ieee_W9math_real_Y17power_of_2_series_i44_V4temp/2.0);
463 }
464 L4ieee_W9math_real_Y17power_of_2_series_i44_V4flag=enumeration(1);
465 }
466 return array_alias<L4ieee_W9math_real_T11real_vector >((&L4ieee_W9math_real_I11real_vector_INFO),L4ieee_W9math_real_Y17power_of_2_series_i44_V1v);
467 }
468 /* Implementation of subprogram :ieee:math_real:cordic */
L4ieee_W9math_real_Y6cordic_i59(const floatingpoint L4ieee_W9math_real_Y6cordic_i59_C2x0,const floatingpoint L4ieee_W9math_real_Y6cordic_i59_C2y0,const floatingpoint L4ieee_W9math_real_Y6cordic_i59_C2z0,const integer L4ieee_W9math_real_Y6cordic_i59_C1n,const enumeration L4ieee_W9math_real_Y6cordic_i59_C11cordic_mode)469 L4ieee_W9math_real_T10real_arr_3 L4ieee_W9math_real_Y6cordic_i59(const floatingpoint L4ieee_W9math_real_Y6cordic_i59_C2x0,const floatingpoint L4ieee_W9math_real_Y6cordic_i59_C2y0,const floatingpoint L4ieee_W9math_real_Y6cordic_i59_C2z0,const integer L4ieee_W9math_real_Y6cordic_i59_C1n,const enumeration L4ieee_W9math_real_Y6cordic_i59_C11cordic_mode)
470 {
471 floatingpoint L4ieee_W9math_real_Y6cordic_i59_V1x,L4ieee_W9math_real_Y6cordic_i59_V1y,L4ieee_W9math_real_Y6cordic_i59_V1z,L4ieee_W9math_real_Y6cordic_i59_V6x_temp;
472 integer L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k,L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k_lc,L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k,L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k_lc;
473 L4ieee_W9math_real_Y6cordic_i59_V1x=L4ieee_W9math_real_Y6cordic_i59_C2x0;
474 L4ieee_W9math_real_Y6cordic_i59_V1y=L4ieee_W9math_real_Y6cordic_i59_C2y0;
475 L4ieee_W9math_real_Y6cordic_i59_V1z=L4ieee_W9math_real_Y6cordic_i59_C2z0;
476 L4ieee_W9math_real_Y6cordic_i59_V6x_temp=-9.9999999999999998603e+306;
477 if((L4ieee_W9math_real_Y6cordic_i59_C11cordic_mode==enumeration(0))) {
478 for (L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k=0,L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k_lc=up_range_to_length<integer>(0,L4ieee_W9math_real_Y6cordic_i59_C1n); L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k_lc!=0; L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k++,L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k_lc--) {
479 L4ieee_W9math_real_Y6cordic_i59_V6x_temp=L4ieee_W9math_real_Y6cordic_i59_V1x;
480 if((L4ieee_W9math_real_Y6cordic_i59_V1z>=0.0)) {
481 L4ieee_W9math_real_Y6cordic_i59_V1x=(L4ieee_W9math_real_Y6cordic_i59_V1x-(L4ieee_W9math_real_Y6cordic_i59_V1y*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k]));
482 L4ieee_W9math_real_Y6cordic_i59_V1y=(L4ieee_W9math_real_Y6cordic_i59_V1y+(L4ieee_W9math_real_Y6cordic_i59_V6x_temp*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k]));
483 L4ieee_W9math_real_Y6cordic_i59_V1z=(L4ieee_W9math_real_Y6cordic_i59_V1z-L4ieee_W9math_real_C7epsilon[L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k]);
484 } else {
485 L4ieee_W9math_real_Y6cordic_i59_V1x=(L4ieee_W9math_real_Y6cordic_i59_V1x+(L4ieee_W9math_real_Y6cordic_i59_V1y*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k]));
486 L4ieee_W9math_real_Y6cordic_i59_V1y=(L4ieee_W9math_real_Y6cordic_i59_V1y-(L4ieee_W9math_real_Y6cordic_i59_V6x_temp*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k]));
487 L4ieee_W9math_real_Y6cordic_i59_V1z=(L4ieee_W9math_real_Y6cordic_i59_V1z+L4ieee_W9math_real_C7epsilon[L4ieee_W9math_real_Y6cordic_i59_L464ln_C1k]);
488 }
489 }
490 } else {
491 for (L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k=0,L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k_lc=up_range_to_length<integer>(0,L4ieee_W9math_real_Y6cordic_i59_C1n); L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k_lc!=0; L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k++,L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k_lc--) {
492 L4ieee_W9math_real_Y6cordic_i59_V6x_temp=L4ieee_W9math_real_Y6cordic_i59_V1x;
493 if((L4ieee_W9math_real_Y6cordic_i59_V1y<0.0)) {
494 L4ieee_W9math_real_Y6cordic_i59_V1x=(L4ieee_W9math_real_Y6cordic_i59_V1x-(L4ieee_W9math_real_Y6cordic_i59_V1y*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k]));
495 L4ieee_W9math_real_Y6cordic_i59_V1y=(L4ieee_W9math_real_Y6cordic_i59_V1y+(L4ieee_W9math_real_Y6cordic_i59_V6x_temp*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k]));
496 L4ieee_W9math_real_Y6cordic_i59_V1z=(L4ieee_W9math_real_Y6cordic_i59_V1z-L4ieee_W9math_real_C7epsilon[L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k]);
497 } else {
498 L4ieee_W9math_real_Y6cordic_i59_V1x=(L4ieee_W9math_real_Y6cordic_i59_V1x+(L4ieee_W9math_real_Y6cordic_i59_V1y*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k]));
499 L4ieee_W9math_real_Y6cordic_i59_V1y=(L4ieee_W9math_real_Y6cordic_i59_V1y-(L4ieee_W9math_real_Y6cordic_i59_V6x_temp*L4ieee_W9math_real_C12two_at_minus[L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k]));
500 L4ieee_W9math_real_Y6cordic_i59_V1z=(L4ieee_W9math_real_Y6cordic_i59_V1z+L4ieee_W9math_real_C7epsilon[L4ieee_W9math_real_Y6cordic_i59_L466ln_C1k]);
501 }
502 }
503 }
504 return array_alias<L4ieee_W9math_real_T11real_vector >((&L4ieee_W9math_real_I10real_arr_3_INFO),(L4ieee_W9math_real_T10real_arr_3(new array_info((&L4ieee_W9math_real_I10real_arr_3_INFO)->element_type,(&L4ieee_W9math_real_I10real_arr_3_INFO)->index_type,0,to,0+2,0),L4ieee_W9math_real_Y6cordic_i59_V1x).aggregate_set(0+1,to,0+1,L4ieee_W9math_real_Y6cordic_i59_V1y).aggregate_set(0+2,to,0+2,L4ieee_W9math_real_Y6cordic_i59_V1z)).data);
505 }
506 /* Implementation of subprogram :ieee:math_real:sign */
L4ieee_Q9math_real_Y4sign_i20(const floatingpoint L4ieee_Q9math_real_Y4sign_i20_C1x)507 floatingpoint L4ieee_Q9math_real_Y4sign_i20(const floatingpoint L4ieee_Q9math_real_Y4sign_i20_C1x)
508 {
509 if((L4ieee_Q9math_real_Y4sign_i20_C1x>0.0)) {
510 return 1.0;
511 } else {
512 if((L4ieee_Q9math_real_Y4sign_i20_C1x<0.0)) {
513 return -1.0000000000000000000;
514 } else {
515 return 0.0;
516 }
517 }
518 }
519 L4ieee_Q9math_real_Y4ceil_i22_I4long L4ieee_Q9math_real_Y4ceil_i22_I4long_INFO;
520 /* Implementation of subprogram :ieee:math_real:ceil */
L4ieee_Q9math_real_Y4ceil_i22(const floatingpoint L4ieee_Q9math_real_Y4ceil_i22_C1x)521 floatingpoint L4ieee_Q9math_real_Y4ceil_i22(const floatingpoint L4ieee_Q9math_real_Y4ceil_i22_C1x)
522 {
523 floatingpoint L4ieee_Q9math_real_Y4ceil_i22_V5large,L4ieee_Q9math_real_Y4ceil_i22_V2rd;
524 L4ieee_Q9math_real_Y4ceil_i22_V5large=1073741824.0;
525 L4ieee_Q9math_real_Y4ceil_i22_V2rd=-9.9999999999999998603e+306;
526 if((op_abs(L4ieee_Q9math_real_Y4ceil_i22_C1x)>=L4ieee_Q9math_real_Y4ceil_i22_V5large)) {
527 return L4ieee_Q9math_real_Y4ceil_i22_C1x;
528 } else {
529 L4ieee_Q9math_real_Y4ceil_i22_V2rd=floatingpoint(integer(rint(L4ieee_Q9math_real_Y4ceil_i22_C1x)));
530 if((L4ieee_Q9math_real_Y4ceil_i22_C1x>0.0)) {
531 if((L4ieee_Q9math_real_Y4ceil_i22_V2rd>=L4ieee_Q9math_real_Y4ceil_i22_C1x)) {
532 return L4ieee_Q9math_real_Y4ceil_i22_V2rd;
533 } else {
534 return (L4ieee_Q9math_real_Y4ceil_i22_V2rd+1.0);
535 }
536 } else {
537 if((L4ieee_Q9math_real_Y4ceil_i22_C1x==0.0)) {
538 return 0.0;
539 } else {
540 if((L4ieee_Q9math_real_Y4ceil_i22_V2rd<=L4ieee_Q9math_real_Y4ceil_i22_C1x)) {
541 return L4ieee_Q9math_real_Y4ceil_i22_V2rd;
542 } else {
543 return (L4ieee_Q9math_real_Y4ceil_i22_V2rd-1.0);
544 }
545 }
546 }
547 }
548 }
549 L4ieee_Q9math_real_Y5floor_i24_I4long L4ieee_Q9math_real_Y5floor_i24_I4long_INFO;
550 /* Implementation of subprogram :ieee:math_real:floor */
L4ieee_Q9math_real_Y5floor_i24(const floatingpoint L4ieee_Q9math_real_Y5floor_i24_C1x)551 floatingpoint L4ieee_Q9math_real_Y5floor_i24(const floatingpoint L4ieee_Q9math_real_Y5floor_i24_C1x)
552 {
553 floatingpoint L4ieee_Q9math_real_Y5floor_i24_V5large,L4ieee_Q9math_real_Y5floor_i24_V2rd;
554 L4ieee_Q9math_real_Y5floor_i24_V5large=1073741824.0;
555 L4ieee_Q9math_real_Y5floor_i24_V2rd=-9.9999999999999998603e+306;
556 if((op_abs(L4ieee_Q9math_real_Y5floor_i24_C1x)>=L4ieee_Q9math_real_Y5floor_i24_V5large)) {
557 return L4ieee_Q9math_real_Y5floor_i24_C1x;
558 } else {
559 L4ieee_Q9math_real_Y5floor_i24_V2rd=floatingpoint(integer(rint(L4ieee_Q9math_real_Y5floor_i24_C1x)));
560 if((L4ieee_Q9math_real_Y5floor_i24_C1x>0.0)) {
561 if((L4ieee_Q9math_real_Y5floor_i24_V2rd<=L4ieee_Q9math_real_Y5floor_i24_C1x)) {
562 return L4ieee_Q9math_real_Y5floor_i24_V2rd;
563 } else {
564 return (L4ieee_Q9math_real_Y5floor_i24_V2rd-1.0);
565 }
566 } else {
567 if((L4ieee_Q9math_real_Y5floor_i24_C1x==0.0)) {
568 return 0.0;
569 } else {
570 if((L4ieee_Q9math_real_Y5floor_i24_V2rd>=L4ieee_Q9math_real_Y5floor_i24_C1x)) {
571 return L4ieee_Q9math_real_Y5floor_i24_V2rd;
572 } else {
573 return (L4ieee_Q9math_real_Y5floor_i24_V2rd+1.0);
574 }
575 }
576 }
577 }
578 }
579 /* Implementation of subprogram :ieee:math_real:round */
L4ieee_Q9math_real_Y5round_i26(const floatingpoint L4ieee_Q9math_real_Y5round_i26_C1x)580 floatingpoint L4ieee_Q9math_real_Y5round_i26(const floatingpoint L4ieee_Q9math_real_Y5round_i26_C1x)
581 {
582 if((L4ieee_Q9math_real_Y5round_i26_C1x>0.0)) {
583 return L4ieee_Q9math_real_Y5floor_i24 ((L4ieee_Q9math_real_Y5round_i26_C1x+0.5));
584 } else {
585 if((L4ieee_Q9math_real_Y5round_i26_C1x<0.0)) {
586 return L4ieee_Q9math_real_Y4ceil_i22 ((L4ieee_Q9math_real_Y5round_i26_C1x-0.5));
587 } else {
588 return 0.0;
589 }
590 }
591 }
592 /* Implementation of subprogram :ieee:math_real:fmax */
L4ieee_Q9math_real_Y4fmax_i29(const floatingpoint L4ieee_Q9math_real_Y4fmax_i29_C1x,const floatingpoint L4ieee_Q9math_real_Y4fmax_i29_C1y)593 floatingpoint L4ieee_Q9math_real_Y4fmax_i29(const floatingpoint L4ieee_Q9math_real_Y4fmax_i29_C1x,const floatingpoint L4ieee_Q9math_real_Y4fmax_i29_C1y)
594 {
595 if((L4ieee_Q9math_real_Y4fmax_i29_C1x>L4ieee_Q9math_real_Y4fmax_i29_C1y)) {
596 return L4ieee_Q9math_real_Y4fmax_i29_C1x;
597 } else {
598 return L4ieee_Q9math_real_Y4fmax_i29_C1y;
599 }
600 }
601 /* Implementation of subprogram :ieee:math_real:fmin */
L4ieee_Q9math_real_Y4fmin_i32(const floatingpoint L4ieee_Q9math_real_Y4fmin_i32_C1x,const floatingpoint L4ieee_Q9math_real_Y4fmin_i32_C1y)602 floatingpoint L4ieee_Q9math_real_Y4fmin_i32(const floatingpoint L4ieee_Q9math_real_Y4fmin_i32_C1x,const floatingpoint L4ieee_Q9math_real_Y4fmin_i32_C1y)
603 {
604 if((L4ieee_Q9math_real_Y4fmin_i32_C1x<L4ieee_Q9math_real_Y4fmin_i32_C1y)) {
605 return L4ieee_Q9math_real_Y4fmin_i32_C1x;
606 } else {
607 return L4ieee_Q9math_real_Y4fmin_i32_C1y;
608 }
609 }
610 /* Implementation of subprogram :ieee:math_real:uniform */
L4ieee_Q9math_real_X7uniform_i36(integer & L4ieee_Q9math_real_X7uniform_i36_V5seed1_PAR,integer & L4ieee_Q9math_real_X7uniform_i36_V5seed2_PAR,floatingpoint & L4ieee_Q9math_real_X7uniform_i36_V1x_PAR)611 void L4ieee_Q9math_real_X7uniform_i36(integer &L4ieee_Q9math_real_X7uniform_i36_V5seed1_PAR,integer &L4ieee_Q9math_real_X7uniform_i36_V5seed2_PAR,floatingpoint &L4ieee_Q9math_real_X7uniform_i36_V1x_PAR)
612 {
613 integer L4ieee_Q9math_real_X7uniform_i36_V5seed1=L4ieee_Q9math_real_X7uniform_i36_V5seed1_PAR;
614 integer L4ieee_Q9math_real_X7uniform_i36_V5seed2=L4ieee_Q9math_real_X7uniform_i36_V5seed2_PAR;
615 floatingpoint L4ieee_Q9math_real_X7uniform_i36_V1x;
616 integer L4ieee_Q9math_real_X7uniform_i36_V1k,L4ieee_Q9math_real_X7uniform_i36_V1z;
617 L4ieee_Q9math_real_X7uniform_i36_V1k=-2147483648LL;
618 L4ieee_Q9math_real_X7uniform_i36_V1z=-2147483648LL;
619 L4ieee_Q9math_real_X7uniform_i36_V1k=(L4ieee_Q9math_real_X7uniform_i36_V5seed1/53668);
620 L4ieee_Q9math_real_X7uniform_i36_V5seed1=((40014*(L4ieee_Q9math_real_X7uniform_i36_V5seed1-(L4ieee_Q9math_real_X7uniform_i36_V1k*53668)))-(L4ieee_Q9math_real_X7uniform_i36_V1k*12211));
621 if((L4ieee_Q9math_real_X7uniform_i36_V5seed1<0)) {
622 L4ieee_Q9math_real_X7uniform_i36_V5seed1=(L4ieee_Q9math_real_X7uniform_i36_V5seed1+2147483563);
623 }
624 L4ieee_Q9math_real_X7uniform_i36_V1k=(L4ieee_Q9math_real_X7uniform_i36_V5seed2/52774);
625 L4ieee_Q9math_real_X7uniform_i36_V5seed2=((40692*(L4ieee_Q9math_real_X7uniform_i36_V5seed2-(L4ieee_Q9math_real_X7uniform_i36_V1k*52774)))-(L4ieee_Q9math_real_X7uniform_i36_V1k*3791));
626 if((L4ieee_Q9math_real_X7uniform_i36_V5seed2<0)) {
627 L4ieee_Q9math_real_X7uniform_i36_V5seed2=(L4ieee_Q9math_real_X7uniform_i36_V5seed2+2147483399);
628 }
629 L4ieee_Q9math_real_X7uniform_i36_V1z=(L4ieee_Q9math_real_X7uniform_i36_V5seed1-L4ieee_Q9math_real_X7uniform_i36_V5seed2);
630 if((L4ieee_Q9math_real_X7uniform_i36_V1z<1)) {
631 L4ieee_Q9math_real_X7uniform_i36_V1z=(L4ieee_Q9math_real_X7uniform_i36_V1z+2147483562);
632 }
633 L4ieee_Q9math_real_X7uniform_i36_V1x=(floatingpoint(L4ieee_Q9math_real_X7uniform_i36_V1z)*4.656613e-10);
634 rlabel:
635 L4ieee_Q9math_real_X7uniform_i36_V5seed1_PAR=L4ieee_Q9math_real_X7uniform_i36_V5seed1;
636 L4ieee_Q9math_real_X7uniform_i36_V5seed2_PAR=L4ieee_Q9math_real_X7uniform_i36_V5seed2;
637 L4ieee_Q9math_real_X7uniform_i36_V1x_PAR=L4ieee_Q9math_real_X7uniform_i36_V1x;
638 return;
639 }
640 /* Implementation of subprogram :ieee:math_real:srand */
L4ieee_Q9math_real_Y5srand_i38(const integer L4ieee_Q9math_real_Y5srand_i38_C4seed)641 integer L4ieee_Q9math_real_Y5srand_i38(const integer L4ieee_Q9math_real_Y5srand_i38_C4seed)
642 {
643 /* NullStat impl */;
644 }
645 /* Implementation of subprogram :ieee:math_real:rand */
L4ieee_Q9math_real_Y4rand_i39()646 integer L4ieee_Q9math_real_Y4rand_i39()
647 {
648 /* NullStat impl */;
649 }
650 /* Implementation of subprogram :ieee:math_real:get_rand_max */
L4ieee_Q9math_real_Y12get_rand_max_i40()651 integer L4ieee_Q9math_real_Y12get_rand_max_i40()
652 {
653 /* NullStat impl */;
654 }
655 enumeration L4ieee_W9math_real_itn8_lit[]={88,32,60,32,48,32,105,110,32,83,81,82,84,40,88,41};
656 /* Implementation of subprogram :ieee:math_real:sqrt */
L4ieee_Q9math_real_Y4sqrt_i42(const floatingpoint L4ieee_Q9math_real_Y4sqrt_i42_C1x)657 floatingpoint L4ieee_Q9math_real_Y4sqrt_i42(const floatingpoint L4ieee_Q9math_real_Y4sqrt_i42_C1x)
658 {
659 floatingpoint L4ieee_Q9math_real_Y4sqrt_i42_C6inival,L4ieee_Q9math_real_Y4sqrt_i42_C3eps,L4ieee_Q9math_real_Y4sqrt_i42_C12relative_err,L4ieee_Q9math_real_Y4sqrt_i42_V6oldval,L4ieee_Q9math_real_Y4sqrt_i42_V6newval;
660 L4ieee_Q9math_real_Y4sqrt_i42_C6inival=1.5;
661 L4ieee_Q9math_real_Y4sqrt_i42_C3eps=0.000001;
662 L4ieee_Q9math_real_Y4sqrt_i42_C12relative_err=(9.9999999999999995475e-07*L4ieee_Q9math_real_Y4sqrt_i42_C1x);
663 L4ieee_Q9math_real_Y4sqrt_i42_V6oldval=-9.9999999999999998603e+306;
664 L4ieee_Q9math_real_Y4sqrt_i42_V6newval=-9.9999999999999998603e+306;
665 if((L4ieee_Q9math_real_Y4sqrt_i42_C1x<0.0)) {
666 if(!enumeration(0))
667 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+15,0),L4ieee_W9math_real_itn8_lit),enumeration(2));
668 return 0.0;
669 }
670 if((L4ieee_Q9math_real_Y4sqrt_i42_C1x==0.0)) {
671 return 0.0;
672 } else {
673 if((L4ieee_Q9math_real_Y4sqrt_i42_C1x==1.0)) {
674 return 1.0;
675 }
676 }
677 L4ieee_Q9math_real_Y4sqrt_i42_V6oldval=1.5000000000000000000;
678 L4ieee_Q9math_real_Y4sqrt_i42_V6newval=(((L4ieee_Q9math_real_Y4sqrt_i42_C1x/L4ieee_Q9math_real_Y4sqrt_i42_V6oldval)+L4ieee_Q9math_real_Y4sqrt_i42_V6oldval)/2.0);
679 while((op_abs((L4ieee_Q9math_real_Y4sqrt_i42_V6newval-L4ieee_Q9math_real_Y4sqrt_i42_V6oldval))>L4ieee_Q9math_real_Y4sqrt_i42_C12relative_err)) {
680 L4ieee_Q9math_real_Y4sqrt_i42_V6oldval=L4ieee_Q9math_real_Y4sqrt_i42_V6newval;
681 L4ieee_Q9math_real_Y4sqrt_i42_V6newval=(((L4ieee_Q9math_real_Y4sqrt_i42_C1x/L4ieee_Q9math_real_Y4sqrt_i42_V6oldval)+L4ieee_Q9math_real_Y4sqrt_i42_V6oldval)/2.0);
682 }
683 return L4ieee_Q9math_real_Y4sqrt_i42_V6newval;
684 }
685 /* Implementation of subprogram :ieee:math_real:cbrt */
L4ieee_Q9math_real_Y4cbrt_i44(const floatingpoint L4ieee_Q9math_real_Y4cbrt_i44_C1x)686 floatingpoint L4ieee_Q9math_real_Y4cbrt_i44(const floatingpoint L4ieee_Q9math_real_Y4cbrt_i44_C1x)
687 {
688 floatingpoint L4ieee_Q9math_real_Y4cbrt_i44_C6inival,L4ieee_Q9math_real_Y4cbrt_i44_C3eps,L4ieee_Q9math_real_Y4cbrt_i44_C12relative_err,L4ieee_Q9math_real_Y4cbrt_i44_V6xlocal;
689 enumeration L4ieee_Q9math_real_Y4cbrt_i44_V8negative;
690 floatingpoint L4ieee_Q9math_real_Y4cbrt_i44_V6oldval,L4ieee_Q9math_real_Y4cbrt_i44_V6newval;
691 L4ieee_Q9math_real_Y4cbrt_i44_C6inival=1.5;
692 L4ieee_Q9math_real_Y4cbrt_i44_C3eps=0.000001;
693 L4ieee_Q9math_real_Y4cbrt_i44_C12relative_err=(9.9999999999999995475e-07*op_abs(L4ieee_Q9math_real_Y4cbrt_i44_C1x));
694 L4ieee_Q9math_real_Y4cbrt_i44_V6xlocal=L4ieee_Q9math_real_Y4cbrt_i44_C1x;
695 L4ieee_Q9math_real_Y4cbrt_i44_V8negative=(L4ieee_Q9math_real_Y4cbrt_i44_C1x<0.0);
696 L4ieee_Q9math_real_Y4cbrt_i44_V6oldval=-9.9999999999999998603e+306;
697 L4ieee_Q9math_real_Y4cbrt_i44_V6newval=-9.9999999999999998603e+306;
698 if((L4ieee_Q9math_real_Y4cbrt_i44_C1x==0.0)) {
699 return 0.0;
700 } else {
701 if((L4ieee_Q9math_real_Y4cbrt_i44_C1x==1.0)) {
702 return 1.0;
703 } else {
704 if((L4ieee_Q9math_real_Y4cbrt_i44_C1x==-1.0000000000000000000)) {
705 return -1.0000000000000000000;
706 }
707 }
708 }
709 if(L4ieee_Q9math_real_Y4cbrt_i44_V8negative) {
710 L4ieee_Q9math_real_Y4cbrt_i44_V6xlocal=(-L4ieee_Q9math_real_Y4cbrt_i44_C1x);
711 }
712 L4ieee_Q9math_real_Y4cbrt_i44_V6oldval=1.5000000000000000000;
713 L4ieee_Q9math_real_Y4cbrt_i44_V6newval=(((L4ieee_Q9math_real_Y4cbrt_i44_V6xlocal/(L4ieee_Q9math_real_Y4cbrt_i44_V6oldval*L4ieee_Q9math_real_Y4cbrt_i44_V6oldval))+(2.0*L4ieee_Q9math_real_Y4cbrt_i44_V6oldval))/3.0);
714 while((op_abs((L4ieee_Q9math_real_Y4cbrt_i44_V6newval-L4ieee_Q9math_real_Y4cbrt_i44_V6oldval))>L4ieee_Q9math_real_Y4cbrt_i44_C12relative_err)) {
715 L4ieee_Q9math_real_Y4cbrt_i44_V6oldval=L4ieee_Q9math_real_Y4cbrt_i44_V6newval;
716 L4ieee_Q9math_real_Y4cbrt_i44_V6newval=(((L4ieee_Q9math_real_Y4cbrt_i44_V6xlocal/(L4ieee_Q9math_real_Y4cbrt_i44_V6oldval*L4ieee_Q9math_real_Y4cbrt_i44_V6oldval))+(2.0*L4ieee_Q9math_real_Y4cbrt_i44_V6oldval))/3.0);
717 }
718 if(L4ieee_Q9math_real_Y4cbrt_i44_V8negative) {
719 L4ieee_Q9math_real_Y4cbrt_i44_V6newval=(-L4ieee_Q9math_real_Y4cbrt_i44_V6newval);
720 }
721 return L4ieee_Q9math_real_Y4cbrt_i44_V6newval;
722 }
723 enumeration L4ieee_W9math_real_itn9_lit[]={88,32,61,32,48,32,97,110,100,32,89,32,60,61,32,48,46,48,32,105,110,32,88,42,42,89};
724 enumeration L4ieee_W9math_real_itn10_lit[]={88,32,60,32,48,32,97,110,100,32,89,32,92,61,32,105,110,116,101,103,101,114,32,105,110,32,88,42,42,89};
725 /* Implementation of subprogram :ieee:math_real:"**" */
L4ieee_Q9math_real_Y8op_power_i47(const integer L4ieee_Q9math_real_Y8op_power_i47_C1x,const floatingpoint L4ieee_Q9math_real_Y8op_power_i47_C1y)726 floatingpoint L4ieee_Q9math_real_Y8op_power_i47(const integer L4ieee_Q9math_real_Y8op_power_i47_C1x,const floatingpoint L4ieee_Q9math_real_Y8op_power_i47_C1y)
727 {
728 if(((L4ieee_Q9math_real_Y8op_power_i47_C1x==0)&&(L4ieee_Q9math_real_Y8op_power_i47_C1y<=0.0))) {
729 if(!enumeration(0))
730 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+25,0),L4ieee_W9math_real_itn9_lit),enumeration(2));
731 return 0.0;
732 }
733 if(((L4ieee_Q9math_real_Y8op_power_i47_C1x<0)&&(L4ieee_Q9math_real_Y8op_power_i47_C1y!=floatingpoint(integer(rint(L4ieee_Q9math_real_Y8op_power_i47_C1y)))))) {
734 if(!enumeration(0))
735 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W9math_real_itn10_lit),enumeration(2));
736 return 0.0;
737 }
738 return L4ieee_Q9math_real_Y3exp_i52 ((L4ieee_Q9math_real_Y8op_power_i47_C1y*L4ieee_Q9math_real_Y3log_i54 (floatingpoint(L4ieee_Q9math_real_Y8op_power_i47_C1x))));
739 }
740 enumeration L4ieee_W9math_real_itn11_lit[]={88,32,61,32,48,46,48,32,97,110,100,32,89,32,60,61,32,48,46,48,32,105,110,32,88,42,42,89};
741 enumeration L4ieee_W9math_real_itn12_lit[]={88,32,60,32,48,46,48,32,97,110,100,32,89,32,92,61,32,105,110,116,101,103,101,114,32,105,110,32,88,42,42,89};
742 /* Implementation of subprogram :ieee:math_real:"**" */
L4ieee_Q9math_real_Y8op_power_i50(const floatingpoint L4ieee_Q9math_real_Y8op_power_i50_C1x,const floatingpoint L4ieee_Q9math_real_Y8op_power_i50_C1y)743 floatingpoint L4ieee_Q9math_real_Y8op_power_i50(const floatingpoint L4ieee_Q9math_real_Y8op_power_i50_C1x,const floatingpoint L4ieee_Q9math_real_Y8op_power_i50_C1y)
744 {
745 if(((L4ieee_Q9math_real_Y8op_power_i50_C1x==0.0)&&(L4ieee_Q9math_real_Y8op_power_i50_C1y<=0.0))) {
746 if(!enumeration(0))
747 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+27,0),L4ieee_W9math_real_itn11_lit),enumeration(2));
748 return 0.0;
749 }
750 if(((L4ieee_Q9math_real_Y8op_power_i50_C1x<0.0)&&(L4ieee_Q9math_real_Y8op_power_i50_C1y!=floatingpoint(integer(rint(L4ieee_Q9math_real_Y8op_power_i50_C1y)))))) {
751 if(!enumeration(0))
752 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+31,0),L4ieee_W9math_real_itn12_lit),enumeration(2));
753 return 0.0;
754 }
755 return L4ieee_Q9math_real_Y3exp_i52 ((L4ieee_Q9math_real_Y8op_power_i50_C1y*L4ieee_Q9math_real_Y3log_i54 (L4ieee_Q9math_real_Y8op_power_i50_C1x)));
756 }
757 /* Implementation of subprogram :ieee:math_real:exp */
L4ieee_Q9math_real_Y3exp_i52(const floatingpoint L4ieee_Q9math_real_Y3exp_i52_C1x)758 floatingpoint L4ieee_Q9math_real_Y3exp_i52(const floatingpoint L4ieee_Q9math_real_Y3exp_i52_C1x)
759 {
760 floatingpoint L4ieee_Q9math_real_Y3exp_i52_C3eps;
761 enumeration L4ieee_Q9math_real_Y3exp_i52_V10reciprocal;
762 floatingpoint L4ieee_Q9math_real_Y3exp_i52_V6xlocal,L4ieee_Q9math_real_Y3exp_i52_V6oldval,L4ieee_Q9math_real_Y3exp_i52_V3num;
763 integer L4ieee_Q9math_real_Y3exp_i52_V5count;
764 floatingpoint L4ieee_Q9math_real_Y3exp_i52_V5denom,L4ieee_Q9math_real_Y3exp_i52_V6newval;
765 L4ieee_Q9math_real_Y3exp_i52_C3eps=0.000001;
766 L4ieee_Q9math_real_Y3exp_i52_V10reciprocal=(L4ieee_Q9math_real_Y3exp_i52_C1x<0.0);
767 L4ieee_Q9math_real_Y3exp_i52_V6xlocal=op_abs(L4ieee_Q9math_real_Y3exp_i52_C1x);
768 L4ieee_Q9math_real_Y3exp_i52_V6oldval=-9.9999999999999998603e+306;
769 L4ieee_Q9math_real_Y3exp_i52_V3num=-9.9999999999999998603e+306;
770 L4ieee_Q9math_real_Y3exp_i52_V5count=-2147483648LL;
771 L4ieee_Q9math_real_Y3exp_i52_V5denom=-9.9999999999999998603e+306;
772 L4ieee_Q9math_real_Y3exp_i52_V6newval=-9.9999999999999998603e+306;
773 if((L4ieee_Q9math_real_Y3exp_i52_C1x==0.0)) {
774 return 1.0;
775 } else {
776 if((L4ieee_Q9math_real_Y3exp_i52_C1x==1.0)) {
777 return 2.7182818284590450908;
778 }
779 }
780 L4ieee_Q9math_real_Y3exp_i52_V6oldval=1.0;
781 L4ieee_Q9math_real_Y3exp_i52_V3num=L4ieee_Q9math_real_Y3exp_i52_V6xlocal;
782 L4ieee_Q9math_real_Y3exp_i52_V5count=1;
783 L4ieee_Q9math_real_Y3exp_i52_V5denom=1.0;
784 L4ieee_Q9math_real_Y3exp_i52_V6newval=(L4ieee_Q9math_real_Y3exp_i52_V6oldval+(L4ieee_Q9math_real_Y3exp_i52_V3num/L4ieee_Q9math_real_Y3exp_i52_V5denom));
785 while((op_abs((L4ieee_Q9math_real_Y3exp_i52_V6newval-L4ieee_Q9math_real_Y3exp_i52_V6oldval))>9.9999999999999995475e-07)) {
786 L4ieee_Q9math_real_Y3exp_i52_V6oldval=L4ieee_Q9math_real_Y3exp_i52_V6newval;
787 L4ieee_Q9math_real_Y3exp_i52_V3num=(L4ieee_Q9math_real_Y3exp_i52_V3num*L4ieee_Q9math_real_Y3exp_i52_V6xlocal);
788 L4ieee_Q9math_real_Y3exp_i52_V5count=(L4ieee_Q9math_real_Y3exp_i52_V5count+1);
789 L4ieee_Q9math_real_Y3exp_i52_V5denom=(L4ieee_Q9math_real_Y3exp_i52_V5denom*floatingpoint(L4ieee_Q9math_real_Y3exp_i52_V5count));
790 L4ieee_Q9math_real_Y3exp_i52_V6newval=(L4ieee_Q9math_real_Y3exp_i52_V6oldval+(L4ieee_Q9math_real_Y3exp_i52_V3num/L4ieee_Q9math_real_Y3exp_i52_V5denom));
791 }
792 if(L4ieee_Q9math_real_Y3exp_i52_V10reciprocal) {
793 L4ieee_Q9math_real_Y3exp_i52_V6newval=(1.0/L4ieee_Q9math_real_Y3exp_i52_V6newval);
794 }
795 return L4ieee_Q9math_real_Y3exp_i52_V6newval;
796 }
797 enumeration L4ieee_W9math_real_itn13_lit[]={88,32,60,61,32,48,32,105,110,32,76,79,71,40,88,41};
798 /* Implementation of subprogram :ieee:math_real:log */
L4ieee_Q9math_real_Y3log_i54(const floatingpoint L4ieee_Q9math_real_Y3log_i54_C1x)799 floatingpoint L4ieee_Q9math_real_Y3log_i54(const floatingpoint L4ieee_Q9math_real_Y3log_i54_C1x)
800 {
801 floatingpoint L4ieee_Q9math_real_Y3log_i54_C3eps,L4ieee_Q9math_real_Y3log_i54_V6xlocal,L4ieee_Q9math_real_Y3log_i54_V6oldval,L4ieee_Q9math_real_Y3log_i54_V9xlocalsqr,L4ieee_Q9math_real_Y3log_i54_V6factor;
802 integer L4ieee_Q9math_real_Y3log_i54_V5count;
803 floatingpoint L4ieee_Q9math_real_Y3log_i54_V6newval;
804 L4ieee_Q9math_real_Y3log_i54_C3eps=0.000001;
805 L4ieee_Q9math_real_Y3log_i54_V6xlocal=-9.9999999999999998603e+306;
806 L4ieee_Q9math_real_Y3log_i54_V6oldval=-9.9999999999999998603e+306;
807 L4ieee_Q9math_real_Y3log_i54_V9xlocalsqr=-9.9999999999999998603e+306;
808 L4ieee_Q9math_real_Y3log_i54_V6factor=-9.9999999999999998603e+306;
809 L4ieee_Q9math_real_Y3log_i54_V5count=-2147483648LL;
810 L4ieee_Q9math_real_Y3log_i54_V6newval=-9.9999999999999998603e+306;
811 if((L4ieee_Q9math_real_Y3log_i54_C1x<=0.0)) {
812 if(!enumeration(0))
813 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+15,0),L4ieee_W9math_real_itn13_lit),enumeration(2));
814 return -9.9999999999999998603e+306;
815 }
816 if((L4ieee_Q9math_real_Y3log_i54_C1x==1.0)) {
817 return 0.0;
818 } else {
819 if((L4ieee_Q9math_real_Y3log_i54_C1x==2.7182818284590450908)) {
820 return 1.0;
821 }
822 }
823 L4ieee_Q9math_real_Y3log_i54_V6xlocal=((L4ieee_Q9math_real_Y3log_i54_C1x-1.0)/(L4ieee_Q9math_real_Y3log_i54_C1x+1.0));
824 L4ieee_Q9math_real_Y3log_i54_V6oldval=L4ieee_Q9math_real_Y3log_i54_V6xlocal;
825 L4ieee_Q9math_real_Y3log_i54_V9xlocalsqr=(L4ieee_Q9math_real_Y3log_i54_V6xlocal*L4ieee_Q9math_real_Y3log_i54_V6xlocal);
826 L4ieee_Q9math_real_Y3log_i54_V6factor=(L4ieee_Q9math_real_Y3log_i54_V6xlocal*L4ieee_Q9math_real_Y3log_i54_V9xlocalsqr);
827 L4ieee_Q9math_real_Y3log_i54_V5count=3;
828 L4ieee_Q9math_real_Y3log_i54_V6newval=(L4ieee_Q9math_real_Y3log_i54_V6oldval+(L4ieee_Q9math_real_Y3log_i54_V6factor/floatingpoint(L4ieee_Q9math_real_Y3log_i54_V5count)));
829 while((op_abs((L4ieee_Q9math_real_Y3log_i54_V6newval-L4ieee_Q9math_real_Y3log_i54_V6oldval))>9.9999999999999995475e-07)) {
830 L4ieee_Q9math_real_Y3log_i54_V6oldval=L4ieee_Q9math_real_Y3log_i54_V6newval;
831 L4ieee_Q9math_real_Y3log_i54_V5count=(L4ieee_Q9math_real_Y3log_i54_V5count+2);
832 L4ieee_Q9math_real_Y3log_i54_V6factor=(L4ieee_Q9math_real_Y3log_i54_V6factor*L4ieee_Q9math_real_Y3log_i54_V9xlocalsqr);
833 L4ieee_Q9math_real_Y3log_i54_V6newval=(L4ieee_Q9math_real_Y3log_i54_V6oldval+(L4ieee_Q9math_real_Y3log_i54_V6factor/floatingpoint(L4ieee_Q9math_real_Y3log_i54_V5count)));
834 }
835 L4ieee_Q9math_real_Y3log_i54_V6newval=(L4ieee_Q9math_real_Y3log_i54_V6newval*2.0);
836 return L4ieee_Q9math_real_Y3log_i54_V6newval;
837 }
838 enumeration L4ieee_W9math_real_itn14_lit[]={66,65,83,69,32,60,61,32,48,32,111,114,32,88,32,60,61,32,48,46,48,32,105,110,32,76,79,71,40,66,65,83,69,44,32,88,41};
839 /* Implementation of subprogram :ieee:math_real:log */
L4ieee_Q9math_real_Y3log_i57(const integer L4ieee_Q9math_real_Y3log_i57_C4base,const floatingpoint L4ieee_Q9math_real_Y3log_i57_C1x)840 floatingpoint L4ieee_Q9math_real_Y3log_i57(const integer L4ieee_Q9math_real_Y3log_i57_C4base,const floatingpoint L4ieee_Q9math_real_Y3log_i57_C1x)
841 {
842 if(((L4ieee_Q9math_real_Y3log_i57_C4base<=0)||(L4ieee_Q9math_real_Y3log_i57_C1x<=0.0))) {
843 if(!enumeration(0))
844 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+36,0),L4ieee_W9math_real_itn14_lit),enumeration(2));
845 return -9.9999999999999998603e+306;
846 }
847 return (L4ieee_Q9math_real_Y3log_i54 (L4ieee_Q9math_real_Y3log_i57_C1x)/L4ieee_Q9math_real_Y3log_i54 (floatingpoint(L4ieee_Q9math_real_Y3log_i57_C4base)));
848 }
849 /* Implementation of subprogram :ieee:math_real:sin */
L4ieee_Q9math_real_Y3sin_i59(const floatingpoint L4ieee_Q9math_real_Y3sin_i59_C1x)850 floatingpoint L4ieee_Q9math_real_Y3sin_i59(const floatingpoint L4ieee_Q9math_real_Y3sin_i59_C1x)
851 {
852 integer L4ieee_Q9math_real_Y3sin_i59_V1n;
853 L4ieee_Q9math_real_Y3sin_i59_V1n=-2147483648LL;
854 if(((L4ieee_Q9math_real_Y3sin_i59_C1x<1.6)&&(L4ieee_Q9math_real_Y3sin_i59_C1x>-1.6000000000000000888))) {
855 return L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,L4ieee_Q9math_real_Y3sin_i59_C1x,27,enumeration(0))[1];
856 }
857 L4ieee_Q9math_real_Y3sin_i59_V1n=integer(rint((L4ieee_Q9math_real_Y3sin_i59_C1x/1.5707963267948965580)));
858 switch(integer(op_mod(L4ieee_Q9math_real_Y3sin_i59_V1n,4))) {
859 case 0: {
860 return L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3sin_i59_C1x-(floatingpoint(L4ieee_Q9math_real_Y3sin_i59_V1n)*1.5707963267948965580)),27,enumeration(0))[1];
861 } break;
862 case 1: {
863 return L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3sin_i59_C1x-(floatingpoint(L4ieee_Q9math_real_Y3sin_i59_V1n)*1.5707963267948965580)),27,enumeration(0))[0];
864 } break;
865 case 2: {
866 return (-L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3sin_i59_C1x-(floatingpoint(L4ieee_Q9math_real_Y3sin_i59_V1n)*1.5707963267948965580)),27,enumeration(0))[1]);
867 } break;
868 case 3: {
869 return (-L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3sin_i59_C1x-(floatingpoint(L4ieee_Q9math_real_Y3sin_i59_V1n)*1.5707963267948965580)),27,enumeration(0))[0]);
870 } break;
871 }
872 }
873 /* Implementation of subprogram :ieee:math_real:cos */
L4ieee_Q9math_real_Y3cos_i61(const floatingpoint L4ieee_Q9math_real_Y3cos_i61_C1x)874 floatingpoint L4ieee_Q9math_real_Y3cos_i61(const floatingpoint L4ieee_Q9math_real_Y3cos_i61_C1x)
875 {
876 integer L4ieee_Q9math_real_Y3cos_i61_V1n;
877 L4ieee_Q9math_real_Y3cos_i61_V1n=-2147483648LL;
878 if(((L4ieee_Q9math_real_Y3cos_i61_C1x<1.6)&&(L4ieee_Q9math_real_Y3cos_i61_C1x>-1.6000000000000000888))) {
879 return L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,L4ieee_Q9math_real_Y3cos_i61_C1x,27,enumeration(0))[0];
880 }
881 L4ieee_Q9math_real_Y3cos_i61_V1n=integer(rint((L4ieee_Q9math_real_Y3cos_i61_C1x/1.5707963267948965580)));
882 switch(integer(op_mod(L4ieee_Q9math_real_Y3cos_i61_V1n,4))) {
883 case 0: {
884 return L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3cos_i61_C1x-(floatingpoint(L4ieee_Q9math_real_Y3cos_i61_V1n)*1.5707963267948965580)),27,enumeration(0))[0];
885 } break;
886 case 1: {
887 return (-L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3cos_i61_C1x-(floatingpoint(L4ieee_Q9math_real_Y3cos_i61_V1n)*1.5707963267948965580)),27,enumeration(0))[1]);
888 } break;
889 case 2: {
890 return (-L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3cos_i61_C1x-(floatingpoint(L4ieee_Q9math_real_Y3cos_i61_V1n)*1.5707963267948965580)),27,enumeration(0))[0]);
891 } break;
892 case 3: {
893 return L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3cos_i61_C1x-(floatingpoint(L4ieee_Q9math_real_Y3cos_i61_V1n)*1.5707963267948965580)),27,enumeration(0))[1];
894 } break;
895 }
896 }
897 /* Implementation of subprogram :ieee:math_real:tan */
L4ieee_Q9math_real_Y3tan_i63(const floatingpoint L4ieee_Q9math_real_Y3tan_i63_C1x)898 floatingpoint L4ieee_Q9math_real_Y3tan_i63(const floatingpoint L4ieee_Q9math_real_Y3tan_i63_C1x)
899 {
900 integer L4ieee_Q9math_real_Y3tan_i63_V1n;
901 L4ieee_W9math_real_T10real_arr_3 L4ieee_Q9math_real_Y3tan_i63_V1v;
902 L4ieee_Q9math_real_Y3tan_i63_V1n=integer(rint((L4ieee_Q9math_real_Y3tan_i63_C1x/1.5707963267948965580)));
903 L4ieee_Q9math_real_Y3tan_i63_V1v.init((&L4ieee_W9math_real_I10real_arr_3_INFO),-9.9999999999999998603e+306);
904 L4ieee_Q9math_real_Y3tan_i63_V1v=L4ieee_W9math_real_Y6cordic_i59 (0.60725293500888144482,0.0,(L4ieee_Q9math_real_Y3tan_i63_C1x-(floatingpoint(L4ieee_Q9math_real_Y3tan_i63_V1n)*1.5707963267948965580)),27,enumeration(0));
905 if((op_mod(L4ieee_Q9math_real_Y3tan_i63_V1n,2)==0)) {
906 return (L4ieee_Q9math_real_Y3tan_i63_V1v[1]/L4ieee_Q9math_real_Y3tan_i63_V1v[0]);
907 } else {
908 return (-(L4ieee_Q9math_real_Y3tan_i63_V1v[0]/L4ieee_Q9math_real_Y3tan_i63_V1v[1]));
909 }
910 }
911 enumeration L4ieee_W9math_real_itn15_lit[]={79,117,116,32,111,102,32,114,97,110,103,101,32,112,97,114,97,109,101,116,101,114,32,112,97,115,115,101,100,32,116,111,32,65,83,73,78};
912 /* Implementation of subprogram :ieee:math_real:asin */
L4ieee_Q9math_real_Y4asin_i65(const floatingpoint L4ieee_Q9math_real_Y4asin_i65_C1x)913 floatingpoint L4ieee_Q9math_real_Y4asin_i65(const floatingpoint L4ieee_Q9math_real_Y4asin_i65_C1x)
914 {
915 if((op_abs(L4ieee_Q9math_real_Y4asin_i65_C1x)>1.0)) {
916 if(!enumeration(0))
917 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+36,0),L4ieee_W9math_real_itn15_lit),enumeration(2));
918 return L4ieee_Q9math_real_Y4asin_i65_C1x;
919 } else {
920 if((op_abs(L4ieee_Q9math_real_Y4asin_i65_C1x)<0.9)) {
921 return L4ieee_Q9math_real_Y4atan_i69 ((L4ieee_Q9math_real_Y4asin_i65_C1x/L4ieee_Q9math_real_Y4sqrt_i42 ((1.0-(L4ieee_Q9math_real_Y4asin_i65_C1x*L4ieee_Q9math_real_Y4asin_i65_C1x)))));
922 } else {
923 if((L4ieee_Q9math_real_Y4asin_i65_C1x>0.0)) {
924 return (1.5707963267948965580-L4ieee_Q9math_real_Y4atan_i69 ((L4ieee_Q9math_real_Y4sqrt_i42 ((1.0-(L4ieee_Q9math_real_Y4asin_i65_C1x*L4ieee_Q9math_real_Y4asin_i65_C1x)))/L4ieee_Q9math_real_Y4asin_i65_C1x)));
925 } else {
926 return (-1.5707963267948965580+L4ieee_Q9math_real_Y4atan_i69 ((L4ieee_Q9math_real_Y4sqrt_i42 ((1.0-(L4ieee_Q9math_real_Y4asin_i65_C1x*L4ieee_Q9math_real_Y4asin_i65_C1x)))/L4ieee_Q9math_real_Y4asin_i65_C1x)));
927 }
928 }
929 }
930 }
931 enumeration L4ieee_W9math_real_itn16_lit[]={79,117,116,32,111,102,32,114,97,110,103,101,32,112,97,114,97,109,101,116,101,114,32,112,97,115,115,101,100,32,116,111,32,65,67,79,83};
932 /* Implementation of subprogram :ieee:math_real:acos */
L4ieee_Q9math_real_Y4acos_i67(const floatingpoint L4ieee_Q9math_real_Y4acos_i67_C1x)933 floatingpoint L4ieee_Q9math_real_Y4acos_i67(const floatingpoint L4ieee_Q9math_real_Y4acos_i67_C1x)
934 {
935 if((op_abs(L4ieee_Q9math_real_Y4acos_i67_C1x)>1.0)) {
936 if(!enumeration(0))
937 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+36,0),L4ieee_W9math_real_itn16_lit),enumeration(2));
938 return L4ieee_Q9math_real_Y4acos_i67_C1x;
939 } else {
940 if((op_abs(L4ieee_Q9math_real_Y4acos_i67_C1x)>0.9)) {
941 if((L4ieee_Q9math_real_Y4acos_i67_C1x>0.0)) {
942 return L4ieee_Q9math_real_Y4atan_i69 ((L4ieee_Q9math_real_Y4sqrt_i42 ((1.0-(L4ieee_Q9math_real_Y4acos_i67_C1x*L4ieee_Q9math_real_Y4acos_i67_C1x)))/L4ieee_Q9math_real_Y4acos_i67_C1x));
943 } else {
944 return (3.1415926535897931160-L4ieee_Q9math_real_Y4atan_i69 ((L4ieee_Q9math_real_Y4sqrt_i42 ((1.0-(L4ieee_Q9math_real_Y4acos_i67_C1x*L4ieee_Q9math_real_Y4acos_i67_C1x)))/L4ieee_Q9math_real_Y4acos_i67_C1x)));
945 }
946 } else {
947 return (1.5707963267948965580-L4ieee_Q9math_real_Y4atan_i69 ((L4ieee_Q9math_real_Y4acos_i67_C1x/L4ieee_Q9math_real_Y4sqrt_i42 ((1.0-(L4ieee_Q9math_real_Y4acos_i67_C1x*L4ieee_Q9math_real_Y4acos_i67_C1x))))));
948 }
949 }
950 }
951 /* Implementation of subprogram :ieee:math_real:atan */
L4ieee_Q9math_real_Y4atan_i69(const floatingpoint L4ieee_Q9math_real_Y4atan_i69_C1x)952 floatingpoint L4ieee_Q9math_real_Y4atan_i69(const floatingpoint L4ieee_Q9math_real_Y4atan_i69_C1x)
953 {
954 return L4ieee_W9math_real_Y6cordic_i59 (1.0,L4ieee_Q9math_real_Y4atan_i69_C1x,0.0,27,enumeration(1))[2];
955 }
956 enumeration L4ieee_W9math_real_itn17_lit[]={97,116,97,110,50,40,48,46,48,44,32,48,46,48,41,32,105,115,32,117,110,100,101,116,101,114,109,105,110,101,100,44,32,114,101,116,117,114,110,101,100,32,48,44,48};
957 /* Implementation of subprogram :ieee:math_real:atan2 */
L4ieee_Q9math_real_Y5atan2_i72(const floatingpoint L4ieee_Q9math_real_Y5atan2_i72_C1x,const floatingpoint L4ieee_Q9math_real_Y5atan2_i72_C1y)958 floatingpoint L4ieee_Q9math_real_Y5atan2_i72(const floatingpoint L4ieee_Q9math_real_Y5atan2_i72_C1x,const floatingpoint L4ieee_Q9math_real_Y5atan2_i72_C1y)
959 {
960 if((L4ieee_Q9math_real_Y5atan2_i72_C1y==0.0)) {
961 if((L4ieee_Q9math_real_Y5atan2_i72_C1x==0.0)) {
962 if(!enumeration(0))
963 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+44,0),L4ieee_W9math_real_itn17_lit),enumeration(0));
964 return 0.0;
965 } else {
966 if((L4ieee_Q9math_real_Y5atan2_i72_C1x>0.0)) {
967 return 0.0;
968 } else {
969 return 3.1415926535897931160;
970 }
971 }
972 } else {
973 if((L4ieee_Q9math_real_Y5atan2_i72_C1x>0.0)) {
974 return L4ieee_W9math_real_Y6cordic_i59 (L4ieee_Q9math_real_Y5atan2_i72_C1x,L4ieee_Q9math_real_Y5atan2_i72_C1y,0.0,27,enumeration(1))[2];
975 } else {
976 return (3.1415926535897931160+L4ieee_W9math_real_Y6cordic_i59 (L4ieee_Q9math_real_Y5atan2_i72_C1x,L4ieee_Q9math_real_Y5atan2_i72_C1y,0.0,27,enumeration(1))[2]);
977 }
978 }
979 }
980 /* Implementation of subprogram :ieee:math_real:sinh */
L4ieee_Q9math_real_Y4sinh_i74(const floatingpoint L4ieee_Q9math_real_Y4sinh_i74_C1x)981 floatingpoint L4ieee_Q9math_real_Y4sinh_i74(const floatingpoint L4ieee_Q9math_real_Y4sinh_i74_C1x)
982 {
983 return ((L4ieee_Q9math_real_Y3exp_i52 (L4ieee_Q9math_real_Y4sinh_i74_C1x)-L4ieee_Q9math_real_Y3exp_i52 ((-L4ieee_Q9math_real_Y4sinh_i74_C1x)))/2.0);
984 }
985 /* Implementation of subprogram :ieee:math_real:cosh */
L4ieee_Q9math_real_Y4cosh_i76(const floatingpoint L4ieee_Q9math_real_Y4cosh_i76_C1x)986 floatingpoint L4ieee_Q9math_real_Y4cosh_i76(const floatingpoint L4ieee_Q9math_real_Y4cosh_i76_C1x)
987 {
988 return ((L4ieee_Q9math_real_Y3exp_i52 (L4ieee_Q9math_real_Y4cosh_i76_C1x)+L4ieee_Q9math_real_Y3exp_i52 ((-L4ieee_Q9math_real_Y4cosh_i76_C1x)))/2.0);
989 }
990 /* Implementation of subprogram :ieee:math_real:tanh */
L4ieee_Q9math_real_Y4tanh_i78(const floatingpoint L4ieee_Q9math_real_Y4tanh_i78_C1x)991 floatingpoint L4ieee_Q9math_real_Y4tanh_i78(const floatingpoint L4ieee_Q9math_real_Y4tanh_i78_C1x)
992 {
993 return ((L4ieee_Q9math_real_Y3exp_i52 (L4ieee_Q9math_real_Y4tanh_i78_C1x)-L4ieee_Q9math_real_Y3exp_i52 ((-L4ieee_Q9math_real_Y4tanh_i78_C1x)))/(L4ieee_Q9math_real_Y3exp_i52 (L4ieee_Q9math_real_Y4tanh_i78_C1x)+L4ieee_Q9math_real_Y3exp_i52 ((-L4ieee_Q9math_real_Y4tanh_i78_C1x))));
994 }
995 /* Implementation of subprogram :ieee:math_real:asinh */
L4ieee_Q9math_real_Y5asinh_i80(const floatingpoint L4ieee_Q9math_real_Y5asinh_i80_C1x)996 floatingpoint L4ieee_Q9math_real_Y5asinh_i80(const floatingpoint L4ieee_Q9math_real_Y5asinh_i80_C1x)
997 {
998 return L4ieee_Q9math_real_Y3log_i54 ((L4ieee_Q9math_real_Y5asinh_i80_C1x+L4ieee_Q9math_real_Y4sqrt_i42 ((op_power(L4ieee_Q9math_real_Y5asinh_i80_C1x,2)+1.0))));
999 }
1000 enumeration L4ieee_W9math_real_itn18_lit[]={79,117,116,32,111,102,32,114,97,110,103,101,32,112,97,114,97,109,101,116,101,114,32,112,97,115,115,101,100,32,116,111,32,65,67,79,83,72};
1001 /* Implementation of subprogram :ieee:math_real:acosh */
L4ieee_Q9math_real_Y5acosh_i82(const floatingpoint L4ieee_Q9math_real_Y5acosh_i82_C1x)1002 floatingpoint L4ieee_Q9math_real_Y5acosh_i82(const floatingpoint L4ieee_Q9math_real_Y5acosh_i82_C1x)
1003 {
1004 if((op_abs(L4ieee_Q9math_real_Y5acosh_i82_C1x)>=1.0)) {
1005 if(!enumeration(0))
1006 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+37,0),L4ieee_W9math_real_itn18_lit),enumeration(2));
1007 return L4ieee_Q9math_real_Y5acosh_i82_C1x;
1008 }
1009 return L4ieee_Q9math_real_Y3log_i54 ((L4ieee_Q9math_real_Y5acosh_i82_C1x+L4ieee_Q9math_real_Y4sqrt_i42 ((op_power(L4ieee_Q9math_real_Y5acosh_i82_C1x,2)-1.0))));
1010 }
1011 enumeration L4ieee_W9math_real_itn19_lit[]={79,117,116,32,111,102,32,114,97,110,103,101,32,112,97,114,97,109,101,116,101,114,32,112,97,115,115,101,100,32,116,111,32,65,84,65,78,72};
1012 /* Implementation of subprogram :ieee:math_real:atanh */
L4ieee_Q9math_real_Y5atanh_i84(const floatingpoint L4ieee_Q9math_real_Y5atanh_i84_C1x)1013 floatingpoint L4ieee_Q9math_real_Y5atanh_i84(const floatingpoint L4ieee_Q9math_real_Y5atanh_i84_C1x)
1014 {
1015 if((op_abs(L4ieee_Q9math_real_Y5atanh_i84_C1x)<1.0)) {
1016 if(!enumeration(0))
1017 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+37,0),L4ieee_W9math_real_itn19_lit),enumeration(2));
1018 return L4ieee_Q9math_real_Y5atanh_i84_C1x;
1019 }
1020 return (L4ieee_Q9math_real_Y3log_i54 (((1.0+L4ieee_Q9math_real_Y5atanh_i84_C1x)/(1.0-L4ieee_Q9math_real_Y5atanh_i84_C1x)))/2.0);
1021 }
1022 /* Initialization function for package body :ieee:math_real */
1023 int L4ieee_Q9math_real_init ();
1024 int L3std_Q8standard_init ();
1025 bool L4ieee_W9math_real_init_done = false;
L4ieee_W9math_real_init()1026 int L4ieee_W9math_real_init(){
1027 if (L4ieee_W9math_real_init_done) return 1;
1028 L4ieee_W9math_real_init_done=true;
1029 L4ieee_Q9math_real_init ();
1030 L3std_Q8standard_init ();
1031 register_source_file("/home/stefan/cvs-local/freehdl-teaser/ieee/math_real.vhdl","math_real.vhdl");
1032 name_stack iname;
1033 iname.push("");
1034 void *sref=register_package_body(":ieee",":math_real");
1035 L4ieee_W9math_real_I11real_vector_INFO.set((&L3std_Q8standard_I4real_INFO),(&L3std_Q8standard_I7natural_INFO),-1).register_type(":ieee:math_real",":ieee:math_real:real_vector",":REAL_VECTOR",NULL);
1036 L4ieee_W9math_real_I14natural_vector_INFO.set((&L3std_Q8standard_I7natural_INFO),(&L3std_Q8standard_I7natural_INFO),-1).register_type(":ieee:math_real",":ieee:math_real:natural_vector",":NATURAL_VECTOR",NULL);
1037 L4ieee_W9math_real_I13real_vector_n_INFO.set((&L3std_Q8standard_I4real_INFO),(&L3std_Q8standard_I7integer_INFO),0,to,27,-1).register_type(":ieee:math_real",":ieee:math_real:real_vector_n",":REAL_VECTOR_N",NULL);
1038 L4ieee_W9math_real_I10real_arr_2_INFO.set((&L3std_Q8standard_I4real_INFO),(&L3std_Q8standard_I7integer_INFO),0,to,1,-1).register_type(":ieee:math_real",":ieee:math_real:real_arr_2",":REAL_ARR_2",NULL);
1039 L4ieee_W9math_real_I10real_arr_3_INFO.set((&L3std_Q8standard_I4real_INFO),(&L3std_Q8standard_I7integer_INFO),0,to,2,-1).register_type(":ieee:math_real",":ieee:math_real:real_arr_3",":REAL_ARR_3",NULL);
1040 L4ieee_W9math_real_I8quadrant_INFO.register_type(":ieee:math_real",":ieee:math_real:quadrant",":QUADRANT",NULL);
1041 L4ieee_W9math_real_I16cordic_mode_type_INFO.register_type(":ieee:math_real",":ieee:math_real:cordic_mode_type",":CORDIC_MODE_TYPE",NULL);
1042 L4ieee_Q9math_real_Y4ceil_i22_I4long_INFO.register_type(":ieee:math_real:ceil",":ieee:math_real:ceil:long",":long",NULL);
1043 L4ieee_Q9math_real_Y5floor_i24_I4long_INFO.register_type(":ieee:math_real:floor",":ieee:math_real:floor:long",":long",NULL);
1044 L4ieee_W9math_real_C4q_pi=0.78539816339744827900;
1045 L4ieee_W9math_real_C7half_pi=1.5707963267948965580;
1046 L4ieee_W9math_real_C6two_pi=6.2831853071795862320;
1047 L4ieee_W9math_real_C8max_iter=27;
1048 L4ieee_W9math_real_C2kc=6.0725293500888142e-01;
1049 L4ieee_W9math_real_C12two_at_minus.init(const_pointer(L4ieee_W9math_real_Y17power_of_2_series_i44 (L4ieee_W9math_real_T14natural_vector(new array_info((&L4ieee_W9math_real_I14natural_vector_INFO)->element_type,(&L4ieee_W9math_real_I14natural_vector_INFO)->index_type,0,to,0+1,0),100).aggregate_set(0+1,to,0+1,90),1.0,27)));
1050 L4ieee_W9math_real_C7epsilon.init((&L4ieee_W9math_real_I13real_vector_n_INFO),-9.9999999999999998603e+306);
1051 L4ieee_W9math_real_C7epsilon=L4ieee_W9math_real_T13real_vector_n(new array_info((&L4ieee_W9math_real_I13real_vector_n_INFO)->element_type,(&L4ieee_W9math_real_I13real_vector_n_INFO)->index_type,0,to,0+27,0),7.8539816339744827e-01).aggregate_set(0+1,to,0+1,4.6364760900080606e-01).aggregate_set(0+2,to,0+2,2.4497866312686413e-01).aggregate_set(0+3,to,0+3,1.2435499454676144e-01).aggregate_set(0+4,to,0+4,6.2418809995957351e-02).aggregate_set(0+5,to,0+5,3.1239833430268277e-02).aggregate_set(0+6,to,0+6,1.5623728620476830e-02).aggregate_set(0+7,to,0+7,7.8123410601011116e-03).aggregate_set(0+8,to,0+8,3.9062301319669717e-03).aggregate_set(0+9,to,0+9,1.9531225164788189e-03).aggregate_set(0+10,to,0+10,9.7656218955931937e-04).aggregate_set(0+11,to,0+11,4.8828121119489829e-04).aggregate_set(0+12,to,0+12,2.4414062014936175e-04).aggregate_set(0+13,to,0+13,1.2207031189367021e-04).aggregate_set(0+14,to,0+14,6.1035156174208768e-05).aggregate_set(0+15,to,0+15,3.0517578115526093e-05).aggregate_set(0+16,to,0+16,1.5258789061315760e-05).aggregate_set(0+17,to,0+17,7.6293945311019699e-06).aggregate_set(0+18,to,0+18,3.8146972656064960e-06).aggregate_set(0+19,to,0+19,1.9073486328101870e-06).aggregate_set(0+20,to,0+20,9.5367431640596080e-07).aggregate_set(0+21,to,0+21,4.7683715820308876e-07).aggregate_set(0+22,to,0+22,2.3841857910155801e-07).aggregate_set(0+23,to,0+23,1.1920928955078067e-07).aggregate_set(0+24,to,0+24,5.9604644775390553e-08).aggregate_set(0+25,to,0+25,2.9802322387695303e-08).aggregate_set(0+26,to,0+26,1.4901161193847654e-08).aggregate_set(0+27,to,0+27,7.4505805969238281e-09);
1052 iname.pop();
1053 return 1;
1054 }
1055 /* handle for simulator to find package body initialization function */
1056 handle_info *L4ieee_W9math_real_hinfo =
1057 add_handle("ieee","math_real",NULL,NULL,&L4ieee_W9math_real_init);
1058
1059 /* end of package body :ieee:math_real */
1060
1061 /* package body :ieee:math_complex */
1062 /* External declarations */
1063 /* End of external declarations */
1064 /* Prototype for subprogram :ieee:math_complex:cabs */
1065 floatingpoint L4ieee_Q12math_complex_Y4cabs_i22(const L4ieee_Q12math_complex_T7complex &);
1066 /* Prototype for subprogram :ieee:math_complex:carg */
1067 floatingpoint L4ieee_Q12math_complex_Y4carg_i24(const L4ieee_Q12math_complex_T7complex &);
1068 /* Prototype for subprogram :ieee:math_complex:cmplx */
1069 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y5cmplx_i27(const floatingpoint ,const floatingpoint );
1070 /* Prototype for subprogram :ieee:math_complex:"-" */
1071 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i29(const L4ieee_Q12math_complex_T7complex &);
1072 /* Prototype for subprogram :ieee:math_complex:"-" */
1073 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y8op_minus_i31(const L4ieee_Q12math_complex_T13complex_polar &);
1074 /* Prototype for subprogram :ieee:math_complex:conj */
1075 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y4conj_i33(const L4ieee_Q12math_complex_T7complex &);
1076 /* Prototype for subprogram :ieee:math_complex:conj */
1077 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y4conj_i35(const L4ieee_Q12math_complex_T13complex_polar &);
1078 /* Prototype for subprogram :ieee:math_complex:csqrt */
1079 L4ieee_Q12math_complex_T14complex_vector L4ieee_Q12math_complex_Y5csqrt_i37(const L4ieee_Q12math_complex_T7complex &);
1080 /* Prototype for subprogram :ieee:math_complex:cexp */
1081 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y4cexp_i39(const L4ieee_Q12math_complex_T7complex &);
1082 /* Prototype for subprogram :ieee:math_complex:complex_to_polar */
1083 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y16complex_to_polar_i41(const L4ieee_Q12math_complex_T7complex &);
1084 /* Prototype for subprogram :ieee:math_complex:polar_to_complex */
1085 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y16polar_to_complex_i43(const L4ieee_Q12math_complex_T13complex_polar &);
1086 /* Prototype for subprogram :ieee:math_complex:"+" */
1087 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i46(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
1088 /* Prototype for subprogram :ieee:math_complex:"+" */
1089 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i49(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
1090 /* Prototype for subprogram :ieee:math_complex:"+" */
1091 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i52(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
1092 /* Prototype for subprogram :ieee:math_complex:"+" */
1093 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i55(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
1094 /* Prototype for subprogram :ieee:math_complex:"+" */
1095 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i58(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
1096 /* Prototype for subprogram :ieee:math_complex:"+" */
1097 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i61(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
1098 /* Prototype for subprogram :ieee:math_complex:"+" */
1099 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i64(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
1100 /* Prototype for subprogram :ieee:math_complex:"+" */
1101 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i67(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
1102 /* Prototype for subprogram :ieee:math_complex:"-" */
1103 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i70(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
1104 /* Prototype for subprogram :ieee:math_complex:"-" */
1105 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i73(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
1106 /* Prototype for subprogram :ieee:math_complex:"-" */
1107 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i76(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
1108 /* Prototype for subprogram :ieee:math_complex:"-" */
1109 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i79(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
1110 /* Prototype for subprogram :ieee:math_complex:"-" */
1111 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i82(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
1112 /* Prototype for subprogram :ieee:math_complex:"-" */
1113 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i85(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
1114 /* Prototype for subprogram :ieee:math_complex:"-" */
1115 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i88(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
1116 /* Prototype for subprogram :ieee:math_complex:"-" */
1117 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i91(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
1118 /* Prototype for subprogram :ieee:math_complex:"*" */
1119 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i94(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
1120 /* Prototype for subprogram :ieee:math_complex:"*" */
1121 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i97(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
1122 /* Prototype for subprogram :ieee:math_complex:"*" */
1123 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i100(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
1124 /* Prototype for subprogram :ieee:math_complex:"*" */
1125 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i103(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
1126 /* Prototype for subprogram :ieee:math_complex:"*" */
1127 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i106(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
1128 /* Prototype for subprogram :ieee:math_complex:"*" */
1129 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i109(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
1130 /* Prototype for subprogram :ieee:math_complex:"*" */
1131 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i112(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
1132 /* Prototype for subprogram :ieee:math_complex:"*" */
1133 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i115(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
1134 /* Prototype for subprogram :ieee:math_complex:"/" */
1135 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i118(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T7complex &);
1136 /* Prototype for subprogram :ieee:math_complex:"/" */
1137 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i121(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T13complex_polar &);
1138 /* Prototype for subprogram :ieee:math_complex:"/" */
1139 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i124(const L4ieee_Q12math_complex_T13complex_polar &,const L4ieee_Q12math_complex_T7complex &);
1140 /* Prototype for subprogram :ieee:math_complex:"/" */
1141 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i127(const L4ieee_Q12math_complex_T7complex &,const L4ieee_Q12math_complex_T13complex_polar &);
1142 /* Prototype for subprogram :ieee:math_complex:"/" */
1143 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i130(const floatingpoint ,const L4ieee_Q12math_complex_T7complex &);
1144 /* Prototype for subprogram :ieee:math_complex:"/" */
1145 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i133(const L4ieee_Q12math_complex_T7complex &,const floatingpoint );
1146 /* Prototype for subprogram :ieee:math_complex:"/" */
1147 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i136(const floatingpoint ,const L4ieee_Q12math_complex_T13complex_polar &);
1148 /* Prototype for subprogram :ieee:math_complex:"/" */
1149 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i139(const L4ieee_Q12math_complex_T13complex_polar &,const floatingpoint );
1150 /* Implementation of subprogram :ieee:math_complex:cabs */
L4ieee_Q12math_complex_Y4cabs_i22(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y4cabs_i22_C1z)1151 floatingpoint L4ieee_Q12math_complex_Y4cabs_i22(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y4cabs_i22_C1z)
1152 {
1153 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y4cabs_i22_V5ztemp;
1154 L4ieee_Q12math_complex_Y4cabs_i22_V5ztemp.init((&L4ieee_Q12math_complex_I13complex_polar_INFO));
1155 L4ieee_Q12math_complex_Y4cabs_i22_V5ztemp=L4ieee_Q12math_complex_Y16complex_to_polar_i41 (L4ieee_Q12math_complex_Y4cabs_i22_C1z);
1156 return L4ieee_Q12math_complex_Y4cabs_i22_V5ztemp.value().M3mag;
1157 }
1158 /* Implementation of subprogram :ieee:math_complex:carg */
L4ieee_Q12math_complex_Y4carg_i24(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y4carg_i24_C1z)1159 floatingpoint L4ieee_Q12math_complex_Y4carg_i24(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y4carg_i24_C1z)
1160 {
1161 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y4carg_i24_V5ztemp;
1162 L4ieee_Q12math_complex_Y4carg_i24_V5ztemp.init((&L4ieee_Q12math_complex_I13complex_polar_INFO));
1163 L4ieee_Q12math_complex_Y4carg_i24_V5ztemp=L4ieee_Q12math_complex_Y16complex_to_polar_i41 (L4ieee_Q12math_complex_Y4carg_i24_C1z);
1164 return L4ieee_Q12math_complex_Y4carg_i24_V5ztemp.value().M3arg;
1165 }
1166 /* Implementation of subprogram :ieee:math_complex:cmplx */
L4ieee_Q12math_complex_Y5cmplx_i27(const floatingpoint L4ieee_Q12math_complex_Y5cmplx_i27_C1x,const floatingpoint L4ieee_Q12math_complex_Y5cmplx_i27_C1y)1167 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y5cmplx_i27(const floatingpoint L4ieee_Q12math_complex_Y5cmplx_i27_C1x,const floatingpoint L4ieee_Q12math_complex_Y5cmplx_i27_C1y)
1168 {
1169 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(L4ieee_Q12math_complex_Y5cmplx_i27_C1x)).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y5cmplx_i27_C1y));
1170 }
1171 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i29(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i29_C1z)1172 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i29(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i29_C1z)
1173 {
1174 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((-L4ieee_Q12math_complex_Y8op_minus_i29_C1z.value().M2re))).aggregate_set(1,const_pointer((-L4ieee_Q12math_complex_Y8op_minus_i29_C1z.value().M2im)));
1175 }
1176 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i31(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i31_C1z)1177 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y8op_minus_i31(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i31_C1z)
1178 {
1179 return L4ieee_Q12math_complex_T13complex_polar().init((&L4ieee_Q12math_complex_I13complex_polar_INFO)).aggregate_set(0,const_pointer(L4ieee_Q12math_complex_Y8op_minus_i31_C1z.value().M3mag)).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i31_C1z.value().M3arg+3.1415926535897931160)));
1180 }
1181 /* Implementation of subprogram :ieee:math_complex:conj */
L4ieee_Q12math_complex_Y4conj_i33(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y4conj_i33_C1z)1182 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y4conj_i33(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y4conj_i33_C1z)
1183 {
1184 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(L4ieee_Q12math_complex_Y4conj_i33_C1z.value().M2re)).aggregate_set(1,const_pointer((-L4ieee_Q12math_complex_Y4conj_i33_C1z.value().M2im)));
1185 }
1186 /* Implementation of subprogram :ieee:math_complex:conj */
L4ieee_Q12math_complex_Y4conj_i35(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y4conj_i35_C1z)1187 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y4conj_i35(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y4conj_i35_C1z)
1188 {
1189 return L4ieee_Q12math_complex_T13complex_polar().init((&L4ieee_Q12math_complex_I13complex_polar_INFO)).aggregate_set(0,const_pointer(L4ieee_Q12math_complex_Y4conj_i35_C1z.value().M3mag)).aggregate_set(1,const_pointer((-L4ieee_Q12math_complex_Y4conj_i35_C1z.value().M3arg)));
1190 }
1191 /* Implementation of subprogram :ieee:math_complex:csqrt */
L4ieee_Q12math_complex_Y5csqrt_i37(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y5csqrt_i37_C1z)1192 L4ieee_Q12math_complex_T14complex_vector L4ieee_Q12math_complex_Y5csqrt_i37(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y5csqrt_i37_C1z)
1193 {
1194 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp;
1195 L4ieee_Q12math_complex_T14complex_vector L4ieee_Q12math_complex_Y5csqrt_i37_V4zout;
1196 floatingpoint L4ieee_Q12math_complex_Y5csqrt_i37_V4temp;
1197 L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp.init((&L4ieee_Q12math_complex_I13complex_polar_INFO));
1198 L4ieee_Q12math_complex_Y5csqrt_i37_V4zout.init((new array_info((&L4ieee_Q12math_complex_I14complex_vector_INFO)->element_type,(&L4ieee_Q12math_complex_I14complex_vector_INFO)->index_type,0,to,1,0)));
1199 L4ieee_Q12math_complex_Y5csqrt_i37_V4temp=-9.9999999999999998603e+306;
1200 L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp=L4ieee_Q12math_complex_Y16complex_to_polar_i41 (L4ieee_Q12math_complex_Y5csqrt_i37_C1z);
1201 L4ieee_Q12math_complex_Y5csqrt_i37_V4temp=L4ieee_Q9math_real_Y4sqrt_i42 (L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp.value().M3mag);
1202 L4ieee_Q12math_complex_Y5csqrt_i37_V4zout[0].value().M2re=(L4ieee_Q12math_complex_Y5csqrt_i37_V4temp*L4ieee_Q9math_real_Y3cos_i61 ((L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp.value().M3arg/2.0)));
1203 L4ieee_Q12math_complex_Y5csqrt_i37_V4zout[0].value().M2im=(L4ieee_Q12math_complex_Y5csqrt_i37_V4temp*L4ieee_Q9math_real_Y3sin_i59 ((L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp.value().M3arg/2.0)));
1204 L4ieee_Q12math_complex_Y5csqrt_i37_V4zout[1].value().M2re=(L4ieee_Q12math_complex_Y5csqrt_i37_V4temp*L4ieee_Q9math_real_Y3cos_i61 (((L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp.value().M3arg/2.0)+3.1415926535897931160)));
1205 L4ieee_Q12math_complex_Y5csqrt_i37_V4zout[1].value().M2im=(L4ieee_Q12math_complex_Y5csqrt_i37_V4temp*L4ieee_Q9math_real_Y3sin_i59 (((L4ieee_Q12math_complex_Y5csqrt_i37_V5ztemp.value().M3arg/2.0)+3.1415926535897931160)));
1206 return array_alias<L4ieee_Q12math_complex_T14complex_vector >((&L4ieee_Q12math_complex_I14complex_vector_INFO),L4ieee_Q12math_complex_Y5csqrt_i37_V4zout);
1207 }
1208 /* Implementation of subprogram :ieee:math_complex:cexp */
L4ieee_Q12math_complex_Y4cexp_i39(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y4cexp_i39_C1z)1209 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y4cexp_i39(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y4cexp_i39_C1z)
1210 {
1211 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q9math_real_Y3exp_i52 (L4ieee_Q12math_complex_Y4cexp_i39_C1z.value().M2re)*L4ieee_Q9math_real_Y3cos_i61 (L4ieee_Q12math_complex_Y4cexp_i39_C1z.value().M2im)))).aggregate_set(1,const_pointer((L4ieee_Q9math_real_Y3exp_i52 (L4ieee_Q12math_complex_Y4cexp_i39_C1z.value().M2re)*L4ieee_Q9math_real_Y3sin_i59 (L4ieee_Q12math_complex_Y4cexp_i39_C1z.value().M2im))));
1212 }
1213 /* Implementation of subprogram :ieee:math_complex:complex_to_polar */
L4ieee_Q12math_complex_Y16complex_to_polar_i41(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y16complex_to_polar_i41_C1z)1214 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y16complex_to_polar_i41(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y16complex_to_polar_i41_C1z)
1215 {
1216 return L4ieee_Q12math_complex_T13complex_polar().init((&L4ieee_Q12math_complex_I13complex_polar_INFO)).aggregate_set(0,const_pointer(L4ieee_Q9math_real_Y4sqrt_i42 ((op_power(L4ieee_Q12math_complex_Y16complex_to_polar_i41_C1z.value().M2re,2)+op_power(L4ieee_Q12math_complex_Y16complex_to_polar_i41_C1z.value().M2im,2))))).aggregate_set(1,const_pointer(L4ieee_Q9math_real_Y5atan2_i72 (L4ieee_Q12math_complex_Y16complex_to_polar_i41_C1z.value().M2re,L4ieee_Q12math_complex_Y16complex_to_polar_i41_C1z.value().M2im)));
1217 }
1218 /* Implementation of subprogram :ieee:math_complex:polar_to_complex */
L4ieee_Q12math_complex_Y16polar_to_complex_i43(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y16polar_to_complex_i43_C1z)1219 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y16polar_to_complex_i43(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y16polar_to_complex_i43_C1z)
1220 {
1221 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y16polar_to_complex_i43_C1z.value().M3mag*L4ieee_Q9math_real_Y3cos_i61 (L4ieee_Q12math_complex_Y16polar_to_complex_i43_C1z.value().M3arg)))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y16polar_to_complex_i43_C1z.value().M3mag*L4ieee_Q9math_real_Y3sin_i59 (L4ieee_Q12math_complex_Y16polar_to_complex_i43_C1z.value().M3arg))));
1222 }
1223 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i46(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_plus_i46_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_plus_i46_C1r)1224 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i46(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_plus_i46_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_plus_i46_C1r)
1225 {
1226 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i46_C1l.value().M2re+L4ieee_Q12math_complex_Y7op_plus_i46_C1r.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i46_C1l.value().M2im+L4ieee_Q12math_complex_Y7op_plus_i46_C1r.value().M2im)));
1227 }
1228 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i49(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_plus_i49_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_plus_i49_C1r)1229 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i49(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_plus_i49_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_plus_i49_C1r)
1230 {
1231 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i49_V2zr,L4ieee_Q12math_complex_Y7op_plus_i49_V2zl;
1232 L4ieee_Q12math_complex_Y7op_plus_i49_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1233 L4ieee_Q12math_complex_Y7op_plus_i49_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1234 L4ieee_Q12math_complex_Y7op_plus_i49_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_plus_i49_C1l);
1235 L4ieee_Q12math_complex_Y7op_plus_i49_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_plus_i49_C1r);
1236 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i49_V2zl.value().M2re+L4ieee_Q12math_complex_Y7op_plus_i49_V2zr.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i49_V2zl.value().M2im+L4ieee_Q12math_complex_Y7op_plus_i49_V2zr.value().M2im)));
1237 }
1238 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i52(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_plus_i52_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_plus_i52_C1r)1239 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i52(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_plus_i52_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_plus_i52_C1r)
1240 {
1241 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i52_V2zl;
1242 L4ieee_Q12math_complex_Y7op_plus_i52_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1243 L4ieee_Q12math_complex_Y7op_plus_i52_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_plus_i52_C1l);
1244 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i52_V2zl.value().M2re+L4ieee_Q12math_complex_Y7op_plus_i52_C1r.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i52_V2zl.value().M2im+L4ieee_Q12math_complex_Y7op_plus_i52_C1r.value().M2im)));
1245 }
1246 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i55(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_plus_i55_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_plus_i55_C1r)1247 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i55(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_plus_i55_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_plus_i55_C1r)
1248 {
1249 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i55_V2zr;
1250 L4ieee_Q12math_complex_Y7op_plus_i55_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1251 L4ieee_Q12math_complex_Y7op_plus_i55_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_plus_i55_C1r);
1252 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i55_C1l.value().M2re+L4ieee_Q12math_complex_Y7op_plus_i55_V2zr.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i55_C1l.value().M2im+L4ieee_Q12math_complex_Y7op_plus_i55_V2zr.value().M2im)));
1253 }
1254 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i58(const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i58_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_plus_i58_C1r)1255 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i58(const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i58_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_plus_i58_C1r)
1256 {
1257 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i58_C1l+L4ieee_Q12math_complex_Y7op_plus_i58_C1r.value().M2re))).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y7op_plus_i58_C1r.value().M2im));
1258 }
1259 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i61(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_plus_i61_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i61_C1r)1260 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i61(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_plus_i61_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i61_C1r)
1261 {
1262 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i61_C1l.value().M2re+L4ieee_Q12math_complex_Y7op_plus_i61_C1r))).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y7op_plus_i61_C1l.value().M2im));
1263 }
1264 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i64(const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i64_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_plus_i64_C1r)1265 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i64(const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i64_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_plus_i64_C1r)
1266 {
1267 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i64_V2zr;
1268 L4ieee_Q12math_complex_Y7op_plus_i64_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1269 L4ieee_Q12math_complex_Y7op_plus_i64_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_plus_i64_C1r);
1270 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i64_C1l+L4ieee_Q12math_complex_Y7op_plus_i64_V2zr.value().M2re))).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y7op_plus_i64_V2zr.value().M2im));
1271 }
1272 /* Implementation of subprogram :ieee:math_complex:"+" */
L4ieee_Q12math_complex_Y7op_plus_i67(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_plus_i67_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i67_C1r)1273 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i67(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_plus_i67_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_plus_i67_C1r)
1274 {
1275 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_plus_i67_V2zl;
1276 L4ieee_Q12math_complex_Y7op_plus_i67_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1277 L4ieee_Q12math_complex_Y7op_plus_i67_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_plus_i67_C1l);
1278 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_plus_i67_V2zl.value().M2re+L4ieee_Q12math_complex_Y7op_plus_i67_C1r))).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y7op_plus_i67_V2zl.value().M2im));
1279 }
1280 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i70(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i70_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i70_C1r)1281 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i70(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i70_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i70_C1r)
1282 {
1283 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i70_C1l.value().M2re-L4ieee_Q12math_complex_Y8op_minus_i70_C1r.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i70_C1l.value().M2im-L4ieee_Q12math_complex_Y8op_minus_i70_C1r.value().M2im)));
1284 }
1285 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i73(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i73_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i73_C1r)1286 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i73(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i73_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i73_C1r)
1287 {
1288 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i73_V2zr,L4ieee_Q12math_complex_Y8op_minus_i73_V2zl;
1289 L4ieee_Q12math_complex_Y8op_minus_i73_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1290 L4ieee_Q12math_complex_Y8op_minus_i73_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1291 L4ieee_Q12math_complex_Y8op_minus_i73_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y8op_minus_i73_C1l);
1292 L4ieee_Q12math_complex_Y8op_minus_i73_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y8op_minus_i73_C1r);
1293 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i73_V2zl.value().M2re-L4ieee_Q12math_complex_Y8op_minus_i73_V2zr.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i73_V2zl.value().M2im-L4ieee_Q12math_complex_Y8op_minus_i73_V2zr.value().M2im)));
1294 }
1295 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i76(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i76_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i76_C1r)1296 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i76(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i76_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i76_C1r)
1297 {
1298 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i76_V2zl;
1299 L4ieee_Q12math_complex_Y8op_minus_i76_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1300 L4ieee_Q12math_complex_Y8op_minus_i76_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y8op_minus_i76_C1l);
1301 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i76_V2zl.value().M2re-L4ieee_Q12math_complex_Y8op_minus_i76_C1r.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i76_V2zl.value().M2im-L4ieee_Q12math_complex_Y8op_minus_i76_C1r.value().M2im)));
1302 }
1303 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i79(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i79_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i79_C1r)1304 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i79(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i79_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i79_C1r)
1305 {
1306 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i79_V2zr;
1307 L4ieee_Q12math_complex_Y8op_minus_i79_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1308 L4ieee_Q12math_complex_Y8op_minus_i79_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y8op_minus_i79_C1r);
1309 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i79_C1l.value().M2re-L4ieee_Q12math_complex_Y8op_minus_i79_V2zr.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i79_C1l.value().M2im-L4ieee_Q12math_complex_Y8op_minus_i79_V2zr.value().M2im)));
1310 }
1311 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i82(const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i82_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i82_C1r)1312 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i82(const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i82_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i82_C1r)
1313 {
1314 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i82_C1l-L4ieee_Q12math_complex_Y8op_minus_i82_C1r.value().M2re))).aggregate_set(1,const_pointer((-(1.0*L4ieee_Q12math_complex_Y8op_minus_i82_C1r.value().M2im))));
1315 }
1316 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i85(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y8op_minus_i85_C1l,const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i85_C1r)1317 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i85(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y8op_minus_i85_C1l,const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i85_C1r)
1318 {
1319 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i85_C1l.value().M2re-L4ieee_Q12math_complex_Y8op_minus_i85_C1r))).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y8op_minus_i85_C1l.value().M2im));
1320 }
1321 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i88(const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i88_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i88_C1r)1322 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i88(const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i88_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i88_C1r)
1323 {
1324 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i88_V2zr;
1325 L4ieee_Q12math_complex_Y8op_minus_i88_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1326 L4ieee_Q12math_complex_Y8op_minus_i88_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y8op_minus_i88_C1r);
1327 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i88_C1l-L4ieee_Q12math_complex_Y8op_minus_i88_V2zr.value().M2re))).aggregate_set(1,const_pointer((-(1.0*L4ieee_Q12math_complex_Y8op_minus_i88_V2zr.value().M2im))));
1328 }
1329 /* Implementation of subprogram :ieee:math_complex:"-" */
L4ieee_Q12math_complex_Y8op_minus_i91(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y8op_minus_i91_C1l,const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i91_C1r)1330 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i91(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y8op_minus_i91_C1l,const floatingpoint L4ieee_Q12math_complex_Y8op_minus_i91_C1r)
1331 {
1332 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y8op_minus_i91_V2zl;
1333 L4ieee_Q12math_complex_Y8op_minus_i91_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1334 L4ieee_Q12math_complex_Y8op_minus_i91_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y8op_minus_i91_C1l);
1335 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y8op_minus_i91_V2zl.value().M2re-L4ieee_Q12math_complex_Y8op_minus_i91_C1r))).aggregate_set(1,const_pointer(L4ieee_Q12math_complex_Y8op_minus_i91_V2zl.value().M2im));
1336 }
1337 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i94(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_mult_i94_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_mult_i94_C1r)1338 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i94(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_mult_i94_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_mult_i94_C1r)
1339 {
1340 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(((L4ieee_Q12math_complex_Y7op_mult_i94_C1l.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i94_C1r.value().M2re)-(L4ieee_Q12math_complex_Y7op_mult_i94_C1l.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i94_C1r.value().M2im)))).aggregate_set(1,const_pointer(((L4ieee_Q12math_complex_Y7op_mult_i94_C1l.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i94_C1r.value().M2im)+(L4ieee_Q12math_complex_Y7op_mult_i94_C1l.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i94_C1r.value().M2re))));
1341 }
1342 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i97(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_mult_i97_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_mult_i97_C1r)1343 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i97(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_mult_i97_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_mult_i97_C1r)
1344 {
1345 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y7op_mult_i97_V4zout;
1346 L4ieee_Q12math_complex_Y7op_mult_i97_V4zout.init((&L4ieee_Q12math_complex_I13complex_polar_INFO));
1347 L4ieee_Q12math_complex_Y7op_mult_i97_V4zout.value().M3mag=(L4ieee_Q12math_complex_Y7op_mult_i97_C1l.value().M3mag*L4ieee_Q12math_complex_Y7op_mult_i97_C1r.value().M3mag);
1348 L4ieee_Q12math_complex_Y7op_mult_i97_V4zout.value().M3arg=(L4ieee_Q12math_complex_Y7op_mult_i97_C1l.value().M3arg+L4ieee_Q12math_complex_Y7op_mult_i97_C1r.value().M3arg);
1349 return L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_mult_i97_V4zout);
1350 }
1351 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i100(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_mult_i100_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_mult_i100_C1r)1352 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i100(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_mult_i100_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_mult_i100_C1r)
1353 {
1354 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i100_V2zl;
1355 L4ieee_Q12math_complex_Y7op_mult_i100_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1356 L4ieee_Q12math_complex_Y7op_mult_i100_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_mult_i100_C1l);
1357 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(((L4ieee_Q12math_complex_Y7op_mult_i100_V2zl.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i100_C1r.value().M2re)-(L4ieee_Q12math_complex_Y7op_mult_i100_V2zl.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i100_C1r.value().M2im)))).aggregate_set(1,const_pointer(((L4ieee_Q12math_complex_Y7op_mult_i100_V2zl.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i100_C1r.value().M2im)+(L4ieee_Q12math_complex_Y7op_mult_i100_V2zl.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i100_C1r.value().M2re))));
1358 }
1359 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i103(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_mult_i103_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_mult_i103_C1r)1360 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i103(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_mult_i103_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_mult_i103_C1r)
1361 {
1362 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i103_V2zr;
1363 L4ieee_Q12math_complex_Y7op_mult_i103_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1364 L4ieee_Q12math_complex_Y7op_mult_i103_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_mult_i103_C1r);
1365 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(((L4ieee_Q12math_complex_Y7op_mult_i103_C1l.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i103_V2zr.value().M2re)-(L4ieee_Q12math_complex_Y7op_mult_i103_C1l.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i103_V2zr.value().M2im)))).aggregate_set(1,const_pointer(((L4ieee_Q12math_complex_Y7op_mult_i103_C1l.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i103_V2zr.value().M2im)+(L4ieee_Q12math_complex_Y7op_mult_i103_C1l.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i103_V2zr.value().M2re))));
1366 }
1367 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i106(const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i106_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_mult_i106_C1r)1368 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i106(const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i106_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_mult_i106_C1r)
1369 {
1370 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i106_C1l*L4ieee_Q12math_complex_Y7op_mult_i106_C1r.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i106_C1l*L4ieee_Q12math_complex_Y7op_mult_i106_C1r.value().M2im)));
1371 }
1372 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i109(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y7op_mult_i109_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i109_C1r)1373 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i109(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y7op_mult_i109_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i109_C1r)
1374 {
1375 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i109_C1l.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i109_C1r))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i109_C1l.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i109_C1r)));
1376 }
1377 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i112(const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i112_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_mult_i112_C1r)1378 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i112(const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i112_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_mult_i112_C1r)
1379 {
1380 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i112_V2zr;
1381 L4ieee_Q12math_complex_Y7op_mult_i112_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1382 L4ieee_Q12math_complex_Y7op_mult_i112_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_mult_i112_C1r);
1383 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i112_C1l*L4ieee_Q12math_complex_Y7op_mult_i112_V2zr.value().M2re))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i112_C1l*L4ieee_Q12math_complex_Y7op_mult_i112_V2zr.value().M2im)));
1384 }
1385 /* Implementation of subprogram :ieee:math_complex:"*" */
L4ieee_Q12math_complex_Y7op_mult_i115(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y7op_mult_i115_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i115_C1r)1386 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i115(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y7op_mult_i115_C1l,const floatingpoint L4ieee_Q12math_complex_Y7op_mult_i115_C1r)
1387 {
1388 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y7op_mult_i115_V2zl;
1389 L4ieee_Q12math_complex_Y7op_mult_i115_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1390 L4ieee_Q12math_complex_Y7op_mult_i115_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y7op_mult_i115_C1l);
1391 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i115_V2zl.value().M2re*L4ieee_Q12math_complex_Y7op_mult_i115_C1r))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y7op_mult_i115_V2zl.value().M2im*L4ieee_Q12math_complex_Y7op_mult_i115_C1r)));
1392 }
1393 enumeration L4ieee_W12math_complex_itn20_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,44,48,41};
1394 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i118(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y6op_div_i118_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y6op_div_i118_C1r)1395 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i118(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y6op_div_i118_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y6op_div_i118_C1r)
1396 {
1397 floatingpoint L4ieee_Q12math_complex_Y6op_div_i118_V6magrsq;
1398 L4ieee_Q12math_complex_Y6op_div_i118_V6magrsq=(op_power(L4ieee_Q12math_complex_Y6op_div_i118_C1r.value().M2re,2)+op_power(L4ieee_Q12math_complex_Y6op_div_i118_C1r.value().M2im,2));
1399 if((L4ieee_Q12math_complex_Y6op_div_i118_V6magrsq==0.0)) {
1400 if(!enumeration(0))
1401 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+25,0),L4ieee_W12math_complex_itn20_lit),enumeration(2));
1402 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1403 } else {
1404 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((((L4ieee_Q12math_complex_Y6op_div_i118_C1l.value().M2re*L4ieee_Q12math_complex_Y6op_div_i118_C1r.value().M2re)+(L4ieee_Q12math_complex_Y6op_div_i118_C1l.value().M2im*L4ieee_Q12math_complex_Y6op_div_i118_C1r.value().M2im))/L4ieee_Q12math_complex_Y6op_div_i118_V6magrsq))).aggregate_set(1,const_pointer((((L4ieee_Q12math_complex_Y6op_div_i118_C1l.value().M2im*L4ieee_Q12math_complex_Y6op_div_i118_C1r.value().M2re)-(L4ieee_Q12math_complex_Y6op_div_i118_C1l.value().M2re*L4ieee_Q12math_complex_Y6op_div_i118_C1r.value().M2im))/L4ieee_Q12math_complex_Y6op_div_i118_V6magrsq)));
1405 }
1406 }
1407 enumeration L4ieee_W12math_complex_itn21_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,44,48,41};
1408 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i121(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y6op_div_i121_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y6op_div_i121_C1r)1409 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i121(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y6op_div_i121_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y6op_div_i121_C1r)
1410 {
1411 L4ieee_Q12math_complex_T13complex_polar L4ieee_Q12math_complex_Y6op_div_i121_V4zout;
1412 L4ieee_Q12math_complex_Y6op_div_i121_V4zout.init((&L4ieee_Q12math_complex_I13complex_polar_INFO));
1413 if((L4ieee_Q12math_complex_Y6op_div_i121_C1r.value().M3mag==0.0)) {
1414 if(!enumeration(0))
1415 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+25,0),L4ieee_W12math_complex_itn21_lit),enumeration(2));
1416 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1417 } else {
1418 L4ieee_Q12math_complex_Y6op_div_i121_V4zout.value().M3mag=(L4ieee_Q12math_complex_Y6op_div_i121_C1l.value().M3mag/L4ieee_Q12math_complex_Y6op_div_i121_C1r.value().M3mag);
1419 L4ieee_Q12math_complex_Y6op_div_i121_V4zout.value().M3arg=(L4ieee_Q12math_complex_Y6op_div_i121_C1l.value().M3arg-L4ieee_Q12math_complex_Y6op_div_i121_C1r.value().M3arg);
1420 return L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y6op_div_i121_V4zout);
1421 }
1422 }
1423 enumeration L4ieee_W12math_complex_itn22_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,46,48,44,48,46,48,41};
1424 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i124(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y6op_div_i124_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y6op_div_i124_C1r)1425 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i124(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y6op_div_i124_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y6op_div_i124_C1r)
1426 {
1427 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i124_V2zl;
1428 floatingpoint L4ieee_Q12math_complex_Y6op_div_i124_V4temp;
1429 L4ieee_Q12math_complex_Y6op_div_i124_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1430 L4ieee_Q12math_complex_Y6op_div_i124_V4temp=(op_power(L4ieee_Q12math_complex_Y6op_div_i124_C1r.value().M2re,2)+op_power(L4ieee_Q12math_complex_Y6op_div_i124_C1r.value().M2im,2));
1431 if((L4ieee_Q12math_complex_Y6op_div_i124_V4temp==0.0)) {
1432 if(!enumeration(0))
1433 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W12math_complex_itn22_lit),enumeration(2));
1434 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1435 } else {
1436 L4ieee_Q12math_complex_Y6op_div_i124_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y6op_div_i124_C1l);
1437 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((((L4ieee_Q12math_complex_Y6op_div_i124_V2zl.value().M2re*L4ieee_Q12math_complex_Y6op_div_i124_C1r.value().M2re)+(L4ieee_Q12math_complex_Y6op_div_i124_V2zl.value().M2im*L4ieee_Q12math_complex_Y6op_div_i124_C1r.value().M2im))/L4ieee_Q12math_complex_Y6op_div_i124_V4temp))).aggregate_set(1,const_pointer((((L4ieee_Q12math_complex_Y6op_div_i124_V2zl.value().M2im*L4ieee_Q12math_complex_Y6op_div_i124_C1r.value().M2re)-(L4ieee_Q12math_complex_Y6op_div_i124_V2zl.value().M2re*L4ieee_Q12math_complex_Y6op_div_i124_C1r.value().M2im))/L4ieee_Q12math_complex_Y6op_div_i124_V4temp)));
1438 }
1439 }
1440 enumeration L4ieee_W12math_complex_itn23_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,46,48,44,48,46,48,41};
1441 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i127(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y6op_div_i127_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y6op_div_i127_C1r)1442 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i127(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y6op_div_i127_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y6op_div_i127_C1r)
1443 {
1444 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i127_V2zr;
1445 floatingpoint L4ieee_Q12math_complex_Y6op_div_i127_V4temp;
1446 L4ieee_Q12math_complex_Y6op_div_i127_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1447 L4ieee_Q12math_complex_Y6op_div_i127_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y6op_div_i127_C1r);
1448 L4ieee_Q12math_complex_Y6op_div_i127_V4temp=(op_power(L4ieee_Q12math_complex_Y6op_div_i127_V2zr.value().M2re,2)+op_power(L4ieee_Q12math_complex_Y6op_div_i127_V2zr.value().M2im,2));
1449 if(((L4ieee_Q12math_complex_Y6op_div_i127_C1r.value().M3mag==0.0)||(L4ieee_Q12math_complex_Y6op_div_i127_V4temp==0.0))) {
1450 if(!enumeration(0))
1451 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W12math_complex_itn23_lit),enumeration(2));
1452 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1453 } else {
1454 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((((L4ieee_Q12math_complex_Y6op_div_i127_C1l.value().M2re*L4ieee_Q12math_complex_Y6op_div_i127_V2zr.value().M2re)+(L4ieee_Q12math_complex_Y6op_div_i127_C1l.value().M2im*L4ieee_Q12math_complex_Y6op_div_i127_V2zr.value().M2im))/L4ieee_Q12math_complex_Y6op_div_i127_V4temp))).aggregate_set(1,const_pointer((((L4ieee_Q12math_complex_Y6op_div_i127_C1l.value().M2im*L4ieee_Q12math_complex_Y6op_div_i127_V2zr.value().M2re)-(L4ieee_Q12math_complex_Y6op_div_i127_C1l.value().M2re*L4ieee_Q12math_complex_Y6op_div_i127_V2zr.value().M2im))/L4ieee_Q12math_complex_Y6op_div_i127_V4temp)));
1455 }
1456 }
1457 enumeration L4ieee_W12math_complex_itn24_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,46,48,44,48,46,48,41};
1458 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i130(const floatingpoint L4ieee_Q12math_complex_Y6op_div_i130_C1l,const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y6op_div_i130_C1r)1459 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i130(const floatingpoint L4ieee_Q12math_complex_Y6op_div_i130_C1l,const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y6op_div_i130_C1r)
1460 {
1461 floatingpoint L4ieee_Q12math_complex_Y6op_div_i130_V4temp;
1462 L4ieee_Q12math_complex_Y6op_div_i130_V4temp=(op_power(L4ieee_Q12math_complex_Y6op_div_i130_C1r.value().M2re,2)+op_power(L4ieee_Q12math_complex_Y6op_div_i130_C1r.value().M2im,2));
1463 if((L4ieee_Q12math_complex_Y6op_div_i130_V4temp==0.0)) {
1464 if(!enumeration(0))
1465 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W12math_complex_itn24_lit),enumeration(2));
1466 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1467 } else {
1468 L4ieee_Q12math_complex_Y6op_div_i130_V4temp=(L4ieee_Q12math_complex_Y6op_div_i130_C1l/L4ieee_Q12math_complex_Y6op_div_i130_V4temp);
1469 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y6op_div_i130_V4temp*L4ieee_Q12math_complex_Y6op_div_i130_C1r.value().M2re))).aggregate_set(1,const_pointer((-(L4ieee_Q12math_complex_Y6op_div_i130_V4temp*L4ieee_Q12math_complex_Y6op_div_i130_C1r.value().M2im))));
1470 }
1471 }
1472 enumeration L4ieee_W12math_complex_itn25_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,46,48,44,48,46,48,41};
1473 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i133(const L4ieee_Q12math_complex_T7complex & L4ieee_Q12math_complex_Y6op_div_i133_C1l,const floatingpoint L4ieee_Q12math_complex_Y6op_div_i133_C1r)1474 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i133(const L4ieee_Q12math_complex_T7complex &L4ieee_Q12math_complex_Y6op_div_i133_C1l,const floatingpoint L4ieee_Q12math_complex_Y6op_div_i133_C1r)
1475 {
1476 if((L4ieee_Q12math_complex_Y6op_div_i133_C1r==0.0)) {
1477 if(!enumeration(0))
1478 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W12math_complex_itn25_lit),enumeration(2));
1479 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1480 } else {
1481 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y6op_div_i133_C1l.value().M2re/L4ieee_Q12math_complex_Y6op_div_i133_C1r))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y6op_div_i133_C1l.value().M2im/L4ieee_Q12math_complex_Y6op_div_i133_C1r)));
1482 }
1483 }
1484 enumeration L4ieee_W12math_complex_itn26_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,46,48,44,48,46,48,41};
1485 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i136(const floatingpoint L4ieee_Q12math_complex_Y6op_div_i136_C1l,const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y6op_div_i136_C1r)1486 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i136(const floatingpoint L4ieee_Q12math_complex_Y6op_div_i136_C1l,const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y6op_div_i136_C1r)
1487 {
1488 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i136_V2zr;
1489 floatingpoint L4ieee_Q12math_complex_Y6op_div_i136_V4temp;
1490 L4ieee_Q12math_complex_Y6op_div_i136_V2zr.init((&L4ieee_Q12math_complex_I7complex_INFO));
1491 L4ieee_Q12math_complex_Y6op_div_i136_V2zr=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y6op_div_i136_C1r);
1492 L4ieee_Q12math_complex_Y6op_div_i136_V4temp=(op_power(L4ieee_Q12math_complex_Y6op_div_i136_V2zr.value().M2re,2)+op_power(L4ieee_Q12math_complex_Y6op_div_i136_V2zr.value().M2im,2));
1493 if(((L4ieee_Q12math_complex_Y6op_div_i136_C1r.value().M3mag==0.0)||(L4ieee_Q12math_complex_Y6op_div_i136_V4temp==0.0))) {
1494 if(!enumeration(0))
1495 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W12math_complex_itn26_lit),enumeration(2));
1496 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1497 } else {
1498 L4ieee_Q12math_complex_Y6op_div_i136_V4temp=(L4ieee_Q12math_complex_Y6op_div_i136_C1l/L4ieee_Q12math_complex_Y6op_div_i136_V4temp);
1499 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y6op_div_i136_V4temp*L4ieee_Q12math_complex_Y6op_div_i136_V2zr.value().M2re))).aggregate_set(1,const_pointer((-(L4ieee_Q12math_complex_Y6op_div_i136_V4temp*L4ieee_Q12math_complex_Y6op_div_i136_V2zr.value().M2im))));
1500 }
1501 }
1502 enumeration L4ieee_W12math_complex_itn27_lit[]={65,116,116,101,109,112,116,32,116,111,32,100,105,118,105,100,101,32,98,121,32,40,48,46,48,44,48,46,48,41};
1503 /* Implementation of subprogram :ieee:math_complex:"/" */
L4ieee_Q12math_complex_Y6op_div_i139(const L4ieee_Q12math_complex_T13complex_polar & L4ieee_Q12math_complex_Y6op_div_i139_C1l,const floatingpoint L4ieee_Q12math_complex_Y6op_div_i139_C1r)1504 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i139(const L4ieee_Q12math_complex_T13complex_polar &L4ieee_Q12math_complex_Y6op_div_i139_C1l,const floatingpoint L4ieee_Q12math_complex_Y6op_div_i139_C1r)
1505 {
1506 L4ieee_Q12math_complex_T7complex L4ieee_Q12math_complex_Y6op_div_i139_V2zl;
1507 L4ieee_Q12math_complex_Y6op_div_i139_V2zl.init((&L4ieee_Q12math_complex_I7complex_INFO));
1508 L4ieee_Q12math_complex_Y6op_div_i139_V2zl=L4ieee_Q12math_complex_Y16polar_to_complex_i43 (L4ieee_Q12math_complex_Y6op_div_i139_C1l);
1509 if((L4ieee_Q12math_complex_Y6op_div_i139_C1r==0.0)) {
1510 if(!enumeration(0))
1511 report(array_alias<L3std_Q8standard_T6string >(new array_info((&L3std_Q8standard_I6string_INFO)->element_type,(&L3std_Q8standard_I6string_INFO)->index_type,1,to,1+29,0),L4ieee_W12math_complex_itn27_lit),enumeration(2));
1512 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer(9.9999999999999998603e+306)).aggregate_set(1,const_pointer(9.9999999999999998603e+306));
1513 } else {
1514 return L4ieee_Q12math_complex_T7complex().init((&L4ieee_Q12math_complex_I7complex_INFO)).aggregate_set(0,const_pointer((L4ieee_Q12math_complex_Y6op_div_i139_V2zl.value().M2re/L4ieee_Q12math_complex_Y6op_div_i139_C1r))).aggregate_set(1,const_pointer((L4ieee_Q12math_complex_Y6op_div_i139_V2zl.value().M2im/L4ieee_Q12math_complex_Y6op_div_i139_C1r)));
1515 }
1516 }
1517 /* Initialization function for package body :ieee:math_complex */
1518 int L4ieee_Q12math_complex_init ();
1519 int L3std_Q8standard_init ();
1520 int L4ieee_Q9math_real_init ();
1521 bool L4ieee_W12math_complex_init_done = false;
L4ieee_W12math_complex_init()1522 int L4ieee_W12math_complex_init(){
1523 if (L4ieee_W12math_complex_init_done) return 1;
1524 L4ieee_W12math_complex_init_done=true;
1525 L4ieee_Q12math_complex_init ();
1526 L3std_Q8standard_init ();
1527 L4ieee_Q9math_real_init ();
1528 register_source_file("/home/stefan/cvs-local/freehdl-teaser/ieee/math_real.vhdl","math_real.vhdl");
1529 name_stack iname;
1530 iname.push("");
1531 void *sref=register_package_body(":ieee",":math_complex");
1532 iname.pop();
1533 return 1;
1534 }
1535 /* handle for simulator to find package body initialization function */
1536 handle_info *L4ieee_W12math_complex_hinfo =
1537 add_handle("ieee","math_complex",NULL,NULL,&L4ieee_W12math_complex_init);
1538
1539 /* end of package body :ieee:math_complex */
1540