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