1 | /* Function tanf vectorized with AVX2. |
2 | Copyright (C) 2021-2024 Free Software Foundation, Inc. |
3 | This file is part of the GNU C Library. |
4 | |
5 | The GNU C Library is free software; you can redistribute it and/or |
6 | modify it under the terms of the GNU Lesser General Public |
7 | License as published by the Free Software Foundation; either |
8 | version 2.1 of the License, or (at your option) any later version. |
9 | |
10 | The GNU C Library is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
13 | Lesser General Public License for more details. |
14 | |
15 | You should have received a copy of the GNU Lesser General Public |
16 | License along with the GNU C Library; if not, see |
17 | https://www.gnu.org/licenses/. */ |
18 | |
19 | /* |
20 | * ALGORITHM DESCRIPTION: |
21 | * |
22 | * 1) Range reduction to [-Pi/4; +Pi/4] interval |
23 | * a) Grab sign from source argument and save it. |
24 | * b) Remove sign using AND 0x7fffffff operation |
25 | * c) Getting octant Y by 2/Pi multiplication |
26 | * d) Add "Right Shifter" (0x4B000000) value |
27 | * e) Treat obtained value as integer for destination sign setting. |
28 | * Shift first bit of this value to the last (sign) position (S << 31) |
29 | * f) Change destination sign if source sign is negative |
30 | * using XOR operation. |
31 | * g) Subtract "Right Shifter" (0x4B000000) value |
32 | * h) Subtract Y*(PI/2) from X argument, where PI/2 divided to 4 parts: |
33 | * X = X - Y*PI1 - Y*PI2 - Y*PI3 - Y*PI4; |
34 | * 2) Rational polynomial approximation ( at [-Pi/4; +Pi/4] interval) |
35 | * a) Calculate X^2 = X * X |
36 | * b) Calculate 2 polynomials: |
37 | * P = X * (P0 + X^2 * P1); |
38 | * Q = Q0 + X^2 * (Q1 + x^2 * Q2); |
39 | * c) Swap P and Q if first bit of obtained value after |
40 | * Right Shifting is set to 1. Using And, Andnot & Or operations. |
41 | * d) Divide R = P / Q; |
42 | * 3) Destination sign setting |
43 | * a) Set shifted destination sign using XOR operation: |
44 | * R = XOR( R, S ); |
45 | * |
46 | */ |
47 | |
48 | /* Offsets for data table __svml_stan_data_internal |
49 | */ |
50 | #define _sInvPI_uisa 0 |
51 | #define _sPI1_uisa 32 |
52 | #define _sPI2_uisa 64 |
53 | #define _sPI3_uisa 96 |
54 | #define _sPI2_ha_uisa 128 |
55 | #define _sPI3_ha_uisa 160 |
56 | #define Th_tbl_uisa 192 |
57 | #define Tl_tbl_uisa 320 |
58 | #define _sPC3_uisa 448 |
59 | #define _sPC5_uisa 480 |
60 | #define _sRangeReductionVal_uisa 512 |
61 | #define _sInvPi 544 |
62 | #define _sSignMask 576 |
63 | #define _sAbsMask 608 |
64 | #define _sRangeVal 640 |
65 | #define _sRShifter 672 |
66 | #define _sOne 704 |
67 | #define _sRangeReductionVal 736 |
68 | #define _sPI1 768 |
69 | #define _sPI2 800 |
70 | #define _sPI3 832 |
71 | #define _sPI4 864 |
72 | #define _sPI1_FMA 896 |
73 | #define _sPI2_FMA 928 |
74 | #define _sPI3_FMA 960 |
75 | #define _sP0 992 |
76 | #define _sP1 1024 |
77 | #define _sQ0 1056 |
78 | #define _sQ1 1088 |
79 | #define _sQ2 1120 |
80 | #define _sTwo 1152 |
81 | #define _sCoeffs 1184 |
82 | |
83 | #include <sysdep.h> |
84 | |
85 | .section .text.avx2, "ax" , @progbits |
86 | ENTRY(_ZGVdN8v_tanf_avx2) |
87 | pushq %rbp |
88 | cfi_def_cfa_offset(16) |
89 | movq %rsp, %rbp |
90 | cfi_def_cfa(6, 16) |
91 | cfi_offset(6, -16) |
92 | andq $-32, %rsp |
93 | pushq %rbx |
94 | subq $184, %rsp |
95 | |
96 | /* |
97 | * Legacy Code |
98 | * Here HW FMA can be unavailable |
99 | */ |
100 | xorl %eax, %eax |
101 | vmovups _sAbsMask+__svml_stan_data_internal(%rip), %ymm10 |
102 | |
103 | /* |
104 | * |
105 | * Main path (_LA_ and _EP_) |
106 | * |
107 | * Octant calculation |
108 | */ |
109 | vmovups _sInvPi+__svml_stan_data_internal(%rip), %ymm5 |
110 | vmovups _sRShifter+__svml_stan_data_internal(%rip), %ymm2 |
111 | |
112 | /* Range reduction */ |
113 | vmovups _sPI1_FMA+__svml_stan_data_internal(%rip), %ymm3 |
114 | |
115 | /* Rational approximation */ |
116 | vmovups _sP1+__svml_stan_data_internal(%rip), %ymm9 |
117 | vmovaps %ymm0, %ymm12 |
118 | vandps %ymm10, %ymm12, %ymm1 |
119 | vfmadd213ps %ymm2, %ymm1, %ymm5 |
120 | vsubps %ymm2, %ymm5, %ymm8 |
121 | vpslld $30, %ymm5, %ymm6 |
122 | |
123 | /* Inversion mask and sign calculation */ |
124 | vpslld $31, %ymm5, %ymm4 |
125 | vfnmadd213ps %ymm1, %ymm8, %ymm3 |
126 | vfnmadd231ps _sPI2_FMA+__svml_stan_data_internal(%rip), %ymm8, %ymm3 |
127 | vfnmadd132ps _sPI3_FMA+__svml_stan_data_internal(%rip), %ymm3, %ymm8 |
128 | vmovups _sQ2+__svml_stan_data_internal(%rip), %ymm3 |
129 | vmulps %ymm8, %ymm8, %ymm13 |
130 | vfmadd213ps _sQ1+__svml_stan_data_internal(%rip), %ymm13, %ymm3 |
131 | vfmadd213ps _sP0+__svml_stan_data_internal(%rip), %ymm13, %ymm9 |
132 | vfmadd213ps _sQ0+__svml_stan_data_internal(%rip), %ymm13, %ymm3 |
133 | vmulps %ymm9, %ymm8, %ymm8 |
134 | vxorps %ymm7, %ymm7, %ymm7 |
135 | vcmpneqps %ymm7, %ymm6, %ymm2 |
136 | vandnps %ymm12, %ymm10, %ymm11 |
137 | vxorps %ymm11, %ymm4, %ymm0 |
138 | |
139 | /* Exchanged numerator and denominator if necessary */ |
140 | vandnps %ymm8, %ymm2, %ymm14 |
141 | vandps %ymm3, %ymm2, %ymm15 |
142 | vandps %ymm8, %ymm2, %ymm4 |
143 | vandnps %ymm3, %ymm2, %ymm5 |
144 | vorps %ymm15, %ymm14, %ymm6 |
145 | vorps %ymm5, %ymm4, %ymm7 |
146 | |
147 | /* Division */ |
148 | vdivps %ymm7, %ymm6, %ymm9 |
149 | |
150 | /* Large values check */ |
151 | vcmpnle_uqps _sRangeReductionVal+__svml_stan_data_internal(%rip), %ymm1, %ymm10 |
152 | vmovmskps %ymm10, %edx |
153 | |
154 | /* Sign setting */ |
155 | vxorps %ymm0, %ymm9, %ymm0 |
156 | |
157 | /* |
158 | * |
159 | * End of main path (_LA_ and _EP_) |
160 | */ |
161 | |
162 | testl %edx, %edx |
163 | |
164 | /* Go to auxiliary branch */ |
165 | jne L(AUX_BRANCH) |
166 | /* DW_CFA_expression: r3 (rbx) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -32; DW_OP_and; DW_OP_const4s: -8; DW_OP_plus) */ |
167 | .cfi_escape 0x10, 0x03, 0x0e, 0x38, 0x1c, 0x0d, 0xe0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf8, 0xff, 0xff, 0xff, 0x22 |
168 | # LOE r12 r13 r14 r15 eax ymm0 ymm1 ymm10 ymm11 ymm12 |
169 | |
170 | /* Return from auxiliary branch |
171 | * for out of main path inputs |
172 | */ |
173 | |
174 | L(AUX_BRANCH_RETURN): |
175 | testl %eax, %eax |
176 | |
177 | /* Go to special inputs processing branch */ |
178 | jne L(SPECIAL_VALUES_BRANCH) |
179 | # LOE r12 r13 r14 r15 eax ymm0 ymm12 |
180 | |
181 | /* Restore registers |
182 | * and exit the function |
183 | */ |
184 | |
185 | L(EXIT): |
186 | addq $184, %rsp |
187 | cfi_restore(3) |
188 | popq %rbx |
189 | movq %rbp, %rsp |
190 | popq %rbp |
191 | cfi_def_cfa(7, 8) |
192 | cfi_restore(6) |
193 | ret |
194 | cfi_def_cfa(6, 16) |
195 | /* DW_CFA_expression: r3 (rbx) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -32; DW_OP_and; DW_OP_const4s: -8; DW_OP_plus) */ |
196 | .cfi_escape 0x10, 0x03, 0x0e, 0x38, 0x1c, 0x0d, 0xe0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf8, 0xff, 0xff, 0xff, 0x22 |
197 | cfi_offset(6, -16) |
198 | |
199 | /* Branch to process |
200 | * special inputs |
201 | */ |
202 | |
203 | L(SPECIAL_VALUES_BRANCH): |
204 | vmovups %ymm12, 32(%rsp) |
205 | vmovups %ymm0, 64(%rsp) |
206 | # LOE r12 r13 r14 r15 eax ymm0 |
207 | |
208 | xorl %ebx, %ebx |
209 | # LOE r12 r13 r14 r15 eax ebx |
210 | |
211 | vzeroupper |
212 | movq %r12, 8(%rsp) |
213 | /* DW_CFA_expression: r12 (r12) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -32; DW_OP_and; DW_OP_const4s: -184; DW_OP_plus) */ |
214 | .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xe0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 |
215 | movl %eax, %r12d |
216 | movq %r13, (%rsp) |
217 | /* DW_CFA_expression: r13 (r13) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -32; DW_OP_and; DW_OP_const4s: -192; DW_OP_plus) */ |
218 | .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xe0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 |
219 | # LOE r14 r15 ebx r12d |
220 | |
221 | /* Range mask |
222 | * bits check |
223 | */ |
224 | |
225 | L(RANGEMASK_CHECK): |
226 | btl %ebx, %r12d |
227 | |
228 | /* Call scalar math function */ |
229 | jc L(SCALAR_MATH_CALL) |
230 | # LOE r14 r15 ebx r12d |
231 | |
232 | /* Special inputs |
233 | * processing loop |
234 | */ |
235 | |
236 | L(SPECIAL_VALUES_LOOP): |
237 | incl %ebx |
238 | cmpl $8, %ebx |
239 | |
240 | /* Check bits in range mask */ |
241 | jl L(RANGEMASK_CHECK) |
242 | # LOE r14 r15 ebx r12d |
243 | |
244 | movq 8(%rsp), %r12 |
245 | cfi_restore(12) |
246 | movq (%rsp), %r13 |
247 | cfi_restore(13) |
248 | vmovups 64(%rsp), %ymm0 |
249 | |
250 | /* Go to exit */ |
251 | jmp L(EXIT) |
252 | /* DW_CFA_expression: r12 (r12) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -32; DW_OP_and; DW_OP_const4s: -184; DW_OP_plus) */ |
253 | .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xe0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 |
254 | /* DW_CFA_expression: r13 (r13) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -32; DW_OP_and; DW_OP_const4s: -192; DW_OP_plus) */ |
255 | .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xe0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 |
256 | # LOE r12 r13 r14 r15 ymm0 |
257 | |
258 | /* Scalar math function call |
259 | * to process special input |
260 | */ |
261 | |
262 | L(SCALAR_MATH_CALL): |
263 | movl %ebx, %r13d |
264 | vmovss 32(%rsp, %r13, 4), %xmm0 |
265 | call tanf@PLT |
266 | # LOE r13 r14 r15 ebx r12d xmm0 |
267 | |
268 | vmovss %xmm0, 64(%rsp, %r13, 4) |
269 | |
270 | /* Process special inputs in loop */ |
271 | jmp L(SPECIAL_VALUES_LOOP) |
272 | cfi_restore(12) |
273 | cfi_restore(13) |
274 | # LOE r14 r15 ebx r12d |
275 | |
276 | /* Auxiliary branch |
277 | * for out of main path inputs |
278 | */ |
279 | |
280 | L(AUX_BRANCH): |
281 | vpand .FLT_16(%rip), %ymm1, %ymm5 |
282 | |
283 | /* |
284 | * Get the (2^a / 2pi) mod 1 values from the table. |
285 | * Because doesn't have I-type gather, we need a trivial cast |
286 | */ |
287 | lea __svml_stan_reduction_data_internal(%rip), %rdx |
288 | vmovups %ymm11, 64(%rsp) |
289 | vmovups .FLT_15(%rip), %ymm7 |
290 | vmovups %ymm10, 96(%rsp) |
291 | vmovups %ymm0, 128(%rsp) |
292 | vpsrld $23, %ymm5, %ymm6 |
293 | vpslld $1, %ymm6, %ymm11 |
294 | vpaddd %ymm6, %ymm11, %ymm13 |
295 | vpslld $2, %ymm13, %ymm15 |
296 | vandps %ymm7, %ymm12, %ymm14 |
297 | vcmpeqps %ymm7, %ymm14, %ymm10 |
298 | vmovmskps %ymm10, %eax |
299 | vextractf128 $1, %ymm15, %xmm7 |
300 | vmovd %xmm15, %ecx |
301 | vmovd %xmm7, %r8d |
302 | vmovd (%rcx, %rdx), %xmm8 |
303 | vpextrd $1, %xmm15, %ebx |
304 | vpextrd $2, %xmm15, %esi |
305 | vpextrd $3, %xmm15, %edi |
306 | vpextrd $1, %xmm7, %r10d |
307 | vpextrd $2, %xmm7, %r9d |
308 | vpextrd $3, %xmm7, %r11d |
309 | vmovd (%rbx, %rdx), %xmm3 |
310 | vmovd (%rsi, %rdx), %xmm2 |
311 | vmovd (%rdi, %rdx), %xmm14 |
312 | vmovd (%r8, %rdx), %xmm10 |
313 | vmovd (%r10, %rdx), %xmm5 |
314 | vmovd (%r9, %rdx), %xmm11 |
315 | vmovd (%r11, %rdx), %xmm6 |
316 | vpunpckldq %xmm3, %xmm8, %xmm4 |
317 | vpunpckldq %xmm14, %xmm2, %xmm0 |
318 | vpunpckldq %xmm5, %xmm10, %xmm13 |
319 | vpunpckldq %xmm6, %xmm11, %xmm15 |
320 | vpunpcklqdq %xmm0, %xmm4, %xmm9 |
321 | vmovd 4(%rcx, %rdx), %xmm3 |
322 | vmovd 4(%rbx, %rdx), %xmm2 |
323 | vmovd 4(%rsi, %rdx), %xmm14 |
324 | vmovd 4(%rdi, %rdx), %xmm4 |
325 | vpunpcklqdq %xmm15, %xmm13, %xmm8 |
326 | vmovd 4(%r8, %rdx), %xmm5 |
327 | vmovd 4(%r10, %rdx), %xmm6 |
328 | vmovd 4(%r9, %rdx), %xmm13 |
329 | vmovd 4(%r11, %rdx), %xmm15 |
330 | vpunpckldq %xmm2, %xmm3, %xmm0 |
331 | vpunpckldq %xmm4, %xmm14, %xmm7 |
332 | vpunpckldq %xmm15, %xmm13, %xmm3 |
333 | vpunpcklqdq %xmm7, %xmm0, %xmm10 |
334 | vmovd 8(%rsi, %rdx), %xmm0 |
335 | vmovd 8(%rdi, %rdx), %xmm7 |
336 | vmovd 8(%rcx, %rdx), %xmm14 |
337 | vmovd 8(%rbx, %rdx), %xmm4 |
338 | vmovd 8(%r8, %rdx), %xmm15 |
339 | vinsertf128 $1, %xmm8, %ymm9, %ymm11 |
340 | vpunpckldq %xmm6, %xmm5, %xmm8 |
341 | vpunpcklqdq %xmm3, %xmm8, %xmm2 |
342 | vpunpckldq %xmm7, %xmm0, %xmm6 |
343 | |
344 | /* |
345 | * Also get the significand as an integer |
346 | * NB: adding in the integer bit is wrong for denorms! |
347 | * To make this work for denorms we should do something slightly different |
348 | */ |
349 | vpand .FLT_17(%rip), %ymm1, %ymm7 |
350 | vmovd 8(%r10, %rdx), %xmm8 |
351 | vmovd 8(%r9, %rdx), %xmm3 |
352 | vpunpckldq %xmm4, %xmm14, %xmm5 |
353 | vpunpckldq %xmm8, %xmm15, %xmm14 |
354 | |
355 | /* Load constants (not all needed at once) */ |
356 | lea _sCoeffs+36+__svml_stan_data_internal(%rip), %r9 |
357 | vpunpcklqdq %xmm6, %xmm5, %xmm13 |
358 | vpaddd .FLT_18(%rip), %ymm7, %ymm5 |
359 | vinsertf128 $1, %xmm2, %ymm10, %ymm9 |
360 | vmovd 8(%r11, %rdx), %xmm2 |
361 | vpunpckldq %xmm2, %xmm3, %xmm4 |
362 | vpunpcklqdq %xmm4, %xmm14, %xmm0 |
363 | |
364 | /* |
365 | * Break the P_xxx and m into 16-bit chunks ready for |
366 | * the long multiplication via 16x16->32 multiplications |
367 | */ |
368 | vmovdqu .FLT_19(%rip), %ymm14 |
369 | vpsrld $16, %ymm5, %ymm10 |
370 | vpand %ymm14, %ymm5, %ymm5 |
371 | vpand %ymm14, %ymm9, %ymm3 |
372 | vpand %ymm14, %ymm11, %ymm7 |
373 | vpsrld $16, %ymm11, %ymm11 |
374 | vpmulld %ymm3, %ymm5, %ymm8 |
375 | vpmulld %ymm3, %ymm10, %ymm3 |
376 | vinsertf128 $1, %xmm0, %ymm13, %ymm13 |
377 | vpsrld $16, %ymm13, %ymm6 |
378 | vpand %ymm14, %ymm13, %ymm15 |
379 | vpsrld $16, %ymm9, %ymm0 |
380 | vpmulld %ymm6, %ymm10, %ymm13 |
381 | vpmulld %ymm6, %ymm5, %ymm6 |
382 | vpsrld $16, %ymm6, %ymm6 |
383 | vpmulld %ymm15, %ymm10, %ymm4 |
384 | vpand %ymm14, %ymm8, %ymm15 |
385 | vpaddd %ymm6, %ymm13, %ymm13 |
386 | vpsrld $16, %ymm4, %ymm4 |
387 | vpsrld $16, %ymm8, %ymm8 |
388 | vpaddd %ymm13, %ymm15, %ymm15 |
389 | vpmulld %ymm0, %ymm5, %ymm2 |
390 | vpaddd %ymm15, %ymm4, %ymm13 |
391 | vpand %ymm14, %ymm2, %ymm4 |
392 | vpaddd %ymm8, %ymm3, %ymm15 |
393 | vpsrld $16, %ymm2, %ymm2 |
394 | vpsrld $16, %ymm13, %ymm6 |
395 | |
396 | /* Assemble reduced argument from the pieces */ |
397 | vpand %ymm14, %ymm13, %ymm13 |
398 | vpaddd %ymm15, %ymm4, %ymm8 |
399 | vpmulld %ymm7, %ymm5, %ymm9 |
400 | vpmulld %ymm0, %ymm10, %ymm0 |
401 | vpaddd %ymm8, %ymm6, %ymm4 |
402 | vpand %ymm14, %ymm9, %ymm6 |
403 | vpaddd %ymm2, %ymm0, %ymm8 |
404 | vpsrld $16, %ymm9, %ymm3 |
405 | vpsrld $16, %ymm4, %ymm15 |
406 | vpslld $16, %ymm4, %ymm4 |
407 | vpaddd %ymm8, %ymm6, %ymm6 |
408 | vpaddd %ymm6, %ymm15, %ymm0 |
409 | vpmulld %ymm11, %ymm5, %ymm6 |
410 | |
411 | /* Now do the big multiplication and carry propagation */ |
412 | vpmulld %ymm7, %ymm10, %ymm8 |
413 | vpand %ymm14, %ymm6, %ymm2 |
414 | vpaddd %ymm3, %ymm8, %ymm5 |
415 | vpsrld $16, %ymm0, %ymm15 |
416 | vpand %ymm14, %ymm0, %ymm0 |
417 | |
418 | /* |
419 | * We want to incorporate the original sign now too. |
420 | * Do it here for convenience in getting the right N value, |
421 | * though we could wait right to the end if we were prepared |
422 | * to modify the sign of N later too. |
423 | * So get the appropriate sign mask now (or sooner). |
424 | */ |
425 | vpand .FLT_20(%rip), %ymm1, %ymm3 |
426 | vpaddd %ymm5, %ymm2, %ymm7 |
427 | vpaddd %ymm13, %ymm4, %ymm8 |
428 | |
429 | /* |
430 | * Now round at the 2^-8 bit position for reduction mod pi/2^7 |
431 | * instead of the original 2pi (but still with the same 2pi scaling). |
432 | * Use a shifter of 2^15 + 2^14. |
433 | * The N we get is our final version; it has an offset of |
434 | * 2^8 because of the implicit integer bit, and anyway for negative |
435 | * starting value it's a 2s complement thing. But we need to mask |
436 | * off the exponent part anyway so it's fine. |
437 | */ |
438 | vmovups .FLT_22(%rip), %ymm14 |
439 | vpaddd %ymm7, %ymm15, %ymm15 |
440 | |
441 | /* |
442 | * Create floating-point high part, implicitly adding integer bit 1 |
443 | * Incorporate overall sign at this stage too. |
444 | */ |
445 | vpxor .FLT_21(%rip), %ymm3, %ymm11 |
446 | |
447 | /* |
448 | * Create floating-point low and medium parts, respectively |
449 | * lo_17, ... lo_0, 0, ..., 0 |
450 | * hi_8, ... hi_0, lo_31, ..., lo_18 |
451 | * then subtract off the implicitly added integer bits, |
452 | * 2^-46 and 2^-23, respectively. |
453 | * Put the original sign into all of them at this stage. |
454 | */ |
455 | vpxor .FLT_23(%rip), %ymm3, %ymm7 |
456 | vpslld $16, %ymm15, %ymm9 |
457 | vpaddd %ymm0, %ymm9, %ymm2 |
458 | vpand .FLT_24(%rip), %ymm8, %ymm0 |
459 | vpsrld $18, %ymm8, %ymm8 |
460 | vpsrld $9, %ymm2, %ymm10 |
461 | vpslld $5, %ymm0, %ymm4 |
462 | vpor %ymm11, %ymm10, %ymm6 |
463 | vpxor .FLT_25(%rip), %ymm3, %ymm11 |
464 | vpand .FLT_26(%rip), %ymm2, %ymm3 |
465 | vpor %ymm7, %ymm4, %ymm5 |
466 | |
467 | /* |
468 | * If the magnitude of the input is <= 2^-20, then |
469 | * just pass through the input, since no reduction will be needed and |
470 | * the main path will only work accurately if the reduced argument is |
471 | * about >= 2^-40 (which it is for all large pi multiples) |
472 | */ |
473 | vmovups .FLT_30(%rip), %ymm4 |
474 | vpslld $14, %ymm3, %ymm2 |
475 | |
476 | /* |
477 | * Now multiply those numbers all by 2 pi, reasonably accurately. |
478 | * (RHi + RLo) * (pi_lead + pi_trail) ~= |
479 | * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead) |
480 | */ |
481 | vmovups .FLT_27(%rip), %ymm3 |
482 | vaddps %ymm14, %ymm6, %ymm13 |
483 | vpor %ymm8, %ymm2, %ymm9 |
484 | vsubps %ymm14, %ymm13, %ymm15 |
485 | |
486 | /* Grab our final N value as an integer, appropriately masked mod 2^8 */ |
487 | vpand .FLT_31(%rip), %ymm13, %ymm13 |
488 | vpor %ymm11, %ymm9, %ymm10 |
489 | vsubps %ymm15, %ymm6, %ymm6 |
490 | vsubps %ymm7, %ymm5, %ymm15 |
491 | vsubps %ymm11, %ymm10, %ymm14 |
492 | |
493 | /* Now add them up into 2 reasonably aligned pieces */ |
494 | vaddps %ymm14, %ymm6, %ymm2 |
495 | vsubps %ymm2, %ymm6, %ymm6 |
496 | vmulps %ymm2, %ymm3, %ymm7 |
497 | vaddps %ymm6, %ymm14, %ymm8 |
498 | vaddps %ymm8, %ymm15, %ymm8 |
499 | vmovaps %ymm3, %ymm15 |
500 | vfmsub213ps %ymm7, %ymm2, %ymm15 |
501 | vandps .FLT_29(%rip), %ymm1, %ymm0 |
502 | vfmadd132ps .FLT_28(%rip), %ymm15, %ymm2 |
503 | vcmpgt_oqps %ymm4, %ymm0, %ymm9 |
504 | vcmple_oqps %ymm4, %ymm0, %ymm5 |
505 | |
506 | /* |
507 | * The output is _VRES_R (high) + _VRES_E (low), and the integer part is _VRES_IND |
508 | * Set sRp2 = _VRES_R^2 and then resume the original code. |
509 | * Argument reduction is now finished: x = n * pi/128 + r |
510 | * where n = iIndex and r = sR (high) + sE (low). |
511 | * But we have n modulo 256, needed for sin/cos with period 2pi |
512 | * but we want it modulo 128 since tan has period pi. |
513 | */ |
514 | vpand .FLT_32(%rip), %ymm13, %ymm0 |
515 | vfmadd213ps %ymm2, %ymm3, %ymm8 |
516 | vpslld $2, %ymm0, %ymm2 |
517 | vandps %ymm1, %ymm5, %ymm1 |
518 | vandps %ymm7, %ymm9, %ymm6 |
519 | vorps %ymm6, %ymm1, %ymm15 |
520 | vpaddd %ymm0, %ymm2, %ymm1 |
521 | vpslld $3, %ymm1, %ymm4 |
522 | vandps %ymm8, %ymm9, %ymm3 |
523 | |
524 | /* |
525 | * Simply combine the two parts of the reduced argument |
526 | * since we can afford a few ulps in this case. |
527 | */ |
528 | vaddps %ymm3, %ymm15, %ymm6 |
529 | vextractf128 $1, %ymm4, %xmm8 |
530 | vmovd %xmm4, %r10d |
531 | vmovd %xmm8, %ebx |
532 | vmovd -36(%r10, %r9), %xmm5 |
533 | vmovd -32(%r10, %r9), %xmm9 |
534 | vpextrd $1, %xmm4, %r8d |
535 | vpextrd $2, %xmm4, %edi |
536 | vpextrd $3, %xmm4, %esi |
537 | vpextrd $1, %xmm8, %ecx |
538 | vpextrd $2, %xmm8, %edx |
539 | vpextrd $3, %xmm8, %r11d |
540 | vmovd -36(%r8, %r9), %xmm7 |
541 | vmovd -36(%rdi, %r9), %xmm10 |
542 | vmovd -36(%rsi, %r9), %xmm11 |
543 | vmovd -36(%rbx, %r9), %xmm3 |
544 | vmovd -36(%rcx, %r9), %xmm2 |
545 | vmovd -36(%rdx, %r9), %xmm0 |
546 | vmovd -36(%r11, %r9), %xmm1 |
547 | vpunpckldq %xmm7, %xmm5, %xmm14 |
548 | vpunpckldq %xmm11, %xmm10, %xmm13 |
549 | vpunpckldq %xmm2, %xmm3, %xmm4 |
550 | vpunpckldq %xmm1, %xmm0, %xmm5 |
551 | vpunpcklqdq %xmm13, %xmm14, %xmm15 |
552 | vpunpcklqdq %xmm5, %xmm4, %xmm7 |
553 | vmovd -32(%r8, %r9), %xmm10 |
554 | vmovd -32(%rdi, %r9), %xmm11 |
555 | vmovd -32(%rsi, %r9), %xmm14 |
556 | vmovd -32(%rbx, %r9), %xmm2 |
557 | vmovd -32(%rcx, %r9), %xmm0 |
558 | vmovd -32(%rdx, %r9), %xmm1 |
559 | vmovd -32(%r11, %r9), %xmm4 |
560 | vpunpckldq %xmm14, %xmm11, %xmm8 |
561 | vpunpckldq %xmm0, %xmm2, %xmm5 |
562 | vmovd -28(%r8, %r9), %xmm11 |
563 | vmovd -28(%rdi, %r9), %xmm14 |
564 | vinsertf128 $1, %xmm7, %ymm15, %ymm13 |
565 | vpunpckldq %xmm10, %xmm9, %xmm15 |
566 | vpunpckldq %xmm4, %xmm1, %xmm7 |
567 | vpunpcklqdq %xmm8, %xmm15, %xmm3 |
568 | vpunpcklqdq %xmm7, %xmm5, %xmm9 |
569 | vmovd -28(%r10, %r9), %xmm10 |
570 | vmovd -28(%rsi, %r9), %xmm8 |
571 | vmovd -28(%rbx, %r9), %xmm1 |
572 | vmovd -28(%rcx, %r9), %xmm4 |
573 | vmovd -28(%rdx, %r9), %xmm5 |
574 | vmovd -28(%r11, %r9), %xmm7 |
575 | vpunpckldq %xmm8, %xmm14, %xmm2 |
576 | vmovd -24(%r10, %r9), %xmm14 |
577 | vinsertf128 $1, %xmm9, %ymm3, %ymm15 |
578 | vpunpckldq %xmm11, %xmm10, %xmm3 |
579 | vpunpckldq %xmm4, %xmm1, %xmm9 |
580 | vpunpckldq %xmm7, %xmm5, %xmm10 |
581 | vpunpcklqdq %xmm2, %xmm3, %xmm0 |
582 | vpunpcklqdq %xmm10, %xmm9, %xmm11 |
583 | vmovd -24(%r8, %r9), %xmm3 |
584 | vmovd -24(%rdi, %r9), %xmm2 |
585 | vmovd -24(%rbx, %r9), %xmm7 |
586 | vmovd -24(%rcx, %r9), %xmm9 |
587 | vmovd -24(%rdx, %r9), %xmm10 |
588 | vpunpckldq %xmm3, %xmm14, %xmm1 |
589 | vpunpckldq %xmm9, %xmm7, %xmm14 |
590 | vmovd -20(%rsi, %r9), %xmm7 |
591 | vinsertf128 $1, %xmm11, %ymm0, %ymm8 |
592 | vmovd -24(%rsi, %r9), %xmm0 |
593 | vmovd -24(%r11, %r9), %xmm11 |
594 | vpunpckldq %xmm0, %xmm2, %xmm4 |
595 | vpunpckldq %xmm11, %xmm10, %xmm3 |
596 | vpunpcklqdq %xmm4, %xmm1, %xmm5 |
597 | vpunpcklqdq %xmm3, %xmm14, %xmm2 |
598 | vmovd -20(%r10, %r9), %xmm0 |
599 | vmovd -20(%r8, %r9), %xmm1 |
600 | vmovd -20(%rbx, %r9), %xmm14 |
601 | vmovd -20(%rdi, %r9), %xmm4 |
602 | vpunpckldq %xmm1, %xmm0, %xmm9 |
603 | vmovd -20(%r11, %r9), %xmm0 |
604 | vpunpckldq %xmm7, %xmm4, %xmm10 |
605 | vpunpcklqdq %xmm10, %xmm9, %xmm11 |
606 | vmovd -16(%r10, %r9), %xmm9 |
607 | vmovd -16(%r8, %r9), %xmm10 |
608 | vinsertf128 $1, %xmm2, %ymm5, %ymm3 |
609 | vmovd -20(%rcx, %r9), %xmm2 |
610 | vpunpckldq %xmm2, %xmm14, %xmm1 |
611 | vmovd -20(%rdx, %r9), %xmm14 |
612 | vpunpckldq %xmm0, %xmm14, %xmm4 |
613 | vpunpcklqdq %xmm4, %xmm1, %xmm5 |
614 | vmovd -16(%rdi, %r9), %xmm2 |
615 | vmovd -16(%rsi, %r9), %xmm0 |
616 | vpunpckldq %xmm10, %xmm9, %xmm1 |
617 | vmovd -16(%rcx, %r9), %xmm9 |
618 | vmovd -16(%rdx, %r9), %xmm10 |
619 | vpunpckldq %xmm0, %xmm2, %xmm4 |
620 | vinsertf128 $1, %xmm5, %ymm11, %ymm7 |
621 | vmovups %ymm7, 32(%rsp) |
622 | vmovd -16(%rbx, %r9), %xmm7 |
623 | vmovd -16(%r11, %r9), %xmm11 |
624 | vpunpckldq %xmm9, %xmm7, %xmm14 |
625 | vpunpckldq %xmm11, %xmm10, %xmm2 |
626 | vpunpcklqdq %xmm4, %xmm1, %xmm5 |
627 | vpunpcklqdq %xmm2, %xmm14, %xmm0 |
628 | vmovd -12(%r10, %r9), %xmm1 |
629 | vmovd -12(%r8, %r9), %xmm4 |
630 | vmovd -12(%rdi, %r9), %xmm7 |
631 | vmovd -12(%rsi, %r9), %xmm9 |
632 | vpunpckldq %xmm4, %xmm1, %xmm10 |
633 | vmovd -12(%rcx, %r9), %xmm1 |
634 | vmovd -12(%rdx, %r9), %xmm4 |
635 | vpunpckldq %xmm9, %xmm7, %xmm11 |
636 | vpunpcklqdq %xmm11, %xmm10, %xmm14 |
637 | vinsertf128 $1, %xmm0, %ymm5, %ymm2 |
638 | vmovd -12(%rbx, %r9), %xmm0 |
639 | vmovd -12(%r11, %r9), %xmm5 |
640 | vpunpckldq %xmm1, %xmm0, %xmm7 |
641 | vpunpckldq %xmm5, %xmm4, %xmm9 |
642 | vpunpcklqdq %xmm9, %xmm7, %xmm10 |
643 | vmovd -8(%r10, %r9), %xmm1 |
644 | vmovd -8(%r8, %r9), %xmm4 |
645 | vmovups 128(%rsp), %ymm0 |
646 | vinsertf128 $1, %xmm10, %ymm14, %ymm11 |
647 | vmovups %ymm11, (%rsp) |
648 | vmovups 96(%rsp), %ymm10 |
649 | vmovups 64(%rsp), %ymm11 |
650 | # LOE rdx rcx rbx rsi rdi r8 r9 r10 r11 r12 r13 r14 r15 eax xmm1 xmm4 ymm0 ymm2 ymm3 ymm6 ymm8 ymm10 ymm11 ymm12 ymm13 ymm15 |
651 | |
652 | vmovd -8(%rdi, %r9), %xmm7 |
653 | vmovd -8(%rsi, %r9), %xmm5 |
654 | vpunpckldq %xmm4, %xmm1, %xmm4 |
655 | vpunpckldq %xmm5, %xmm7, %xmm9 |
656 | vpunpcklqdq %xmm9, %xmm4, %xmm7 |
657 | vmovd -8(%rbx, %r9), %xmm1 |
658 | vmovd -8(%rcx, %r9), %xmm14 |
659 | vmovd -8(%rdx, %r9), %xmm5 |
660 | vmovd -8(%r11, %r9), %xmm4 |
661 | vpunpckldq %xmm14, %xmm1, %xmm9 |
662 | vpunpckldq %xmm4, %xmm5, %xmm1 |
663 | vpunpcklqdq %xmm1, %xmm9, %xmm14 |
664 | vmovd -4(%r10, %r9), %xmm5 |
665 | vmovd -4(%r8, %r9), %xmm4 |
666 | vmovd -4(%rdi, %r9), %xmm9 |
667 | vmovd -4(%rsi, %r9), %xmm1 |
668 | vinsertf128 $1, %xmm14, %ymm7, %ymm7 |
669 | vpunpckldq %xmm4, %xmm5, %xmm14 |
670 | vpunpckldq %xmm1, %xmm9, %xmm5 |
671 | vpunpcklqdq %xmm5, %xmm14, %xmm4 |
672 | vmovd -4(%rbx, %r9), %xmm9 |
673 | vmovd -4(%rcx, %r9), %xmm1 |
674 | vmovd -4(%rdx, %r9), %xmm14 |
675 | vmovd -4(%r11, %r9), %xmm5 |
676 | vpunpckldq %xmm1, %xmm9, %xmm9 |
677 | vpunpckldq %xmm5, %xmm14, %xmm1 |
678 | vpunpcklqdq %xmm1, %xmm9, %xmm14 |
679 | vmovd (%r10, %r9), %xmm5 |
680 | vmovd (%r8, %r9), %xmm9 |
681 | vmovd (%rdi, %r9), %xmm1 |
682 | vpunpckldq %xmm9, %xmm5, %xmm5 |
683 | |
684 | /* |
685 | * Higher polynomial terms |
686 | * Stage 1 (with unlimited parallelism) |
687 | * P3 = C1_lo + C2 * Z |
688 | */ |
689 | vfmadd213ps (%rsp), %ymm6, %ymm7 |
690 | vinsertf128 $1, %xmm14, %ymm4, %ymm4 |
691 | vmovd (%rsi, %r9), %xmm14 |
692 | vpunpckldq %xmm14, %xmm1, %xmm9 |
693 | vmovd (%rbx, %r9), %xmm1 |
694 | vmovd (%rcx, %r9), %xmm14 |
695 | vpunpcklqdq %xmm9, %xmm5, %xmm9 |
696 | vpunpckldq %xmm14, %xmm1, %xmm5 |
697 | vmovd (%rdx, %r9), %xmm1 |
698 | vmovd (%r11, %r9), %xmm14 |
699 | vpunpckldq %xmm14, %xmm1, %xmm1 |
700 | vpunpcklqdq %xmm1, %xmm5, %xmm5 |
701 | vmovups .FLT_33(%rip), %ymm1 |
702 | |
703 | /* |
704 | * Compute 2-part reciprocal component |
705 | * Construct a separate reduced argument modulo pi near pi/2 multiples. |
706 | * i.e. (pi/2 - x) mod pi, simply by subtracting the reduced argument |
707 | * from an accurate B_hi + B_lo = (128 - n) pi/128. Force the upper part |
708 | * of this reduced argument to half-length to simplify accurate |
709 | * reciprocation later on. |
710 | */ |
711 | vsubps %ymm6, %ymm13, %ymm14 |
712 | vsubps %ymm14, %ymm13, %ymm13 |
713 | vsubps %ymm6, %ymm13, %ymm13 |
714 | vinsertf128 $1, %xmm5, %ymm9, %ymm5 |
715 | vandps %ymm1, %ymm14, %ymm9 |
716 | vsubps %ymm9, %ymm14, %ymm14 |
717 | |
718 | /* P4 = C3 + C4 * Z */ |
719 | vfmadd213ps %ymm4, %ymm6, %ymm5 |
720 | vaddps %ymm14, %ymm15, %ymm15 |
721 | vaddps %ymm15, %ymm13, %ymm15 |
722 | |
723 | /* |
724 | * Now compute an approximate reciprocal to mix into the computation |
725 | * To avoid any danger of nonportability, force it to 12 bits, |
726 | * though I suspect it always is anyway on current platforms. |
727 | */ |
728 | vrcpps %ymm9, %ymm13 |
729 | vandps %ymm1, %ymm13, %ymm13 |
730 | |
731 | /* |
732 | * Now compute the error sEr where sRecip_hi = (1/R_hi) * (1 - sEr) |
733 | * so that we can compensate for it. |
734 | */ |
735 | vmovups _sOne+__svml_stan_data_internal(%rip), %ymm1 |
736 | vfnmadd213ps %ymm1, %ymm13, %ymm9 |
737 | |
738 | /* |
739 | * Get a better approximation to 1/sR_hi (not far short of an ulp) |
740 | * using a third-order polynomial approximation |
741 | */ |
742 | vmovaps %ymm13, %ymm14 |
743 | vfmadd213ps %ymm13, %ymm9, %ymm14 |
744 | vfmadd231ps %ymm9, %ymm9, %ymm1 |
745 | vmulps %ymm1, %ymm14, %ymm1 |
746 | |
747 | /* |
748 | * Multiply by sRecip_ok to make sR_lo relative to sR_hi |
749 | * Since sR_lo is shifted off by about 12 bits, this is accurate enough. |
750 | */ |
751 | vmulps %ymm1, %ymm15, %ymm14 |
752 | |
753 | /* |
754 | * Now create a low reciprocal using |
755 | * (Recip_hi + Er * Recip_ok) * (1 + sR_lo^2 - sR_lo) |
756 | * =~= Recip_hi + Recip_ok * (Er + sR_lo^2 - sR_lo) |
757 | */ |
758 | vsubps %ymm9, %ymm14, %ymm9 |
759 | vfmsub213ps %ymm9, %ymm14, %ymm14 |
760 | vmulps %ymm14, %ymm1, %ymm9 |
761 | vmovaps %ymm2, %ymm1 |
762 | vfmadd213ps %ymm3, %ymm6, %ymm1 |
763 | vsubps %ymm1, %ymm3, %ymm15 |
764 | vmovaps %ymm8, %ymm3 |
765 | vfmadd213ps %ymm1, %ymm13, %ymm3 |
766 | vfmadd213ps %ymm15, %ymm6, %ymm2 |
767 | vfmsub213ps %ymm3, %ymm8, %ymm13 |
768 | vfmadd213ps %ymm2, %ymm8, %ymm9 |
769 | vaddps %ymm13, %ymm1, %ymm2 |
770 | |
771 | /* Z2 = Z^2 */ |
772 | vmulps %ymm6, %ymm6, %ymm1 |
773 | vaddps %ymm2, %ymm9, %ymm8 |
774 | |
775 | /* |
776 | * Stage 2 (with unlimited parallelism) |
777 | * P6 = C1_lo + C2 * Z + C3 * Z^2 + C4 * Z^3 |
778 | */ |
779 | vfmadd213ps %ymm7, %ymm5, %ymm1 |
780 | |
781 | /* P9 = trail(dominant part) + C0_lo */ |
782 | vaddps 32(%rsp), %ymm8, %ymm5 |
783 | |
784 | /* Final accumulation of low part */ |
785 | vfmadd213ps %ymm5, %ymm6, %ymm1 |
786 | |
787 | /* And now the very final summation */ |
788 | vaddps %ymm1, %ymm3, %ymm6 |
789 | |
790 | /* |
791 | * The end of implementation (LA with huge args reduction) |
792 | * End of large arguments path (_HA_, _LA_ and _EP_) |
793 | */ |
794 | |
795 | vxorps %ymm11, %ymm6, %ymm11 |
796 | |
797 | /* Merge results from main and large paths: */ |
798 | vblendvps %ymm10, %ymm11, %ymm0, %ymm0 |
799 | |
800 | /* Return to main vector processing path */ |
801 | jmp L(AUX_BRANCH_RETURN) |
802 | # LOE r12 r13 r14 r15 eax ymm0 ymm12 |
803 | END(_ZGVdN8v_tanf_avx2) |
804 | |
805 | .section .rodata, "a" |
806 | .align 32 |
807 | |
808 | .FLT_15: |
809 | .long 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000 |
810 | .type .FLT_15, @object |
811 | .size .FLT_15, 32 |
812 | .align 32 |
813 | |
814 | .FLT_16: |
815 | .long 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000 |
816 | .type .FLT_16, @object |
817 | .size .FLT_16, 32 |
818 | .align 32 |
819 | |
820 | .FLT_17: |
821 | .long 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff |
822 | .type .FLT_17, @object |
823 | .size .FLT_17, 32 |
824 | .align 32 |
825 | |
826 | .FLT_18: |
827 | .long 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000 |
828 | .type .FLT_18, @object |
829 | .size .FLT_18, 32 |
830 | .align 32 |
831 | |
832 | .FLT_19: |
833 | .long 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff |
834 | .type .FLT_19, @object |
835 | .size .FLT_19, 32 |
836 | .align 32 |
837 | |
838 | .FLT_20: |
839 | .long 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000 |
840 | .type .FLT_20, @object |
841 | .size .FLT_20, 32 |
842 | .align 32 |
843 | |
844 | .FLT_21: |
845 | .long 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000 |
846 | .type .FLT_21, @object |
847 | .size .FLT_21, 32 |
848 | .align 32 |
849 | |
850 | .FLT_22: |
851 | .long 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000 |
852 | .type .FLT_22, @object |
853 | .size .FLT_22, 32 |
854 | .align 32 |
855 | |
856 | .FLT_23: |
857 | .long 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000 |
858 | .type .FLT_23, @object |
859 | .size .FLT_23, 32 |
860 | .align 32 |
861 | |
862 | .FLT_24: |
863 | .long 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff |
864 | .type .FLT_24, @object |
865 | .size .FLT_24, 32 |
866 | .align 32 |
867 | |
868 | .FLT_25: |
869 | .long 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000 |
870 | .type .FLT_25, @object |
871 | .size .FLT_25, 32 |
872 | .align 32 |
873 | |
874 | .FLT_26: |
875 | .long 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff |
876 | .type .FLT_26, @object |
877 | .size .FLT_26, 32 |
878 | .align 32 |
879 | |
880 | .FLT_27: |
881 | .long 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb |
882 | .type .FLT_27, @object |
883 | .size .FLT_27, 32 |
884 | .align 32 |
885 | |
886 | .FLT_28: |
887 | .long 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e |
888 | .type .FLT_28, @object |
889 | .size .FLT_28, 32 |
890 | .align 32 |
891 | |
892 | .FLT_29: |
893 | .long 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff |
894 | .type .FLT_29, @object |
895 | .size .FLT_29, 32 |
896 | .align 32 |
897 | |
898 | .FLT_30: |
899 | .long 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000 |
900 | .type .FLT_30, @object |
901 | .size .FLT_30, 32 |
902 | .align 32 |
903 | |
904 | .FLT_31: |
905 | .long 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff |
906 | .type .FLT_31, @object |
907 | .size .FLT_31, 32 |
908 | .align 32 |
909 | |
910 | .FLT_32: |
911 | .long 0x0000007f, 0x0000007f, 0x0000007f, 0x0000007f, 0x0000007f, 0x0000007f, 0x0000007f, 0x0000007f |
912 | .type .FLT_32, @object |
913 | .size .FLT_32, 32 |
914 | .align 32 |
915 | |
916 | .FLT_33: |
917 | .long 0xfffff000, 0xfffff000, 0xfffff000, 0xfffff000, 0xfffff000, 0xfffff000, 0xfffff000, 0xfffff000 |
918 | .type .FLT_33, @object |
919 | .size .FLT_33, 32 |
920 | .align 32 |
921 | |
922 | #ifdef __svml_stan_data_internal_typedef |
923 | typedef unsigned int VUINT32; |
924 | typedef struct { |
925 | __declspec(align(32)) VUINT32 _sInvPI_uisa[8][1]; |
926 | __declspec(align(32)) VUINT32 _sPI1_uisa[8][1]; |
927 | __declspec(align(32)) VUINT32 _sPI2_uisa[8][1]; |
928 | __declspec(align(32)) VUINT32 _sPI3_uisa[8][1]; |
929 | __declspec(align(32)) VUINT32 _sPI2_ha_uisa[8][1]; |
930 | __declspec(align(32)) VUINT32 _sPI3_ha_uisa[8][1]; |
931 | __declspec(align(32)) VUINT32 Th_tbl_uisa[32][1]; |
932 | __declspec(align(32)) VUINT32 Tl_tbl_uisa[32][1]; |
933 | __declspec(align(32)) VUINT32 _sPC3_uisa[8][1]; |
934 | __declspec(align(32)) VUINT32 _sPC5_uisa[8][1]; |
935 | __declspec(align(32)) VUINT32 _sRangeReductionVal_uisa[8][1]; |
936 | __declspec(align(32)) VUINT32 _sInvPi[8][1]; |
937 | __declspec(align(32)) VUINT32 _sSignMask[8][1]; |
938 | __declspec(align(32)) VUINT32 _sAbsMask[8][1]; |
939 | __declspec(align(32)) VUINT32 _sRangeVal[8][1]; |
940 | __declspec(align(32)) VUINT32 _sRShifter[8][1]; |
941 | __declspec(align(32)) VUINT32 _sOne[8][1]; |
942 | __declspec(align(32)) VUINT32 _sRangeReductionVal[8][1]; |
943 | __declspec(align(32)) VUINT32 _sPI1[8][1]; |
944 | __declspec(align(32)) VUINT32 _sPI2[8][1]; |
945 | __declspec(align(32)) VUINT32 _sPI3[8][1]; |
946 | __declspec(align(32)) VUINT32 _sPI4[8][1]; |
947 | __declspec(align(32)) VUINT32 _sPI1_FMA[8][1]; |
948 | __declspec(align(32)) VUINT32 _sPI2_FMA[8][1]; |
949 | __declspec(align(32)) VUINT32 _sPI3_FMA[8][1]; |
950 | __declspec(align(32)) VUINT32 _sP0[8][1]; |
951 | __declspec(align(32)) VUINT32 _sP1[8][1]; |
952 | __declspec(align(32)) VUINT32 _sQ0[8][1]; |
953 | __declspec(align(32)) VUINT32 _sQ1[8][1]; |
954 | __declspec(align(32)) VUINT32 _sQ2[8][1]; |
955 | __declspec(align(32)) VUINT32 _sTwo[8][1]; |
956 | __declspec(align(32)) VUINT32 _sCoeffs[128][10][1]; |
957 | } __svml_stan_data_internal; |
958 | #endif |
959 | __svml_stan_data_internal: |
960 | /* UISA */ |
961 | .long 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983 /* _sInvPI_uisa */ |
962 | .align 32 |
963 | .long 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda /* _sPI1_uisa */ |
964 | .align 32 |
965 | .long 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168 /* _sPI2_uisa */ |
966 | .align 32 |
967 | .long 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5 /* _sPI3_uisa */ |
968 | .align 32 |
969 | .long 0x31a22000, 0x31a22000, 0x31a22000, 0x31a22000, 0x31a22000, 0x31a22000, 0x31a22000, 0x31a22000 /* _sPI2_ha_uisa */ |
970 | .align 32 |
971 | .long 0x2a34611a, 0x2a34611a, 0x2a34611a, 0x2a34611a, 0x2a34611a, 0x2a34611a, 0x2a34611a, 0x2a34611a /* _sPI3_ha_uisa */ |
972 | /* Th_tbl_uisa for i from 0 to 31 do printsingle(tan(i*Pi/32)); */ |
973 | .align 32 |
974 | .long 0x80000000, 0x3dc9b5dc, 0x3e4bafaf, 0x3e9b5042 |
975 | .long 0x3ed413cd, 0x3f08d5b9, 0x3f2b0dc1, 0x3f521801 |
976 | .long 0x3f800000, 0x3f9bf7ec, 0x3fbf90c7, 0x3fef789e |
977 | .long 0x401a827a, 0x4052facf, 0x40a0dff7, 0x41227363 |
978 | .long 0xff7fffff, 0xc1227363, 0xc0a0dff7, 0xc052facf |
979 | .long 0xc01a827a, 0xbfef789e, 0xbfbf90c7, 0xbf9bf7ec |
980 | .long 0xbf800000, 0xbf521801, 0xbf2b0dc1, 0xbf08d5b9 |
981 | .long 0xbed413cd, 0xbe9b5042, 0xbe4bafaf, 0xbdc9b5dc |
982 | /* Tl_tbl_uisa for i from 0 to 31 do printsingle(tan(i*Pi/32)-round(tan(i*Pi/32), SG, RN)); */ |
983 | .align 32 |
984 | .long 0x80000000, 0x3145b2da, 0x2f2a62b0, 0xb22a39c2 |
985 | .long 0xb1c0621a, 0xb25ef963, 0x32ab7f99, 0x32ae4285 |
986 | .long 0x00000000, 0x33587608, 0x32169d18, 0xb30c3ec0 |
987 | .long 0xb3cc0622, 0x3390600e, 0x331091dc, 0xb454a046 |
988 | .long 0xf3800000, 0x3454a046, 0xb31091dc, 0xb390600e |
989 | .long 0x33cc0622, 0x330c3ec0, 0xb2169d18, 0xb3587608 |
990 | .long 0x00000000, 0xb2ae4285, 0xb2ab7f99, 0x325ef963 |
991 | .long 0x31c0621a, 0x322a39c2, 0xaf2a62b0, 0xb145b2da |
992 | .align 32 |
993 | .long 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6 /* _sPC3_uisa */ |
994 | .align 32 |
995 | .long 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888 /* _sPC5_uisa */ |
996 | .align 32 |
997 | .long 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000 /* _sRangeReductionVal_uisa */ |
998 | .align 32 |
999 | .long 0x3F22F983, 0x3F22F983, 0x3F22F983, 0x3F22F983, 0x3F22F983, 0x3F22F983, 0x3F22F983, 0x3F22F983 /* _sInvPi */ |
1000 | .align 32 |
1001 | .long 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000 /* _sSignMask */ |
1002 | .align 32 |
1003 | .long 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF /* _sAbsMask */ |
1004 | .align 32 |
1005 | .long 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000 /* _sRangeVal */ |
1006 | .align 32 |
1007 | .long 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000 /* _sRShifter */ |
1008 | .align 32 |
1009 | .long 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000 /* _sOne */ |
1010 | .align 32 |
1011 | .long 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000 /* _sRangeVal */ |
1012 | .align 32 |
1013 | .long 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000 /* _sPI1 */ |
1014 | .align 32 |
1015 | .long 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000 /* _sPI2 */ |
1016 | .align 32 |
1017 | .long 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000 /* _sPI3 */ |
1018 | .align 32 |
1019 | .long 0x2C34611A, 0x2C34611A, 0x2C34611A, 0x2C34611A, 0x2C34611A, 0x2C34611A, 0x2C34611A, 0x2C34611A /* _sPI4 */ |
1020 | // PI1, PI2, and PI3 when FMA is available |
1021 | .align 32 |
1022 | .long 0x3FC90FDB, 0x3FC90FDB, 0x3FC90FDB, 0x3FC90FDB, 0x3FC90FDB, 0x3FC90FDB, 0x3FC90FDB, 0x3FC90FDB /* _sPI1_FMA */ |
1023 | .align 32 |
1024 | .long 0xB33BBD2E, 0xB33BBD2E, 0xB33BBD2E, 0xB33BBD2E, 0xB33BBD2E, 0xB33BBD2E, 0xB33BBD2E, 0xB33BBD2E /* _sPI2_FMA */ |
1025 | .align 32 |
1026 | .long 0xA6F72CED, 0xA6F72CED, 0xA6F72CED, 0xA6F72CED, 0xA6F72CED, 0xA6F72CED, 0xA6F72CED, 0xA6F72CED /* _sPI3_FMA */ |
1027 | .align 32 |
1028 | .long 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC /* _sP0 */ |
1029 | .align 32 |
1030 | .long 0xBDC433B4, 0xBDC433B4, 0xBDC433B4, 0xBDC433B4, 0xBDC433B4, 0xBDC433B4, 0xBDC433B4, 0xBDC433B4 /* _sP1 */ |
1031 | .align 32 |
1032 | .long 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC, 0x3F7FFFFC /* _sQ0 */ |
1033 | .align 32 |
1034 | .long 0xBEDBB7AB, 0xBEDBB7AB, 0xBEDBB7AB, 0xBEDBB7AB, 0xBEDBB7AB, 0xBEDBB7AB, 0xBEDBB7AB, 0xBEDBB7AB /* _sQ1 */ |
1035 | .align 32 |
1036 | .long 0x3C1F336B, 0x3C1F336B, 0x3C1F336B, 0x3C1F336B, 0x3C1F336B, 0x3C1F336B, 0x3C1F336B, 0x3C1F336B /* _sQ2 */ |
1037 | .align 32 |
1038 | .long 0x40000000, 0x40000000, 0x40000000, 0x40000000, 0x40000000, 0x40000000, 0x40000000, 0x40000000 /* _sTwo */ |
1039 | // _sCoeffs Breakpoint B = 0 * pi/128, function tan(B + x) |
1040 | .align 32 |
1041 | .long 0x3FC90FDB // B' = pi/2 - B (high single) |
1042 | .long 0xB33BBD2E // B' = pi/2 - B (low single) |
1043 | .long 0x00000000 // tau (1 for cot path) |
1044 | .long 0x00000000 // c0 (high single) |
1045 | .long 0x00000000 // c0 (low single) |
1046 | .long 0x3F800000 // c1 (high 1 bit) |
1047 | .long 0x00000000 // c1 (low single) |
1048 | .long 0x00000000 // c2 |
1049 | .long 0x3EAAACDD // c3 |
1050 | .long 0x00000000 // c4 |
1051 | .long 0x3FC5EB9B // B' = pi/2 - B (high single) |
1052 | .long 0x32DE638C // B' = pi/2 - B (low single) |
1053 | .long 0x00000000 // tau (1 for cot path) |
1054 | .long 0x3CC91A31 // c0 (high single) |
1055 | .long 0x2F8E8D1A // c0 (low single) |
1056 | .long 0x3F800000 // c1 (high 1 bit) |
1057 | .long 0x3A1DFA00 // c1 (low single) |
1058 | .long 0x3CC9392D // c2 |
1059 | .long 0x3EAB1889 // c3 |
1060 | .long 0x3C885D3B // c4 |
1061 | .long 0x3FC2C75C // B' = pi/2 - B (high single) |
1062 | .long 0xB2CBBE8A // B' = pi/2 - B (low single) |
1063 | .long 0x00000000 // tau (1 for cot path) |
1064 | .long 0x3D49393C // c0 (high single) |
1065 | .long 0x30A39F5B // c0 (low single) |
1066 | .long 0x3F800000 // c1 (high 1 bit) |
1067 | .long 0x3B1E2B00 // c1 (low single) |
1068 | .long 0x3D49B5D4 // c2 |
1069 | .long 0x3EAC4F10 // c3 |
1070 | .long 0x3CFD9425 // c4 |
1071 | .long 0x3FBFA31C // B' = pi/2 - B (high single) |
1072 | .long 0x33450FB0 // B' = pi/2 - B (low single) |
1073 | .long 0x00000000 // tau (1 for cot path) |
1074 | .long 0x3D9711CE // c0 (high single) |
1075 | .long 0x314FEB28 // c0 (low single) |
1076 | .long 0x3F800000 // c1 (high 1 bit) |
1077 | .long 0x3BB24C00 // c1 (low single) |
1078 | .long 0x3D97E43A // c2 |
1079 | .long 0x3EAE6A89 // c3 |
1080 | .long 0x3D4D07E0 // c4 |
1081 | .long 0x3FBC7EDD // B' = pi/2 - B (high single) |
1082 | .long 0xB1800ADD // B' = pi/2 - B (low single) |
1083 | .long 0x00000000 // tau (1 for cot path) |
1084 | .long 0x3DC9B5DC // c0 (high single) |
1085 | .long 0x3145AD86 // c0 (low single) |
1086 | .long 0x3F800000 // c1 (high 1 bit) |
1087 | .long 0x3C1EEF20 // c1 (low single) |
1088 | .long 0x3DCBAAEA // c2 |
1089 | .long 0x3EB14E5E // c3 |
1090 | .long 0x3D858BB2 // c4 |
1091 | .long 0x3FB95A9E // B' = pi/2 - B (high single) |
1092 | .long 0xB3651267 // B' = pi/2 - B (low single) |
1093 | .long 0x00000000 // tau (1 for cot path) |
1094 | .long 0x3DFC98C2 // c0 (high single) |
1095 | .long 0xB0AE525C // c0 (low single) |
1096 | .long 0x3F800000 // c1 (high 1 bit) |
1097 | .long 0x3C793D20 // c1 (low single) |
1098 | .long 0x3E003845 // c2 |
1099 | .long 0x3EB5271F // c3 |
1100 | .long 0x3DAC669E // c4 |
1101 | .long 0x3FB6365E // B' = pi/2 - B (high single) |
1102 | .long 0x328BB91C // B' = pi/2 - B (low single) |
1103 | .long 0x00000000 // tau (1 for cot path) |
1104 | .long 0x3E17E564 // c0 (high single) |
1105 | .long 0xB1C5A2E4 // c0 (low single) |
1106 | .long 0x3F800000 // c1 (high 1 bit) |
1107 | .long 0x3CB440D0 // c1 (low single) |
1108 | .long 0x3E1B3D00 // c2 |
1109 | .long 0x3EB9F664 // c3 |
1110 | .long 0x3DD647C0 // c4 |
1111 | .long 0x3FB3121F // B' = pi/2 - B (high single) |
1112 | .long 0xB30F347D // B' = pi/2 - B (low single) |
1113 | .long 0x00000000 // tau (1 for cot path) |
1114 | .long 0x3E31AE4D // c0 (high single) |
1115 | .long 0xB1F32251 // c0 (low single) |
1116 | .long 0x3F800000 // c1 (high 1 bit) |
1117 | .long 0x3CF6A500 // c1 (low single) |
1118 | .long 0x3E3707DA // c2 |
1119 | .long 0x3EBFA489 // c3 |
1120 | .long 0x3DFBD9C7 // c4 |
1121 | .long 0x3FAFEDDF // B' = pi/2 - B (high single) |
1122 | .long 0x331BBA77 // B' = pi/2 - B (low single) |
1123 | .long 0x00000000 // tau (1 for cot path) |
1124 | .long 0x3E4BAFAF // c0 (high single) |
1125 | .long 0x2F2A29E0 // c0 (low single) |
1126 | .long 0x3F800000 // c1 (high 1 bit) |
1127 | .long 0x3D221018 // c1 (low single) |
1128 | .long 0x3E53BED0 // c2 |
1129 | .long 0x3EC67E26 // c3 |
1130 | .long 0x3E1568E2 // c4 |
1131 | .long 0x3FACC9A0 // B' = pi/2 - B (high single) |
1132 | .long 0xB2655A50 // B' = pi/2 - B (low single) |
1133 | .long 0x00000000 // tau (1 for cot path) |
1134 | .long 0x3E65F267 // c0 (high single) |
1135 | .long 0x31B4B1DF // c0 (low single) |
1136 | .long 0x3F800000 // c1 (high 1 bit) |
1137 | .long 0x3D4E8B90 // c1 (low single) |
1138 | .long 0x3E718ACA // c2 |
1139 | .long 0x3ECE7164 // c3 |
1140 | .long 0x3E2DC161 // c4 |
1141 | .long 0x3FA9A560 // B' = pi/2 - B (high single) |
1142 | .long 0x33719861 // B' = pi/2 - B (low single) |
1143 | .long 0x00000000 // tau (1 for cot path) |
1144 | .long 0x3E803FD4 // c0 (high single) |
1145 | .long 0xB2279E66 // c0 (low single) |
1146 | .long 0x3F800000 // c1 (high 1 bit) |
1147 | .long 0x3D807FC8 // c1 (low single) |
1148 | .long 0x3E884BD4 // c2 |
1149 | .long 0x3ED7812D // c3 |
1150 | .long 0x3E4636EB // c4 |
1151 | .long 0x3FA68121 // B' = pi/2 - B (high single) |
1152 | .long 0x31E43AAC // B' = pi/2 - B (low single) |
1153 | .long 0x00000000 // tau (1 for cot path) |
1154 | .long 0x3E8DB082 // c0 (high single) |
1155 | .long 0xB132A234 // c0 (low single) |
1156 | .long 0x3F800000 // c1 (high 1 bit) |
1157 | .long 0x3D9CD7D0 // c1 (low single) |
1158 | .long 0x3E988A60 // c2 |
1159 | .long 0x3EE203E3 // c3 |
1160 | .long 0x3E63582C // c4 |
1161 | .long 0x3FA35CE2 // B' = pi/2 - B (high single) |
1162 | .long 0xB33889B6 // B' = pi/2 - B (low single) |
1163 | .long 0x00000000 // tau (1 for cot path) |
1164 | .long 0x3E9B5042 // c0 (high single) |
1165 | .long 0xB22A3AEE // c0 (low single) |
1166 | .long 0x3F800000 // c1 (high 1 bit) |
1167 | .long 0x3DBC7490 // c1 (low single) |
1168 | .long 0x3EA99AF5 // c2 |
1169 | .long 0x3EEDE107 // c3 |
1170 | .long 0x3E80E9AA // c4 |
1171 | .long 0x3FA038A2 // B' = pi/2 - B (high single) |
1172 | .long 0x32E4CA7E // B' = pi/2 - B (low single) |
1173 | .long 0x00000000 // tau (1 for cot path) |
1174 | .long 0x3EA92457 // c0 (high single) |
1175 | .long 0x30B80830 // c0 (low single) |
1176 | .long 0x3F800000 // c1 (high 1 bit) |
1177 | .long 0x3DDF8200 // c1 (low single) |
1178 | .long 0x3EBB99E9 // c2 |
1179 | .long 0x3EFB4AA8 // c3 |
1180 | .long 0x3E9182BE // c4 |
1181 | .long 0x3F9D1463 // B' = pi/2 - B (high single) |
1182 | .long 0xB2C55799 // B' = pi/2 - B (low single) |
1183 | .long 0x00000000 // tau (1 for cot path) |
1184 | .long 0x3EB73250 // c0 (high single) |
1185 | .long 0xB2028823 // c0 (low single) |
1186 | .long 0x3F800000 // c1 (high 1 bit) |
1187 | .long 0x3E0318F8 // c1 (low single) |
1188 | .long 0x3ECEA678 // c2 |
1189 | .long 0x3F053C67 // c3 |
1190 | .long 0x3EA41E53 // c4 |
1191 | .long 0x3F99F023 // B' = pi/2 - B (high single) |
1192 | .long 0x33484328 // B' = pi/2 - B (low single) |
1193 | .long 0x00000000 // tau (1 for cot path) |
1194 | .long 0x3EC5800D // c0 (high single) |
1195 | .long 0xB214C3C1 // c0 (low single) |
1196 | .long 0x3F800000 // c1 (high 1 bit) |
1197 | .long 0x3E185E54 // c1 (low single) |
1198 | .long 0x3EE2E342 // c2 |
1199 | .long 0x3F0DCA73 // c3 |
1200 | .long 0x3EB8CC21 // c4 |
1201 | .long 0x3F96CBE4 // B' = pi/2 - B (high single) |
1202 | .long 0xB14CDE2E // B' = pi/2 - B (low single) |
1203 | .long 0x00000000 // tau (1 for cot path) |
1204 | .long 0x3ED413CD // c0 (high single) |
1205 | .long 0xB1C06152 // c0 (low single) |
1206 | .long 0x3F800000 // c1 (high 1 bit) |
1207 | .long 0x3E2FB0CC // c1 (low single) |
1208 | .long 0x3EF876CB // c2 |
1209 | .long 0x3F177807 // c3 |
1210 | .long 0x3ED08437 // c4 |
1211 | .long 0x3F93A7A5 // B' = pi/2 - B (high single) |
1212 | .long 0xB361DEEE // B' = pi/2 - B (low single) |
1213 | .long 0x00000000 // tau (1 for cot path) |
1214 | .long 0x3EE2F439 // c0 (high single) |
1215 | .long 0xB1F4399E // c0 (low single) |
1216 | .long 0x3F800000 // c1 (high 1 bit) |
1217 | .long 0x3E49341C // c1 (low single) |
1218 | .long 0x3F07C61A // c2 |
1219 | .long 0x3F22560F // c3 |
1220 | .long 0x3EEAA81E // c4 |
1221 | .long 0x3F908365 // B' = pi/2 - B (high single) |
1222 | .long 0x3292200D // B' = pi/2 - B (low single) |
1223 | .long 0x00000000 // tau (1 for cot path) |
1224 | .long 0x3EF22870 // c0 (high single) |
1225 | .long 0x325271F4 // c0 (low single) |
1226 | .long 0x3F800000 // c1 (high 1 bit) |
1227 | .long 0x3E65107A // c1 (low single) |
1228 | .long 0x3F1429F0 // c2 |
1229 | .long 0x3F2E8AFC // c3 |
1230 | .long 0x3F040498 // c4 |
1231 | .long 0x3F8D5F26 // B' = pi/2 - B (high single) |
1232 | .long 0xB30C0105 // B' = pi/2 - B (low single) |
1233 | .long 0x00000000 // tau (1 for cot path) |
1234 | .long 0x3F00DC0D // c0 (high single) |
1235 | .long 0xB214AF72 // c0 (low single) |
1236 | .long 0x3F800000 // c1 (high 1 bit) |
1237 | .long 0x3E81B994 // c1 (low single) |
1238 | .long 0x3F218233 // c2 |
1239 | .long 0x3F3C4531 // c3 |
1240 | .long 0x3F149688 // c4 |
1241 | .long 0x3F8A3AE6 // B' = pi/2 - B (high single) |
1242 | .long 0x331EEDF0 // B' = pi/2 - B (low single) |
1243 | .long 0x00000000 // tau (1 for cot path) |
1244 | .long 0x3F08D5B9 // c0 (high single) |
1245 | .long 0xB25EF98E // c0 (low single) |
1246 | .long 0x3F800000 // c1 (high 1 bit) |
1247 | .long 0x3E92478D // c1 (low single) |
1248 | .long 0x3F2FEDC9 // c2 |
1249 | .long 0x3F4BCD58 // c3 |
1250 | .long 0x3F27AE9E // c4 |
1251 | .long 0x3F8716A7 // B' = pi/2 - B (high single) |
1252 | .long 0xB2588C6D // B' = pi/2 - B (low single) |
1253 | .long 0x00000000 // tau (1 for cot path) |
1254 | .long 0x3F1105AF // c0 (high single) |
1255 | .long 0x32F045B0 // c0 (low single) |
1256 | .long 0x3F800000 // c1 (high 1 bit) |
1257 | .long 0x3EA44EE2 // c1 (low single) |
1258 | .long 0x3F3F8FDB // c2 |
1259 | .long 0x3F5D3FD0 // c3 |
1260 | .long 0x3F3D0A23 // c4 |
1261 | .long 0x3F83F267 // B' = pi/2 - B (high single) |
1262 | .long 0x3374CBD9 // B' = pi/2 - B (low single) |
1263 | .long 0x00000000 // tau (1 for cot path) |
1264 | .long 0x3F1970C4 // c0 (high single) |
1265 | .long 0x32904848 // c0 (low single) |
1266 | .long 0x3F800000 // c1 (high 1 bit) |
1267 | .long 0x3EB7EFF8 // c1 (low single) |
1268 | .long 0x3F50907C // c2 |
1269 | .long 0x3F710FEA // c3 |
1270 | .long 0x3F561FED // c4 |
1271 | .long 0x3F80CE28 // B' = pi/2 - B (high single) |
1272 | .long 0x31FDD672 // B' = pi/2 - B (low single) |
1273 | .long 0x00000000 // tau (1 for cot path) |
1274 | .long 0x3F221C37 // c0 (high single) |
1275 | .long 0xB20C61DC // c0 (low single) |
1276 | .long 0x3F800000 // c1 (high 1 bit) |
1277 | .long 0x3ECD4F71 // c1 (low single) |
1278 | .long 0x3F631DAA // c2 |
1279 | .long 0x3F83B471 // c3 |
1280 | .long 0x3F7281EA // c4 |
1281 | .long 0x3F7B53D1 // B' = pi/2 - B (high single) |
1282 | .long 0x32955386 // B' = pi/2 - B (low single) |
1283 | .long 0x00000000 // tau (1 for cot path) |
1284 | .long 0x3F2B0DC1 // c0 (high single) |
1285 | .long 0x32AB7EBA // c0 (low single) |
1286 | .long 0x3F800000 // c1 (high 1 bit) |
1287 | .long 0x3EE496C2 // c1 (low single) |
1288 | .long 0x3F776C40 // c2 |
1289 | .long 0x3F9065C1 // c3 |
1290 | .long 0x3F89AFB6 // c4 |
1291 | .long 0x3F750B52 // B' = pi/2 - B (high single) |
1292 | .long 0x32EB316F // B' = pi/2 - B (low single) |
1293 | .long 0x00000000 // tau (1 for cot path) |
1294 | .long 0x3F344BA9 // c0 (high single) |
1295 | .long 0xB2B8B0EA // c0 (low single) |
1296 | .long 0x3F800000 // c1 (high 1 bit) |
1297 | .long 0x3EFDF4F7 // c1 (low single) |
1298 | .long 0x3F86DCA8 // c2 |
1299 | .long 0x3F9ED53B // c3 |
1300 | .long 0x3F9CBEDE // c4 |
1301 | .long 0x3F6EC2D4 // B' = pi/2 - B (high single) |
1302 | .long 0xB2BEF0A7 // B' = pi/2 - B (low single) |
1303 | .long 0x00000000 // tau (1 for cot path) |
1304 | .long 0x3F3DDCCF // c0 (high single) |
1305 | .long 0x32D29606 // c0 (low single) |
1306 | .long 0x40000000 // c1 (high 1 bit) |
1307 | .long 0xBEE6606F // c1 (low single) |
1308 | .long 0x3F9325D6 // c2 |
1309 | .long 0x3FAF4E69 // c3 |
1310 | .long 0x3FB3080C // c4 |
1311 | .long 0x3F687A55 // B' = pi/2 - B (high single) |
1312 | .long 0xB252257B // B' = pi/2 - B (low single) |
1313 | .long 0x00000000 // tau (1 for cot path) |
1314 | .long 0x3F47C8CC // c0 (high single) |
1315 | .long 0xB200F51A // c0 (low single) |
1316 | .long 0x40000000 // c1 (high 1 bit) |
1317 | .long 0xBEC82C6C // c1 (low single) |
1318 | .long 0x3FA0BAE9 // c2 |
1319 | .long 0x3FC2252F // c3 |
1320 | .long 0x3FCD24C7 // c4 |
1321 | .long 0x3F6231D6 // B' = pi/2 - B (high single) |
1322 | .long 0xB119A6A2 // B' = pi/2 - B (low single) |
1323 | .long 0x00000000 // tau (1 for cot path) |
1324 | .long 0x3F521801 // c0 (high single) |
1325 | .long 0x32AE4178 // c0 (low single) |
1326 | .long 0x40000000 // c1 (high 1 bit) |
1327 | .long 0xBEA72938 // c1 (low single) |
1328 | .long 0x3FAFCC22 // c2 |
1329 | .long 0x3FD7BD4A // c3 |
1330 | .long 0x3FEBB01B // c4 |
1331 | .long 0x3F5BE957 // B' = pi/2 - B (high single) |
1332 | .long 0x3205522A // B' = pi/2 - B (low single) |
1333 | .long 0x00000000 // tau (1 for cot path) |
1334 | .long 0x3F5CD3BE // c0 (high single) |
1335 | .long 0x31460308 // c0 (low single) |
1336 | .long 0x40000000 // c1 (high 1 bit) |
1337 | .long 0xBE8306C5 // c1 (low single) |
1338 | .long 0x3FC09232 // c2 |
1339 | .long 0x3FF09632 // c3 |
1340 | .long 0x4007DB00 // c4 |
1341 | .long 0x3F55A0D8 // B' = pi/2 - B (high single) |
1342 | .long 0x329886FF // B' = pi/2 - B (low single) |
1343 | .long 0x00000000 // tau (1 for cot path) |
1344 | .long 0x3F68065E // c0 (high single) |
1345 | .long 0x32670D1A // c0 (low single) |
1346 | .long 0x40000000 // c1 (high 1 bit) |
1347 | .long 0xBE36D1D6 // c1 (low single) |
1348 | .long 0x3FD35007 // c2 |
1349 | .long 0x4006A861 // c3 |
1350 | .long 0x401D4BDA // c4 |
1351 | .long 0x3F4F5859 // B' = pi/2 - B (high single) |
1352 | .long 0x32EE64E8 // B' = pi/2 - B (low single) |
1353 | .long 0x00000000 // tau (1 for cot path) |
1354 | .long 0x3F73BB75 // c0 (high single) |
1355 | .long 0x32FC908D // c0 (low single) |
1356 | .long 0x40000000 // c1 (high 1 bit) |
1357 | .long 0xBDBF94B0 // c1 (low single) |
1358 | .long 0x3FE8550F // c2 |
1359 | .long 0x40174F67 // c3 |
1360 | .long 0x4036C608 // c4 |
1361 | .long 0x3F490FDB // B' = pi/2 - B (high single) |
1362 | .long 0xB2BBBD2E // B' = pi/2 - B (low single) |
1363 | .long 0x3F800000 // tau (1 for cot path) |
1364 | .long 0xBE8BE60E // c0 (high single) |
1365 | .long 0x320D8D84 // c0 (low single) |
1366 | .long 0x3F000000 // c1 (high 1 bit) |
1367 | .long 0xBDF817B1 // c1 (low single) |
1368 | .long 0xBD8345EB // c2 |
1369 | .long 0x3D1DFDAC // c3 |
1370 | .long 0xBC52CF6F // c4 |
1371 | .long 0x3F42C75C // B' = pi/2 - B (high single) |
1372 | .long 0xB24BBE8A // B' = pi/2 - B (low single) |
1373 | .long 0x3F800000 // tau (1 for cot path) |
1374 | .long 0xBE87283F // c0 (high single) |
1375 | .long 0xB268B966 // c0 (low single) |
1376 | .long 0x3F000000 // c1 (high 1 bit) |
1377 | .long 0xBDFE6529 // c1 (low single) |
1378 | .long 0xBD7B1953 // c2 |
1379 | .long 0x3D18E109 // c3 |
1380 | .long 0xBC4570B0 // c4 |
1381 | .long 0x3F3C7EDD // B' = pi/2 - B (high single) |
1382 | .long 0xB1000ADD // B' = pi/2 - B (low single) |
1383 | .long 0x3F800000 // tau (1 for cot path) |
1384 | .long 0xBE827420 // c0 (high single) |
1385 | .long 0x320B8B4D // c0 (low single) |
1386 | .long 0x3E800000 // c1 (high 1 bit) |
1387 | .long 0x3DFB9428 // c1 (low single) |
1388 | .long 0xBD7002B4 // c2 |
1389 | .long 0x3D142A6C // c3 |
1390 | .long 0xBC3A47FF // c4 |
1391 | .long 0x3F36365E // B' = pi/2 - B (high single) |
1392 | .long 0x320BB91C // B' = pi/2 - B (low single) |
1393 | .long 0x3F800000 // tau (1 for cot path) |
1394 | .long 0xBE7B9282 // c0 (high single) |
1395 | .long 0xB13383D2 // c0 (low single) |
1396 | .long 0x3E800000 // c1 (high 1 bit) |
1397 | .long 0x3DF5D211 // c1 (low single) |
1398 | .long 0xBD6542B3 // c2 |
1399 | .long 0x3D0FE5E5 // c3 |
1400 | .long 0xBC31FB14 // c4 |
1401 | .long 0x3F2FEDDF // B' = pi/2 - B (high single) |
1402 | .long 0x329BBA77 // B' = pi/2 - B (low single) |
1403 | .long 0x3F800000 // tau (1 for cot path) |
1404 | .long 0xBE724E73 // c0 (high single) |
1405 | .long 0x3120C3E2 // c0 (low single) |
1406 | .long 0x3E800000 // c1 (high 1 bit) |
1407 | .long 0x3DF05283 // c1 (low single) |
1408 | .long 0xBD5AD45E // c2 |
1409 | .long 0x3D0BAFBF // c3 |
1410 | .long 0xBC27B8BB // c4 |
1411 | .long 0x3F29A560 // B' = pi/2 - B (high single) |
1412 | .long 0x32F19861 // B' = pi/2 - B (low single) |
1413 | .long 0x3F800000 // tau (1 for cot path) |
1414 | .long 0xBE691B44 // c0 (high single) |
1415 | .long 0x31F18936 // c0 (low single) |
1416 | .long 0x3E800000 // c1 (high 1 bit) |
1417 | .long 0x3DEB138B // c1 (low single) |
1418 | .long 0xBD50B2F7 // c2 |
1419 | .long 0x3D07BE3A // c3 |
1420 | .long 0xBC1E46A7 // c4 |
1421 | .long 0x3F235CE2 // B' = pi/2 - B (high single) |
1422 | .long 0xB2B889B6 // B' = pi/2 - B (low single) |
1423 | .long 0x3F800000 // tau (1 for cot path) |
1424 | .long 0xBE5FF82C // c0 (high single) |
1425 | .long 0xB170723A // c0 (low single) |
1426 | .long 0x3E800000 // c1 (high 1 bit) |
1427 | .long 0x3DE61354 // c1 (low single) |
1428 | .long 0xBD46DA06 // c2 |
1429 | .long 0x3D0401F8 // c3 |
1430 | .long 0xBC14E013 // c4 |
1431 | .long 0x3F1D1463 // B' = pi/2 - B (high single) |
1432 | .long 0xB2455799 // B' = pi/2 - B (low single) |
1433 | .long 0x3F800000 // tau (1 for cot path) |
1434 | .long 0xBE56E46B // c0 (high single) |
1435 | .long 0x31E3F001 // c0 (low single) |
1436 | .long 0x3E800000 // c1 (high 1 bit) |
1437 | .long 0x3DE15025 // c1 (low single) |
1438 | .long 0xBD3D4550 // c2 |
1439 | .long 0x3D00462D // c3 |
1440 | .long 0xBC092C98 // c4 |
1441 | .long 0x3F16CBE4 // B' = pi/2 - B (high single) |
1442 | .long 0xB0CCDE2E // B' = pi/2 - B (low single) |
1443 | .long 0x3F800000 // tau (1 for cot path) |
1444 | .long 0xBE4DDF41 // c0 (high single) |
1445 | .long 0xB1AEA094 // c0 (low single) |
1446 | .long 0x3E800000 // c1 (high 1 bit) |
1447 | .long 0x3DDCC85C // c1 (low single) |
1448 | .long 0xBD33F0BE // c2 |
1449 | .long 0x3CFA23B0 // c3 |
1450 | .long 0xBC01FCF7 // c4 |
1451 | .long 0x3F108365 // B' = pi/2 - B (high single) |
1452 | .long 0x3212200D // B' = pi/2 - B (low single) |
1453 | .long 0x3F800000 // tau (1 for cot path) |
1454 | .long 0xBE44E7F8 // c0 (high single) |
1455 | .long 0xB1CAA3CB // c0 (low single) |
1456 | .long 0x3E800000 // c1 (high 1 bit) |
1457 | .long 0x3DD87A74 // c1 (low single) |
1458 | .long 0xBD2AD885 // c2 |
1459 | .long 0x3CF3C785 // c3 |
1460 | .long 0xBBF1E348 // c4 |
1461 | .long 0x3F0A3AE6 // B' = pi/2 - B (high single) |
1462 | .long 0x329EEDF0 // B' = pi/2 - B (low single) |
1463 | .long 0x3F800000 // tau (1 for cot path) |
1464 | .long 0xBE3BFDDC // c0 (high single) |
1465 | .long 0xB132521A // c0 (low single) |
1466 | .long 0x3E800000 // c1 (high 1 bit) |
1467 | .long 0x3DD464FC // c1 (low single) |
1468 | .long 0xBD21F8F1 // c2 |
1469 | .long 0x3CEE3076 // c3 |
1470 | .long 0xBBE6D263 // c4 |
1471 | .long 0x3F03F267 // B' = pi/2 - B (high single) |
1472 | .long 0x32F4CBD9 // B' = pi/2 - B (low single) |
1473 | .long 0x3F800000 // tau (1 for cot path) |
1474 | .long 0xBE33203E // c0 (high single) |
1475 | .long 0x31FEF5BE // c0 (low single) |
1476 | .long 0x3E800000 // c1 (high 1 bit) |
1477 | .long 0x3DD0869C // c1 (low single) |
1478 | .long 0xBD194E8C // c2 |
1479 | .long 0x3CE8DCA9 // c3 |
1480 | .long 0xBBDADA55 // c4 |
1481 | .long 0x3EFB53D1 // B' = pi/2 - B (high single) |
1482 | .long 0x32155386 // B' = pi/2 - B (low single) |
1483 | .long 0x3F800000 // tau (1 for cot path) |
1484 | .long 0xBE2A4E71 // c0 (high single) |
1485 | .long 0xB19CFCEC // c0 (low single) |
1486 | .long 0x3E800000 // c1 (high 1 bit) |
1487 | .long 0x3DCCDE11 // c1 (low single) |
1488 | .long 0xBD10D605 // c2 |
1489 | .long 0x3CE382A7 // c3 |
1490 | .long 0xBBC8BD97 // c4 |
1491 | .long 0x3EEEC2D4 // B' = pi/2 - B (high single) |
1492 | .long 0xB23EF0A7 // B' = pi/2 - B (low single) |
1493 | .long 0x3F800000 // tau (1 for cot path) |
1494 | .long 0xBE2187D0 // c0 (high single) |
1495 | .long 0xB1B7C7F7 // c0 (low single) |
1496 | .long 0x3E800000 // c1 (high 1 bit) |
1497 | .long 0x3DC96A2B // c1 (low single) |
1498 | .long 0xBD088C22 // c2 |
1499 | .long 0x3CDE950E // c3 |
1500 | .long 0xBBB89AD1 // c4 |
1501 | .long 0x3EE231D6 // B' = pi/2 - B (high single) |
1502 | .long 0xB099A6A2 // B' = pi/2 - B (low single) |
1503 | .long 0x3F800000 // tau (1 for cot path) |
1504 | .long 0xBE18CBB7 // c0 (high single) |
1505 | .long 0xAFE28430 // c0 (low single) |
1506 | .long 0x3E800000 // c1 (high 1 bit) |
1507 | .long 0x3DC629CE // c1 (low single) |
1508 | .long 0xBD006DCD // c2 |
1509 | .long 0x3CDA5A2C // c3 |
1510 | .long 0xBBB0B3D2 // c4 |
1511 | .long 0x3ED5A0D8 // B' = pi/2 - B (high single) |
1512 | .long 0x321886FF // B' = pi/2 - B (low single) |
1513 | .long 0x3F800000 // tau (1 for cot path) |
1514 | .long 0xBE101985 // c0 (high single) |
1515 | .long 0xB02FB2B8 // c0 (low single) |
1516 | .long 0x3E800000 // c1 (high 1 bit) |
1517 | .long 0x3DC31BF3 // c1 (low single) |
1518 | .long 0xBCF0F04D // c2 |
1519 | .long 0x3CD60BC7 // c3 |
1520 | .long 0xBBA138BA // c4 |
1521 | .long 0x3EC90FDB // B' = pi/2 - B (high single) |
1522 | .long 0xB23BBD2E // B' = pi/2 - B (low single) |
1523 | .long 0x3F800000 // tau (1 for cot path) |
1524 | .long 0xBE07709D // c0 (high single) |
1525 | .long 0xB18A2A83 // c0 (low single) |
1526 | .long 0x3E800000 // c1 (high 1 bit) |
1527 | .long 0x3DC03FA2 // c1 (low single) |
1528 | .long 0xBCE15096 // c2 |
1529 | .long 0x3CD26472 // c3 |
1530 | .long 0xBB9A1270 // c4 |
1531 | .long 0x3EBC7EDD // B' = pi/2 - B (high single) |
1532 | .long 0xB0800ADD // B' = pi/2 - B (low single) |
1533 | .long 0x3F800000 // tau (1 for cot path) |
1534 | .long 0xBDFDA0CB // c0 (high single) |
1535 | .long 0x2F14FCA0 // c0 (low single) |
1536 | .long 0x3E800000 // c1 (high 1 bit) |
1537 | .long 0x3DBD93F7 // c1 (low single) |
1538 | .long 0xBCD1F71B // c2 |
1539 | .long 0x3CCEDD2B // c3 |
1540 | .long 0xBB905946 // c4 |
1541 | .long 0x3EAFEDDF // B' = pi/2 - B (high single) |
1542 | .long 0x321BBA77 // B' = pi/2 - B (low single) |
1543 | .long 0x3F800000 // tau (1 for cot path) |
1544 | .long 0xBDEC708C // c0 (high single) |
1545 | .long 0xB14895C4 // c0 (low single) |
1546 | .long 0x3E800000 // c1 (high 1 bit) |
1547 | .long 0x3DBB181E // c1 (low single) |
1548 | .long 0xBCC2DEA6 // c2 |
1549 | .long 0x3CCB5027 // c3 |
1550 | .long 0xBB7F3969 // c4 |
1551 | .long 0x3EA35CE2 // B' = pi/2 - B (high single) |
1552 | .long 0xB23889B6 // B' = pi/2 - B (low single) |
1553 | .long 0x3F800000 // tau (1 for cot path) |
1554 | .long 0xBDDB4F55 // c0 (high single) |
1555 | .long 0x30F6437E // c0 (low single) |
1556 | .long 0x3E800000 // c1 (high 1 bit) |
1557 | .long 0x3DB8CB52 // c1 (low single) |
1558 | .long 0xBCB40210 // c2 |
1559 | .long 0x3CC82D45 // c3 |
1560 | .long 0xBB643075 // c4 |
1561 | .long 0x3E96CBE4 // B' = pi/2 - B (high single) |
1562 | .long 0xB04CDE2E // B' = pi/2 - B (low single) |
1563 | .long 0x3F800000 // tau (1 for cot path) |
1564 | .long 0xBDCA3BFF // c0 (high single) |
1565 | .long 0x311C95EA // c0 (low single) |
1566 | .long 0x3E800000 // c1 (high 1 bit) |
1567 | .long 0x3DB6ACDE // c1 (low single) |
1568 | .long 0xBCA55C5B // c2 |
1569 | .long 0x3CC5BC04 // c3 |
1570 | .long 0xBB63A969 // c4 |
1571 | .long 0x3E8A3AE6 // B' = pi/2 - B (high single) |
1572 | .long 0x321EEDF0 // B' = pi/2 - B (low single) |
1573 | .long 0x3F800000 // tau (1 for cot path) |
1574 | .long 0xBDB93569 // c0 (high single) |
1575 | .long 0xAFB9ED00 // c0 (low single) |
1576 | .long 0x3E800000 // c1 (high 1 bit) |
1577 | .long 0x3DB4BC1F // c1 (low single) |
1578 | .long 0xBC96E905 // c2 |
1579 | .long 0x3CC2E6F5 // c3 |
1580 | .long 0xBB3E10A6 // c4 |
1581 | .long 0x3E7B53D1 // B' = pi/2 - B (high single) |
1582 | .long 0x31955386 // B' = pi/2 - B (low single) |
1583 | .long 0x3F800000 // tau (1 for cot path) |
1584 | .long 0xBDA83A77 // c0 (high single) |
1585 | .long 0x316D967A // c0 (low single) |
1586 | .long 0x3E800000 // c1 (high 1 bit) |
1587 | .long 0x3DB2F87C // c1 (low single) |
1588 | .long 0xBC88A31F // c2 |
1589 | .long 0x3CC0E763 // c3 |
1590 | .long 0xBB3F1666 // c4 |
1591 | .long 0x3E6231D6 // B' = pi/2 - B (high single) |
1592 | .long 0xB019A6A2 // B' = pi/2 - B (low single) |
1593 | .long 0x3F800000 // tau (1 for cot path) |
1594 | .long 0xBD974A0D // c0 (high single) |
1595 | .long 0xB14F365B // c0 (low single) |
1596 | .long 0x3E800000 // c1 (high 1 bit) |
1597 | .long 0x3DB1616F // c1 (low single) |
1598 | .long 0xBC750CD8 // c2 |
1599 | .long 0x3CBEB595 // c3 |
1600 | .long 0xBB22B883 // c4 |
1601 | .long 0x3E490FDB // B' = pi/2 - B (high single) |
1602 | .long 0xB1BBBD2E // B' = pi/2 - B (low single) |
1603 | .long 0x3F800000 // tau (1 for cot path) |
1604 | .long 0xBD866317 // c0 (high single) |
1605 | .long 0xAFF02140 // c0 (low single) |
1606 | .long 0x3E800000 // c1 (high 1 bit) |
1607 | .long 0x3DAFF67D // c1 (low single) |
1608 | .long 0xBC591CD0 // c2 |
1609 | .long 0x3CBCBEAD // c3 |
1610 | .long 0xBB04BBEC // c4 |
1611 | .long 0x3E2FEDDF // B' = pi/2 - B (high single) |
1612 | .long 0x319BBA77 // B' = pi/2 - B (low single) |
1613 | .long 0x3F800000 // tau (1 for cot path) |
1614 | .long 0xBD6B08FF // c0 (high single) |
1615 | .long 0xB0EED236 // c0 (low single) |
1616 | .long 0x3E800000 // c1 (high 1 bit) |
1617 | .long 0x3DAEB739 // c1 (low single) |
1618 | .long 0xBC3D6D51 // c2 |
1619 | .long 0x3CBB485D // c3 |
1620 | .long 0xBAFFF5BA // c4 |
1621 | .long 0x3E16CBE4 // B' = pi/2 - B (high single) |
1622 | .long 0xAFCCDE2E // B' = pi/2 - B (low single) |
1623 | .long 0x3F800000 // tau (1 for cot path) |
1624 | .long 0xBD495A6C // c0 (high single) |
1625 | .long 0xB0A427BD // c0 (low single) |
1626 | .long 0x3E800000 // c1 (high 1 bit) |
1627 | .long 0x3DADA345 // c1 (low single) |
1628 | .long 0xBC21F648 // c2 |
1629 | .long 0x3CB9D1B4 // c3 |
1630 | .long 0xBACB5567 // c4 |
1631 | .long 0x3DFB53D1 // B' = pi/2 - B (high single) |
1632 | .long 0x31155386 // B' = pi/2 - B (low single) |
1633 | .long 0x3F800000 // tau (1 for cot path) |
1634 | .long 0xBD27B856 // c0 (high single) |
1635 | .long 0xB0F7EE91 // c0 (low single) |
1636 | .long 0x3E800000 // c1 (high 1 bit) |
1637 | .long 0x3DACBA4E // c1 (low single) |
1638 | .long 0xBC06AEE3 // c2 |
1639 | .long 0x3CB8E5DC // c3 |
1640 | .long 0xBAEC00EE // c4 |
1641 | .long 0x3DC90FDB // B' = pi/2 - B (high single) |
1642 | .long 0xB13BBD2E // B' = pi/2 - B (low single) |
1643 | .long 0x3F800000 // tau (1 for cot path) |
1644 | .long 0xBD0620A3 // c0 (high single) |
1645 | .long 0xB0ECAB40 // c0 (low single) |
1646 | .long 0x3E800000 // c1 (high 1 bit) |
1647 | .long 0x3DABFC11 // c1 (low single) |
1648 | .long 0xBBD7200F // c2 |
1649 | .long 0x3CB79475 // c3 |
1650 | .long 0xBA2B0ADC // c4 |
1651 | .long 0x3D96CBE4 // B' = pi/2 - B (high single) |
1652 | .long 0xAF4CDE2E // B' = pi/2 - B (low single) |
1653 | .long 0x3F800000 // tau (1 for cot path) |
1654 | .long 0xBCC92278 // c0 (high single) |
1655 | .long 0x302F2E68 // c0 (low single) |
1656 | .long 0x3E800000 // c1 (high 1 bit) |
1657 | .long 0x3DAB6854 // c1 (low single) |
1658 | .long 0xBBA1214F // c2 |
1659 | .long 0x3CB6C1E9 // c3 |
1660 | .long 0x3843C2F3 // c4 |
1661 | .long 0x3D490FDB // B' = pi/2 - B (high single) |
1662 | .long 0xB0BBBD2E // B' = pi/2 - B (low single) |
1663 | .long 0x3F800000 // tau (1 for cot path) |
1664 | .long 0xBC861015 // c0 (high single) |
1665 | .long 0xAFD68E2E // c0 (low single) |
1666 | .long 0x3E800000 // c1 (high 1 bit) |
1667 | .long 0x3DAAFEEB // c1 (low single) |
1668 | .long 0xBB569F3F // c2 |
1669 | .long 0x3CB6A84E // c3 |
1670 | .long 0xBAC64194 // c4 |
1671 | .long 0x3CC90FDB // B' = pi/2 - B (high single) |
1672 | .long 0xB03BBD2E // B' = pi/2 - B (low single) |
1673 | .long 0x3F800000 // tau (1 for cot path) |
1674 | .long 0xBC060BF3 // c0 (high single) |
1675 | .long 0x2FE251AE // c0 (low single) |
1676 | .long 0x3E800000 // c1 (high 1 bit) |
1677 | .long 0x3DAABFB9 // c1 (low single) |
1678 | .long 0xBAD67C60 // c2 |
1679 | .long 0x3CB64CA5 // c3 |
1680 | .long 0xBACDE881 // c4 |
1681 | .long 0x00000000 // B' = pi/2 - B (high single) |
1682 | .long 0x00000000 // B' = pi/2 - B (low single) |
1683 | .long 0x3F800000 // tau (1 for cot path) |
1684 | .long 0x00000000 // c0 (high single) |
1685 | .long 0x00000000 // c0 (low single) |
1686 | .long 0x3E800000 // c1 (high 1 bit) |
1687 | .long 0x3DAAAAAB // c1 (low single) |
1688 | .long 0x00000000 // c2 |
1689 | .long 0x3CB5E28B // c3 |
1690 | .long 0x00000000 // c4 |
1691 | .long 0xBCC90FDB // B' = pi/2 - B (high single) |
1692 | .long 0x303BBD2E // B' = pi/2 - B (low single) |
1693 | .long 0x3F800000 // tau (1 for cot path) |
1694 | .long 0x3C060BF3 // c0 (high single) |
1695 | .long 0xAFE251AE // c0 (low single) |
1696 | .long 0x3E800000 // c1 (high 1 bit) |
1697 | .long 0x3DAABFB9 // c1 (low single) |
1698 | .long 0x3AD67C60 // c2 |
1699 | .long 0x3CB64CA5 // c3 |
1700 | .long 0x3ACDE881 // c4 |
1701 | .long 0xBD490FDB // B' = pi/2 - B (high single) |
1702 | .long 0x30BBBD2E // B' = pi/2 - B (low single) |
1703 | .long 0x3F800000 // tau (1 for cot path) |
1704 | .long 0x3C861015 // c0 (high single) |
1705 | .long 0x2FD68E2E // c0 (low single) |
1706 | .long 0x3E800000 // c1 (high 1 bit) |
1707 | .long 0x3DAAFEEB // c1 (low single) |
1708 | .long 0x3B569F3F // c2 |
1709 | .long 0x3CB6A84E // c3 |
1710 | .long 0x3AC64194 // c4 |
1711 | .long 0xBD96CBE4 // B' = pi/2 - B (high single) |
1712 | .long 0x2F4CDE2E // B' = pi/2 - B (low single) |
1713 | .long 0x3F800000 // tau (1 for cot path) |
1714 | .long 0x3CC92278 // c0 (high single) |
1715 | .long 0xB02F2E68 // c0 (low single) |
1716 | .long 0x3E800000 // c1 (high 1 bit) |
1717 | .long 0x3DAB6854 // c1 (low single) |
1718 | .long 0x3BA1214F // c2 |
1719 | .long 0x3CB6C1E9 // c3 |
1720 | .long 0xB843C2F2 // c4 |
1721 | .long 0xBDC90FDB // B' = pi/2 - B (high single) |
1722 | .long 0x313BBD2E // B' = pi/2 - B (low single) |
1723 | .long 0x3F800000 // tau (1 for cot path) |
1724 | .long 0x3D0620A3 // c0 (high single) |
1725 | .long 0x30ECAB40 // c0 (low single) |
1726 | .long 0x3E800000 // c1 (high 1 bit) |
1727 | .long 0x3DABFC11 // c1 (low single) |
1728 | .long 0x3BD7200F // c2 |
1729 | .long 0x3CB79475 // c3 |
1730 | .long 0x3A2B0ADC // c4 |
1731 | .long 0xBDFB53D1 // B' = pi/2 - B (high single) |
1732 | .long 0xB1155386 // B' = pi/2 - B (low single) |
1733 | .long 0x3F800000 // tau (1 for cot path) |
1734 | .long 0x3D27B856 // c0 (high single) |
1735 | .long 0x30F7EE91 // c0 (low single) |
1736 | .long 0x3E800000 // c1 (high 1 bit) |
1737 | .long 0x3DACBA4E // c1 (low single) |
1738 | .long 0x3C06AEE3 // c2 |
1739 | .long 0x3CB8E5DC // c3 |
1740 | .long 0x3AEC00EE // c4 |
1741 | .long 0xBE16CBE4 // B' = pi/2 - B (high single) |
1742 | .long 0x2FCCDE2E // B' = pi/2 - B (low single) |
1743 | .long 0x3F800000 // tau (1 for cot path) |
1744 | .long 0x3D495A6C // c0 (high single) |
1745 | .long 0x30A427BD // c0 (low single) |
1746 | .long 0x3E800000 // c1 (high 1 bit) |
1747 | .long 0x3DADA345 // c1 (low single) |
1748 | .long 0x3C21F648 // c2 |
1749 | .long 0x3CB9D1B4 // c3 |
1750 | .long 0x3ACB5567 // c4 |
1751 | .long 0xBE2FEDDF // B' = pi/2 - B (high single) |
1752 | .long 0xB19BBA77 // B' = pi/2 - B (low single) |
1753 | .long 0x3F800000 // tau (1 for cot path) |
1754 | .long 0x3D6B08FF // c0 (high single) |
1755 | .long 0x30EED236 // c0 (low single) |
1756 | .long 0x3E800000 // c1 (high 1 bit) |
1757 | .long 0x3DAEB739 // c1 (low single) |
1758 | .long 0x3C3D6D51 // c2 |
1759 | .long 0x3CBB485D // c3 |
1760 | .long 0x3AFFF5BA // c4 |
1761 | .long 0xBE490FDB // B' = pi/2 - B (high single) |
1762 | .long 0x31BBBD2E // B' = pi/2 - B (low single) |
1763 | .long 0x3F800000 // tau (1 for cot path) |
1764 | .long 0x3D866317 // c0 (high single) |
1765 | .long 0x2FF02140 // c0 (low single) |
1766 | .long 0x3E800000 // c1 (high 1 bit) |
1767 | .long 0x3DAFF67D // c1 (low single) |
1768 | .long 0x3C591CD0 // c2 |
1769 | .long 0x3CBCBEAD // c3 |
1770 | .long 0x3B04BBEC // c4 |
1771 | .long 0xBE6231D6 // B' = pi/2 - B (high single) |
1772 | .long 0x3019A6A2 // B' = pi/2 - B (low single) |
1773 | .long 0x3F800000 // tau (1 for cot path) |
1774 | .long 0x3D974A0D // c0 (high single) |
1775 | .long 0x314F365B // c0 (low single) |
1776 | .long 0x3E800000 // c1 (high 1 bit) |
1777 | .long 0x3DB1616F // c1 (low single) |
1778 | .long 0x3C750CD8 // c2 |
1779 | .long 0x3CBEB595 // c3 |
1780 | .long 0x3B22B883 // c4 |
1781 | .long 0xBE7B53D1 // B' = pi/2 - B (high single) |
1782 | .long 0xB1955386 // B' = pi/2 - B (low single) |
1783 | .long 0x3F800000 // tau (1 for cot path) |
1784 | .long 0x3DA83A77 // c0 (high single) |
1785 | .long 0xB16D967A // c0 (low single) |
1786 | .long 0x3E800000 // c1 (high 1 bit) |
1787 | .long 0x3DB2F87C // c1 (low single) |
1788 | .long 0x3C88A31F // c2 |
1789 | .long 0x3CC0E763 // c3 |
1790 | .long 0x3B3F1666 // c4 |
1791 | .long 0xBE8A3AE6 // B' = pi/2 - B (high single) |
1792 | .long 0xB21EEDF0 // B' = pi/2 - B (low single) |
1793 | .long 0x3F800000 // tau (1 for cot path) |
1794 | .long 0x3DB93569 // c0 (high single) |
1795 | .long 0x2FB9ED00 // c0 (low single) |
1796 | .long 0x3E800000 // c1 (high 1 bit) |
1797 | .long 0x3DB4BC1F // c1 (low single) |
1798 | .long 0x3C96E905 // c2 |
1799 | .long 0x3CC2E6F5 // c3 |
1800 | .long 0x3B3E10A6 // c4 |
1801 | .long 0xBE96CBE4 // B' = pi/2 - B (high single) |
1802 | .long 0x304CDE2E // B' = pi/2 - B (low single) |
1803 | .long 0x3F800000 // tau (1 for cot path) |
1804 | .long 0x3DCA3BFF // c0 (high single) |
1805 | .long 0xB11C95EA // c0 (low single) |
1806 | .long 0x3E800000 // c1 (high 1 bit) |
1807 | .long 0x3DB6ACDE // c1 (low single) |
1808 | .long 0x3CA55C5B // c2 |
1809 | .long 0x3CC5BC04 // c3 |
1810 | .long 0x3B63A969 // c4 |
1811 | .long 0xBEA35CE2 // B' = pi/2 - B (high single) |
1812 | .long 0x323889B6 // B' = pi/2 - B (low single) |
1813 | .long 0x3F800000 // tau (1 for cot path) |
1814 | .long 0x3DDB4F55 // c0 (high single) |
1815 | .long 0xB0F6437E // c0 (low single) |
1816 | .long 0x3E800000 // c1 (high 1 bit) |
1817 | .long 0x3DB8CB52 // c1 (low single) |
1818 | .long 0x3CB40210 // c2 |
1819 | .long 0x3CC82D45 // c3 |
1820 | .long 0x3B643075 // c4 |
1821 | .long 0xBEAFEDDF // B' = pi/2 - B (high single) |
1822 | .long 0xB21BBA77 // B' = pi/2 - B (low single) |
1823 | .long 0x3F800000 // tau (1 for cot path) |
1824 | .long 0x3DEC708C // c0 (high single) |
1825 | .long 0x314895C4 // c0 (low single) |
1826 | .long 0x3E800000 // c1 (high 1 bit) |
1827 | .long 0x3DBB181E // c1 (low single) |
1828 | .long 0x3CC2DEA6 // c2 |
1829 | .long 0x3CCB5027 // c3 |
1830 | .long 0x3B7F3969 // c4 |
1831 | .long 0xBEBC7EDD // B' = pi/2 - B (high single) |
1832 | .long 0x30800ADD // B' = pi/2 - B (low single) |
1833 | .long 0x3F800000 // tau (1 for cot path) |
1834 | .long 0x3DFDA0CB // c0 (high single) |
1835 | .long 0xAF14FCA0 // c0 (low single) |
1836 | .long 0x3E800000 // c1 (high 1 bit) |
1837 | .long 0x3DBD93F7 // c1 (low single) |
1838 | .long 0x3CD1F71B // c2 |
1839 | .long 0x3CCEDD2B // c3 |
1840 | .long 0x3B905946 // c4 |
1841 | .long 0xBEC90FDB // B' = pi/2 - B (high single) |
1842 | .long 0x323BBD2E // B' = pi/2 - B (low single) |
1843 | .long 0x3F800000 // tau (1 for cot path) |
1844 | .long 0x3E07709D // c0 (high single) |
1845 | .long 0x318A2A83 // c0 (low single) |
1846 | .long 0x3E800000 // c1 (high 1 bit) |
1847 | .long 0x3DC03FA2 // c1 (low single) |
1848 | .long 0x3CE15096 // c2 |
1849 | .long 0x3CD26472 // c3 |
1850 | .long 0x3B9A1270 // c4 |
1851 | .long 0xBED5A0D8 // B' = pi/2 - B (high single) |
1852 | .long 0xB21886FF // B' = pi/2 - B (low single) |
1853 | .long 0x3F800000 // tau (1 for cot path) |
1854 | .long 0x3E101985 // c0 (high single) |
1855 | .long 0x302FB2B8 // c0 (low single) |
1856 | .long 0x3E800000 // c1 (high 1 bit) |
1857 | .long 0x3DC31BF3 // c1 (low single) |
1858 | .long 0x3CF0F04D // c2 |
1859 | .long 0x3CD60BC7 // c3 |
1860 | .long 0x3BA138BA // c4 |
1861 | .long 0xBEE231D6 // B' = pi/2 - B (high single) |
1862 | .long 0x3099A6A2 // B' = pi/2 - B (low single) |
1863 | .long 0x3F800000 // tau (1 for cot path) |
1864 | .long 0x3E18CBB7 // c0 (high single) |
1865 | .long 0x2FE28430 // c0 (low single) |
1866 | .long 0x3E800000 // c1 (high 1 bit) |
1867 | .long 0x3DC629CE // c1 (low single) |
1868 | .long 0x3D006DCD // c2 |
1869 | .long 0x3CDA5A2C // c3 |
1870 | .long 0x3BB0B3D2 // c4 |
1871 | .long 0xBEEEC2D4 // B' = pi/2 - B (high single) |
1872 | .long 0x323EF0A7 // B' = pi/2 - B (low single) |
1873 | .long 0x3F800000 // tau (1 for cot path) |
1874 | .long 0x3E2187D0 // c0 (high single) |
1875 | .long 0x31B7C7F7 // c0 (low single) |
1876 | .long 0x3E800000 // c1 (high 1 bit) |
1877 | .long 0x3DC96A2B // c1 (low single) |
1878 | .long 0x3D088C22 // c2 |
1879 | .long 0x3CDE950E // c3 |
1880 | .long 0x3BB89AD1 // c4 |
1881 | .long 0xBEFB53D1 // B' = pi/2 - B (high single) |
1882 | .long 0xB2155386 // B' = pi/2 - B (low single) |
1883 | .long 0x3F800000 // tau (1 for cot path) |
1884 | .long 0x3E2A4E71 // c0 (high single) |
1885 | .long 0x319CFCEC // c0 (low single) |
1886 | .long 0x3E800000 // c1 (high 1 bit) |
1887 | .long 0x3DCCDE11 // c1 (low single) |
1888 | .long 0x3D10D605 // c2 |
1889 | .long 0x3CE382A7 // c3 |
1890 | .long 0x3BC8BD97 // c4 |
1891 | .long 0xBF03F267 // B' = pi/2 - B (high single) |
1892 | .long 0xB2F4CBD9 // B' = pi/2 - B (low single) |
1893 | .long 0x3F800000 // tau (1 for cot path) |
1894 | .long 0x3E33203E // c0 (high single) |
1895 | .long 0xB1FEF5BE // c0 (low single) |
1896 | .long 0x3E800000 // c1 (high 1 bit) |
1897 | .long 0x3DD0869C // c1 (low single) |
1898 | .long 0x3D194E8C // c2 |
1899 | .long 0x3CE8DCA9 // c3 |
1900 | .long 0x3BDADA55 // c4 |
1901 | .long 0xBF0A3AE6 // B' = pi/2 - B (high single) |
1902 | .long 0xB29EEDF0 // B' = pi/2 - B (low single) |
1903 | .long 0x3F800000 // tau (1 for cot path) |
1904 | .long 0x3E3BFDDC // c0 (high single) |
1905 | .long 0x3132521A // c0 (low single) |
1906 | .long 0x3E800000 // c1 (high 1 bit) |
1907 | .long 0x3DD464FC // c1 (low single) |
1908 | .long 0x3D21F8F1 // c2 |
1909 | .long 0x3CEE3076 // c3 |
1910 | .long 0x3BE6D263 // c4 |
1911 | .long 0xBF108365 // B' = pi/2 - B (high single) |
1912 | .long 0xB212200D // B' = pi/2 - B (low single) |
1913 | .long 0x3F800000 // tau (1 for cot path) |
1914 | .long 0x3E44E7F8 // c0 (high single) |
1915 | .long 0x31CAA3CB // c0 (low single) |
1916 | .long 0x3E800000 // c1 (high 1 bit) |
1917 | .long 0x3DD87A74 // c1 (low single) |
1918 | .long 0x3D2AD885 // c2 |
1919 | .long 0x3CF3C785 // c3 |
1920 | .long 0x3BF1E348 // c4 |
1921 | .long 0xBF16CBE4 // B' = pi/2 - B (high single) |
1922 | .long 0x30CCDE2E // B' = pi/2 - B (low single) |
1923 | .long 0x3F800000 // tau (1 for cot path) |
1924 | .long 0x3E4DDF41 // c0 (high single) |
1925 | .long 0x31AEA094 // c0 (low single) |
1926 | .long 0x3E800000 // c1 (high 1 bit) |
1927 | .long 0x3DDCC85C // c1 (low single) |
1928 | .long 0x3D33F0BE // c2 |
1929 | .long 0x3CFA23B0 // c3 |
1930 | .long 0x3C01FCF7 // c4 |
1931 | .long 0xBF1D1463 // B' = pi/2 - B (high single) |
1932 | .long 0x32455799 // B' = pi/2 - B (low single) |
1933 | .long 0x3F800000 // tau (1 for cot path) |
1934 | .long 0x3E56E46B // c0 (high single) |
1935 | .long 0xB1E3F001 // c0 (low single) |
1936 | .long 0x3E800000 // c1 (high 1 bit) |
1937 | .long 0x3DE15025 // c1 (low single) |
1938 | .long 0x3D3D4550 // c2 |
1939 | .long 0x3D00462D // c3 |
1940 | .long 0x3C092C98 // c4 |
1941 | .long 0xBF235CE2 // B' = pi/2 - B (high single) |
1942 | .long 0x32B889B6 // B' = pi/2 - B (low single) |
1943 | .long 0x3F800000 // tau (1 for cot path) |
1944 | .long 0x3E5FF82C // c0 (high single) |
1945 | .long 0x3170723A // c0 (low single) |
1946 | .long 0x3E800000 // c1 (high 1 bit) |
1947 | .long 0x3DE61354 // c1 (low single) |
1948 | .long 0x3D46DA06 // c2 |
1949 | .long 0x3D0401F8 // c3 |
1950 | .long 0x3C14E013 // c4 |
1951 | .long 0xBF29A560 // B' = pi/2 - B (high single) |
1952 | .long 0xB2F19861 // B' = pi/2 - B (low single) |
1953 | .long 0x3F800000 // tau (1 for cot path) |
1954 | .long 0x3E691B44 // c0 (high single) |
1955 | .long 0xB1F18936 // c0 (low single) |
1956 | .long 0x3E800000 // c1 (high 1 bit) |
1957 | .long 0x3DEB138B // c1 (low single) |
1958 | .long 0x3D50B2F7 // c2 |
1959 | .long 0x3D07BE3A // c3 |
1960 | .long 0x3C1E46A7 // c4 |
1961 | .long 0xBF2FEDDF // B' = pi/2 - B (high single) |
1962 | .long 0xB29BBA77 // B' = pi/2 - B (low single) |
1963 | .long 0x3F800000 // tau (1 for cot path) |
1964 | .long 0x3E724E73 // c0 (high single) |
1965 | .long 0xB120C3E2 // c0 (low single) |
1966 | .long 0x3E800000 // c1 (high 1 bit) |
1967 | .long 0x3DF05283 // c1 (low single) |
1968 | .long 0x3D5AD45E // c2 |
1969 | .long 0x3D0BAFBF // c3 |
1970 | .long 0x3C27B8BB // c4 |
1971 | .long 0xBF36365E // B' = pi/2 - B (high single) |
1972 | .long 0xB20BB91C // B' = pi/2 - B (low single) |
1973 | .long 0x3F800000 // tau (1 for cot path) |
1974 | .long 0x3E7B9282 // c0 (high single) |
1975 | .long 0x313383D2 // c0 (low single) |
1976 | .long 0x3E800000 // c1 (high 1 bit) |
1977 | .long 0x3DF5D211 // c1 (low single) |
1978 | .long 0x3D6542B3 // c2 |
1979 | .long 0x3D0FE5E5 // c3 |
1980 | .long 0x3C31FB14 // c4 |
1981 | .long 0xBF3C7EDD // B' = pi/2 - B (high single) |
1982 | .long 0x31000ADD // B' = pi/2 - B (low single) |
1983 | .long 0x3F800000 // tau (1 for cot path) |
1984 | .long 0x3E827420 // c0 (high single) |
1985 | .long 0xB20B8B4D // c0 (low single) |
1986 | .long 0x3E800000 // c1 (high 1 bit) |
1987 | .long 0x3DFB9428 // c1 (low single) |
1988 | .long 0x3D7002B4 // c2 |
1989 | .long 0x3D142A6C // c3 |
1990 | .long 0x3C3A47FF // c4 |
1991 | .long 0xBF42C75C // B' = pi/2 - B (high single) |
1992 | .long 0x324BBE8A // B' = pi/2 - B (low single) |
1993 | .long 0x3F800000 // tau (1 for cot path) |
1994 | .long 0x3E87283F // c0 (high single) |
1995 | .long 0x3268B966 // c0 (low single) |
1996 | .long 0x3F000000 // c1 (high 1 bit) |
1997 | .long 0xBDFE6529 // c1 (low single) |
1998 | .long 0x3D7B1953 // c2 |
1999 | .long 0x3D18E109 // c3 |
2000 | .long 0x3C4570B0 // c4 |
2001 | .long 0xBF490FDB // B' = pi/2 - B (high single) |
2002 | .long 0x32BBBD2E // B' = pi/2 - B (low single) |
2003 | .long 0x00000000 // tau (1 for cot path) |
2004 | .long 0xBF800000 // c0 (high single) |
2005 | .long 0x2B410000 // c0 (low single) |
2006 | .long 0x40000000 // c1 (high 1 bit) |
2007 | .long 0xB3000000 // c1 (low single) |
2008 | .long 0xC0000000 // c2 |
2009 | .long 0x402AB7C8 // c3 |
2010 | .long 0xC05561DB // c4 |
2011 | .long 0xBF4F5859 // B' = pi/2 - B (high single) |
2012 | .long 0xB2EE64E8 // B' = pi/2 - B (low single) |
2013 | .long 0x00000000 // tau (1 for cot path) |
2014 | .long 0xBF73BB75 // c0 (high single) |
2015 | .long 0xB2FC908D // c0 (low single) |
2016 | .long 0x40000000 // c1 (high 1 bit) |
2017 | .long 0xBDBF94B0 // c1 (low single) |
2018 | .long 0xBFE8550F // c2 |
2019 | .long 0x40174F67 // c3 |
2020 | .long 0xC036C608 // c4 |
2021 | .long 0xBF55A0D8 // B' = pi/2 - B (high single) |
2022 | .long 0xB29886FF // B' = pi/2 - B (low single) |
2023 | .long 0x00000000 // tau (1 for cot path) |
2024 | .long 0xBF68065E // c0 (high single) |
2025 | .long 0xB2670D1A // c0 (low single) |
2026 | .long 0x40000000 // c1 (high 1 bit) |
2027 | .long 0xBE36D1D6 // c1 (low single) |
2028 | .long 0xBFD35007 // c2 |
2029 | .long 0x4006A861 // c3 |
2030 | .long 0xC01D4BDA // c4 |
2031 | .long 0xBF5BE957 // B' = pi/2 - B (high single) |
2032 | .long 0xB205522A // B' = pi/2 - B (low single) |
2033 | .long 0x00000000 // tau (1 for cot path) |
2034 | .long 0xBF5CD3BE // c0 (high single) |
2035 | .long 0xB1460308 // c0 (low single) |
2036 | .long 0x40000000 // c1 (high 1 bit) |
2037 | .long 0xBE8306C5 // c1 (low single) |
2038 | .long 0xBFC09232 // c2 |
2039 | .long 0x3FF09632 // c3 |
2040 | .long 0xC007DB00 // c4 |
2041 | .long 0xBF6231D6 // B' = pi/2 - B (high single) |
2042 | .long 0x3119A6A2 // B' = pi/2 - B (low single) |
2043 | .long 0x00000000 // tau (1 for cot path) |
2044 | .long 0xBF521801 // c0 (high single) |
2045 | .long 0xB2AE4178 // c0 (low single) |
2046 | .long 0x40000000 // c1 (high 1 bit) |
2047 | .long 0xBEA72938 // c1 (low single) |
2048 | .long 0xBFAFCC22 // c2 |
2049 | .long 0x3FD7BD4A // c3 |
2050 | .long 0xBFEBB01B // c4 |
2051 | .long 0xBF687A55 // B' = pi/2 - B (high single) |
2052 | .long 0x3252257B // B' = pi/2 - B (low single) |
2053 | .long 0x00000000 // tau (1 for cot path) |
2054 | .long 0xBF47C8CC // c0 (high single) |
2055 | .long 0x3200F51A // c0 (low single) |
2056 | .long 0x40000000 // c1 (high 1 bit) |
2057 | .long 0xBEC82C6C // c1 (low single) |
2058 | .long 0xBFA0BAE9 // c2 |
2059 | .long 0x3FC2252F // c3 |
2060 | .long 0xBFCD24C7 // c4 |
2061 | .long 0xBF6EC2D4 // B' = pi/2 - B (high single) |
2062 | .long 0x32BEF0A7 // B' = pi/2 - B (low single) |
2063 | .long 0x00000000 // tau (1 for cot path) |
2064 | .long 0xBF3DDCCF // c0 (high single) |
2065 | .long 0xB2D29606 // c0 (low single) |
2066 | .long 0x40000000 // c1 (high 1 bit) |
2067 | .long 0xBEE6606F // c1 (low single) |
2068 | .long 0xBF9325D6 // c2 |
2069 | .long 0x3FAF4E69 // c3 |
2070 | .long 0xBFB3080C // c4 |
2071 | .long 0xBF750B52 // B' = pi/2 - B (high single) |
2072 | .long 0xB2EB316F // B' = pi/2 - B (low single) |
2073 | .long 0x00000000 // tau (1 for cot path) |
2074 | .long 0xBF344BA9 // c0 (high single) |
2075 | .long 0x32B8B0EA // c0 (low single) |
2076 | .long 0x3F800000 // c1 (high 1 bit) |
2077 | .long 0x3EFDF4F7 // c1 (low single) |
2078 | .long 0xBF86DCA8 // c2 |
2079 | .long 0x3F9ED53B // c3 |
2080 | .long 0xBF9CBEDE // c4 |
2081 | .long 0xBF7B53D1 // B' = pi/2 - B (high single) |
2082 | .long 0xB2955386 // B' = pi/2 - B (low single) |
2083 | .long 0x00000000 // tau (1 for cot path) |
2084 | .long 0xBF2B0DC1 // c0 (high single) |
2085 | .long 0xB2AB7EBA // c0 (low single) |
2086 | .long 0x3F800000 // c1 (high 1 bit) |
2087 | .long 0x3EE496C2 // c1 (low single) |
2088 | .long 0xBF776C40 // c2 |
2089 | .long 0x3F9065C1 // c3 |
2090 | .long 0xBF89AFB6 // c4 |
2091 | .long 0xBF80CE28 // B' = pi/2 - B (high single) |
2092 | .long 0xB1FDD672 // B' = pi/2 - B (low single) |
2093 | .long 0x00000000 // tau (1 for cot path) |
2094 | .long 0xBF221C37 // c0 (high single) |
2095 | .long 0x320C61DC // c0 (low single) |
2096 | .long 0x3F800000 // c1 (high 1 bit) |
2097 | .long 0x3ECD4F71 // c1 (low single) |
2098 | .long 0xBF631DAA // c2 |
2099 | .long 0x3F83B471 // c3 |
2100 | .long 0xBF7281EA // c4 |
2101 | .long 0xBF83F267 // B' = pi/2 - B (high single) |
2102 | .long 0xB374CBD9 // B' = pi/2 - B (low single) |
2103 | .long 0x00000000 // tau (1 for cot path) |
2104 | .long 0xBF1970C4 // c0 (high single) |
2105 | .long 0xB2904848 // c0 (low single) |
2106 | .long 0x3F800000 // c1 (high 1 bit) |
2107 | .long 0x3EB7EFF8 // c1 (low single) |
2108 | .long 0xBF50907C // c2 |
2109 | .long 0x3F710FEA // c3 |
2110 | .long 0xBF561FED // c4 |
2111 | .long 0xBF8716A7 // B' = pi/2 - B (high single) |
2112 | .long 0x32588C6D // B' = pi/2 - B (low single) |
2113 | .long 0x00000000 // tau (1 for cot path) |
2114 | .long 0xBF1105AF // c0 (high single) |
2115 | .long 0xB2F045B0 // c0 (low single) |
2116 | .long 0x3F800000 // c1 (high 1 bit) |
2117 | .long 0x3EA44EE2 // c1 (low single) |
2118 | .long 0xBF3F8FDB // c2 |
2119 | .long 0x3F5D3FD0 // c3 |
2120 | .long 0xBF3D0A23 // c4 |
2121 | .long 0xBF8A3AE6 // B' = pi/2 - B (high single) |
2122 | .long 0xB31EEDF0 // B' = pi/2 - B (low single) |
2123 | .long 0x00000000 // tau (1 for cot path) |
2124 | .long 0xBF08D5B9 // c0 (high single) |
2125 | .long 0x325EF98E // c0 (low single) |
2126 | .long 0x3F800000 // c1 (high 1 bit) |
2127 | .long 0x3E92478D // c1 (low single) |
2128 | .long 0xBF2FEDC9 // c2 |
2129 | .long 0x3F4BCD58 // c3 |
2130 | .long 0xBF27AE9E // c4 |
2131 | .long 0xBF8D5F26 // B' = pi/2 - B (high single) |
2132 | .long 0x330C0105 // B' = pi/2 - B (low single) |
2133 | .long 0x00000000 // tau (1 for cot path) |
2134 | .long 0xBF00DC0D // c0 (high single) |
2135 | .long 0x3214AF72 // c0 (low single) |
2136 | .long 0x3F800000 // c1 (high 1 bit) |
2137 | .long 0x3E81B994 // c1 (low single) |
2138 | .long 0xBF218233 // c2 |
2139 | .long 0x3F3C4531 // c3 |
2140 | .long 0xBF149688 // c4 |
2141 | .long 0xBF908365 // B' = pi/2 - B (high single) |
2142 | .long 0xB292200D // B' = pi/2 - B (low single) |
2143 | .long 0x00000000 // tau (1 for cot path) |
2144 | .long 0xBEF22870 // c0 (high single) |
2145 | .long 0xB25271F4 // c0 (low single) |
2146 | .long 0x3F800000 // c1 (high 1 bit) |
2147 | .long 0x3E65107A // c1 (low single) |
2148 | .long 0xBF1429F0 // c2 |
2149 | .long 0x3F2E8AFC // c3 |
2150 | .long 0xBF040498 // c4 |
2151 | .long 0xBF93A7A5 // B' = pi/2 - B (high single) |
2152 | .long 0x3361DEEE // B' = pi/2 - B (low single) |
2153 | .long 0x00000000 // tau (1 for cot path) |
2154 | .long 0xBEE2F439 // c0 (high single) |
2155 | .long 0x31F4399E // c0 (low single) |
2156 | .long 0x3F800000 // c1 (high 1 bit) |
2157 | .long 0x3E49341C // c1 (low single) |
2158 | .long 0xBF07C61A // c2 |
2159 | .long 0x3F22560F // c3 |
2160 | .long 0xBEEAA81E // c4 |
2161 | .long 0xBF96CBE4 // B' = pi/2 - B (high single) |
2162 | .long 0x314CDE2E // B' = pi/2 - B (low single) |
2163 | .long 0x00000000 // tau (1 for cot path) |
2164 | .long 0xBED413CD // c0 (high single) |
2165 | .long 0x31C06152 // c0 (low single) |
2166 | .long 0x3F800000 // c1 (high 1 bit) |
2167 | .long 0x3E2FB0CC // c1 (low single) |
2168 | .long 0xBEF876CB // c2 |
2169 | .long 0x3F177807 // c3 |
2170 | .long 0xBED08437 // c4 |
2171 | .long 0xBF99F023 // B' = pi/2 - B (high single) |
2172 | .long 0xB3484328 // B' = pi/2 - B (low single) |
2173 | .long 0x00000000 // tau (1 for cot path) |
2174 | .long 0xBEC5800D // c0 (high single) |
2175 | .long 0x3214C3C1 // c0 (low single) |
2176 | .long 0x3F800000 // c1 (high 1 bit) |
2177 | .long 0x3E185E54 // c1 (low single) |
2178 | .long 0xBEE2E342 // c2 |
2179 | .long 0x3F0DCA73 // c3 |
2180 | .long 0xBEB8CC21 // c4 |
2181 | .long 0xBF9D1463 // B' = pi/2 - B (high single) |
2182 | .long 0x32C55799 // B' = pi/2 - B (low single) |
2183 | .long 0x00000000 // tau (1 for cot path) |
2184 | .long 0xBEB73250 // c0 (high single) |
2185 | .long 0x32028823 // c0 (low single) |
2186 | .long 0x3F800000 // c1 (high 1 bit) |
2187 | .long 0x3E0318F8 // c1 (low single) |
2188 | .long 0xBECEA678 // c2 |
2189 | .long 0x3F053C67 // c3 |
2190 | .long 0xBEA41E53 // c4 |
2191 | .long 0xBFA038A2 // B' = pi/2 - B (high single) |
2192 | .long 0xB2E4CA7E // B' = pi/2 - B (low single) |
2193 | .long 0x00000000 // tau (1 for cot path) |
2194 | .long 0xBEA92457 // c0 (high single) |
2195 | .long 0xB0B80830 // c0 (low single) |
2196 | .long 0x3F800000 // c1 (high 1 bit) |
2197 | .long 0x3DDF8200 // c1 (low single) |
2198 | .long 0xBEBB99E9 // c2 |
2199 | .long 0x3EFB4AA8 // c3 |
2200 | .long 0xBE9182BE // c4 |
2201 | .long 0xBFA35CE2 // B' = pi/2 - B (high single) |
2202 | .long 0x333889B6 // B' = pi/2 - B (low single) |
2203 | .long 0x00000000 // tau (1 for cot path) |
2204 | .long 0xBE9B5042 // c0 (high single) |
2205 | .long 0x322A3AEE // c0 (low single) |
2206 | .long 0x3F800000 // c1 (high 1 bit) |
2207 | .long 0x3DBC7490 // c1 (low single) |
2208 | .long 0xBEA99AF5 // c2 |
2209 | .long 0x3EEDE107 // c3 |
2210 | .long 0xBE80E9AA // c4 |
2211 | .long 0xBFA68121 // B' = pi/2 - B (high single) |
2212 | .long 0xB1E43AAC // B' = pi/2 - B (low single) |
2213 | .long 0x00000000 // tau (1 for cot path) |
2214 | .long 0xBE8DB082 // c0 (high single) |
2215 | .long 0x3132A234 // c0 (low single) |
2216 | .long 0x3F800000 // c1 (high 1 bit) |
2217 | .long 0x3D9CD7D0 // c1 (low single) |
2218 | .long 0xBE988A60 // c2 |
2219 | .long 0x3EE203E3 // c3 |
2220 | .long 0xBE63582C // c4 |
2221 | .long 0xBFA9A560 // B' = pi/2 - B (high single) |
2222 | .long 0xB3719861 // B' = pi/2 - B (low single) |
2223 | .long 0x00000000 // tau (1 for cot path) |
2224 | .long 0xBE803FD4 // c0 (high single) |
2225 | .long 0x32279E66 // c0 (low single) |
2226 | .long 0x3F800000 // c1 (high 1 bit) |
2227 | .long 0x3D807FC8 // c1 (low single) |
2228 | .long 0xBE884BD4 // c2 |
2229 | .long 0x3ED7812D // c3 |
2230 | .long 0xBE4636EB // c4 |
2231 | .long 0xBFACC9A0 // B' = pi/2 - B (high single) |
2232 | .long 0x32655A50 // B' = pi/2 - B (low single) |
2233 | .long 0x00000000 // tau (1 for cot path) |
2234 | .long 0xBE65F267 // c0 (high single) |
2235 | .long 0xB1B4B1DF // c0 (low single) |
2236 | .long 0x3F800000 // c1 (high 1 bit) |
2237 | .long 0x3D4E8B90 // c1 (low single) |
2238 | .long 0xBE718ACA // c2 |
2239 | .long 0x3ECE7164 // c3 |
2240 | .long 0xBE2DC161 // c4 |
2241 | .long 0xBFAFEDDF // B' = pi/2 - B (high single) |
2242 | .long 0xB31BBA77 // B' = pi/2 - B (low single) |
2243 | .long 0x00000000 // tau (1 for cot path) |
2244 | .long 0xBE4BAFAF // c0 (high single) |
2245 | .long 0xAF2A29E0 // c0 (low single) |
2246 | .long 0x3F800000 // c1 (high 1 bit) |
2247 | .long 0x3D221018 // c1 (low single) |
2248 | .long 0xBE53BED0 // c2 |
2249 | .long 0x3EC67E26 // c3 |
2250 | .long 0xBE1568E2 // c4 |
2251 | .long 0xBFB3121F // B' = pi/2 - B (high single) |
2252 | .long 0x330F347D // B' = pi/2 - B (low single) |
2253 | .long 0x00000000 // tau (1 for cot path) |
2254 | .long 0xBE31AE4D // c0 (high single) |
2255 | .long 0x31F32251 // c0 (low single) |
2256 | .long 0x3F800000 // c1 (high 1 bit) |
2257 | .long 0x3CF6A500 // c1 (low single) |
2258 | .long 0xBE3707DA // c2 |
2259 | .long 0x3EBFA489 // c3 |
2260 | .long 0xBDFBD9C7 // c4 |
2261 | .long 0xBFB6365E // B' = pi/2 - B (high single) |
2262 | .long 0xB28BB91C // B' = pi/2 - B (low single) |
2263 | .long 0x00000000 // tau (1 for cot path) |
2264 | .long 0xBE17E564 // c0 (high single) |
2265 | .long 0x31C5A2E4 // c0 (low single) |
2266 | .long 0x3F800000 // c1 (high 1 bit) |
2267 | .long 0x3CB440D0 // c1 (low single) |
2268 | .long 0xBE1B3D00 // c2 |
2269 | .long 0x3EB9F664 // c3 |
2270 | .long 0xBDD647C0 // c4 |
2271 | .long 0xBFB95A9E // B' = pi/2 - B (high single) |
2272 | .long 0x33651267 // B' = pi/2 - B (low single) |
2273 | .long 0x00000000 // tau (1 for cot path) |
2274 | .long 0xBDFC98C2 // c0 (high single) |
2275 | .long 0x30AE525C // c0 (low single) |
2276 | .long 0x3F800000 // c1 (high 1 bit) |
2277 | .long 0x3C793D20 // c1 (low single) |
2278 | .long 0xBE003845 // c2 |
2279 | .long 0x3EB5271F // c3 |
2280 | .long 0xBDAC669E // c4 |
2281 | .long 0xBFBC7EDD // B' = pi/2 - B (high single) |
2282 | .long 0x31800ADD // B' = pi/2 - B (low single) |
2283 | .long 0x00000000 // tau (1 for cot path) |
2284 | .long 0xBDC9B5DC // c0 (high single) |
2285 | .long 0xB145AD86 // c0 (low single) |
2286 | .long 0x3F800000 // c1 (high 1 bit) |
2287 | .long 0x3C1EEF20 // c1 (low single) |
2288 | .long 0xBDCBAAEA // c2 |
2289 | .long 0x3EB14E5E // c3 |
2290 | .long 0xBD858BB2 // c4 |
2291 | .long 0xBFBFA31C // B' = pi/2 - B (high single) |
2292 | .long 0xB3450FB0 // B' = pi/2 - B (low single) |
2293 | .long 0x00000000 // tau (1 for cot path) |
2294 | .long 0xBD9711CE // c0 (high single) |
2295 | .long 0xB14FEB28 // c0 (low single) |
2296 | .long 0x3F800000 // c1 (high 1 bit) |
2297 | .long 0x3BB24C00 // c1 (low single) |
2298 | .long 0xBD97E43A // c2 |
2299 | .long 0x3EAE6A89 // c3 |
2300 | .long 0xBD4D07E0 // c4 |
2301 | .long 0xBFC2C75C // B' = pi/2 - B (high single) |
2302 | .long 0x32CBBE8A // B' = pi/2 - B (low single) |
2303 | .long 0x00000000 // tau (1 for cot path) |
2304 | .long 0xBD49393C // c0 (high single) |
2305 | .long 0xB0A39F5B // c0 (low single) |
2306 | .long 0x3F800000 // c1 (high 1 bit) |
2307 | .long 0x3B1E2B00 // c1 (low single) |
2308 | .long 0xBD49B5D4 // c2 |
2309 | .long 0x3EAC4F10 // c3 |
2310 | .long 0xBCFD9425 // c4 |
2311 | .long 0xBFC5EB9B // B' = pi/2 - B (high single) |
2312 | .long 0xB2DE638C // B' = pi/2 - B (low single) |
2313 | .long 0x00000000 // tau (1 for cot path) |
2314 | .long 0xBCC91A31 // c0 (high single) |
2315 | .long 0xAF8E8D1A // c0 (low single) |
2316 | .long 0x3F800000 // c1 (high 1 bit) |
2317 | .long 0x3A1DFA00 // c1 (low single) |
2318 | .long 0xBCC9392D // c2 |
2319 | .long 0x3EAB1889 // c3 |
2320 | .long 0xBC885D3B // c4 |
2321 | .align 32 |
2322 | .type __svml_stan_data_internal, @object |
2323 | .size __svml_stan_data_internal, .-__svml_stan_data_internal |
2324 | .align 32 |
2325 | |
2326 | #ifdef __svml_stan_reduction_data_internal_typedef |
2327 | typedef unsigned int VUINT32; |
2328 | typedef struct { |
2329 | __declspec(align(32)) VUINT32 _sPtable[256][3][1]; |
2330 | } __svml_stan_reduction_data_internal; |
2331 | #endif |
2332 | __svml_stan_reduction_data_internal: |
2333 | /* P_hi P_med P_lo */ |
2334 | .long 0x00000000, 0x00000000, 0x00000000 /* 0 */ |
2335 | .long 0x00000000, 0x00000000, 0x00000000 /* 1 */ |
2336 | .long 0x00000000, 0x00000000, 0x00000000 /* 2 */ |
2337 | .long 0x00000000, 0x00000000, 0x00000000 /* 3 */ |
2338 | .long 0x00000000, 0x00000000, 0x00000000 /* 4 */ |
2339 | .long 0x00000000, 0x00000000, 0x00000000 /* 5 */ |
2340 | .long 0x00000000, 0x00000000, 0x00000000 /* 6 */ |
2341 | .long 0x00000000, 0x00000000, 0x00000000 /* 7 */ |
2342 | .long 0x00000000, 0x00000000, 0x00000000 /* 8 */ |
2343 | .long 0x00000000, 0x00000000, 0x00000000 /* 9 */ |
2344 | .long 0x00000000, 0x00000000, 0x00000000 /* 10 */ |
2345 | .long 0x00000000, 0x00000000, 0x00000000 /* 11 */ |
2346 | .long 0x00000000, 0x00000000, 0x00000000 /* 12 */ |
2347 | .long 0x00000000, 0x00000000, 0x00000000 /* 13 */ |
2348 | .long 0x00000000, 0x00000000, 0x00000000 /* 14 */ |
2349 | .long 0x00000000, 0x00000000, 0x00000000 /* 15 */ |
2350 | .long 0x00000000, 0x00000000, 0x00000000 /* 16 */ |
2351 | .long 0x00000000, 0x00000000, 0x00000000 /* 17 */ |
2352 | .long 0x00000000, 0x00000000, 0x00000000 /* 18 */ |
2353 | .long 0x00000000, 0x00000000, 0x00000000 /* 19 */ |
2354 | .long 0x00000000, 0x00000000, 0x00000000 /* 20 */ |
2355 | .long 0x00000000, 0x00000000, 0x00000000 /* 21 */ |
2356 | .long 0x00000000, 0x00000000, 0x00000000 /* 22 */ |
2357 | .long 0x00000000, 0x00000000, 0x00000000 /* 23 */ |
2358 | .long 0x00000000, 0x00000000, 0x00000000 /* 24 */ |
2359 | .long 0x00000000, 0x00000000, 0x00000000 /* 25 */ |
2360 | .long 0x00000000, 0x00000000, 0x00000000 /* 26 */ |
2361 | .long 0x00000000, 0x00000000, 0x00000000 /* 27 */ |
2362 | .long 0x00000000, 0x00000000, 0x00000000 /* 28 */ |
2363 | .long 0x00000000, 0x00000000, 0x00000000 /* 29 */ |
2364 | .long 0x00000000, 0x00000000, 0x00000000 /* 30 */ |
2365 | .long 0x00000000, 0x00000000, 0x00000000 /* 31 */ |
2366 | .long 0x00000000, 0x00000000, 0x00000000 /* 32 */ |
2367 | .long 0x00000000, 0x00000000, 0x00000000 /* 33 */ |
2368 | .long 0x00000000, 0x00000000, 0x00000000 /* 34 */ |
2369 | .long 0x00000000, 0x00000000, 0x00000000 /* 35 */ |
2370 | .long 0x00000000, 0x00000000, 0x00000000 /* 36 */ |
2371 | .long 0x00000000, 0x00000000, 0x00000000 /* 37 */ |
2372 | .long 0x00000000, 0x00000000, 0x00000000 /* 38 */ |
2373 | .long 0x00000000, 0x00000000, 0x00000000 /* 39 */ |
2374 | .long 0x00000000, 0x00000000, 0x00000000 /* 40 */ |
2375 | .long 0x00000000, 0x00000000, 0x00000000 /* 41 */ |
2376 | .long 0x00000000, 0x00000000, 0x00000000 /* 42 */ |
2377 | .long 0x00000000, 0x00000000, 0x00000000 /* 43 */ |
2378 | .long 0x00000000, 0x00000000, 0x00000000 /* 44 */ |
2379 | .long 0x00000000, 0x00000000, 0x00000000 /* 45 */ |
2380 | .long 0x00000000, 0x00000000, 0x00000000 /* 46 */ |
2381 | .long 0x00000000, 0x00000000, 0x00000000 /* 47 */ |
2382 | .long 0x00000000, 0x00000000, 0x00000000 /* 48 */ |
2383 | .long 0x00000000, 0x00000000, 0x00000000 /* 49 */ |
2384 | .long 0x00000000, 0x00000000, 0x00000000 /* 50 */ |
2385 | .long 0x00000000, 0x00000000, 0x00000000 /* 51 */ |
2386 | .long 0x00000000, 0x00000000, 0x00000000 /* 52 */ |
2387 | .long 0x00000000, 0x00000000, 0x00000000 /* 53 */ |
2388 | .long 0x00000000, 0x00000000, 0x00000000 /* 54 */ |
2389 | .long 0x00000000, 0x00000000, 0x00000000 /* 55 */ |
2390 | .long 0x00000000, 0x00000000, 0x00000000 /* 56 */ |
2391 | .long 0x00000000, 0x00000000, 0x00000001 /* 57 */ |
2392 | .long 0x00000000, 0x00000000, 0x00000002 /* 58 */ |
2393 | .long 0x00000000, 0x00000000, 0x00000005 /* 59 */ |
2394 | .long 0x00000000, 0x00000000, 0x0000000A /* 60 */ |
2395 | .long 0x00000000, 0x00000000, 0x00000014 /* 61 */ |
2396 | .long 0x00000000, 0x00000000, 0x00000028 /* 62 */ |
2397 | .long 0x00000000, 0x00000000, 0x00000051 /* 63 */ |
2398 | .long 0x00000000, 0x00000000, 0x000000A2 /* 64 */ |
2399 | .long 0x00000000, 0x00000000, 0x00000145 /* 65 */ |
2400 | .long 0x00000000, 0x00000000, 0x0000028B /* 66 */ |
2401 | .long 0x00000000, 0x00000000, 0x00000517 /* 67 */ |
2402 | .long 0x00000000, 0x00000000, 0x00000A2F /* 68 */ |
2403 | .long 0x00000000, 0x00000000, 0x0000145F /* 69 */ |
2404 | .long 0x00000000, 0x00000000, 0x000028BE /* 70 */ |
2405 | .long 0x00000000, 0x00000000, 0x0000517C /* 71 */ |
2406 | .long 0x00000000, 0x00000000, 0x0000A2F9 /* 72 */ |
2407 | .long 0x00000000, 0x00000000, 0x000145F3 /* 73 */ |
2408 | .long 0x00000000, 0x00000000, 0x00028BE6 /* 74 */ |
2409 | .long 0x00000000, 0x00000000, 0x000517CC /* 75 */ |
2410 | .long 0x00000000, 0x00000000, 0x000A2F98 /* 76 */ |
2411 | .long 0x00000000, 0x00000000, 0x00145F30 /* 77 */ |
2412 | .long 0x00000000, 0x00000000, 0x0028BE60 /* 78 */ |
2413 | .long 0x00000000, 0x00000000, 0x00517CC1 /* 79 */ |
2414 | .long 0x00000000, 0x00000000, 0x00A2F983 /* 80 */ |
2415 | .long 0x00000000, 0x00000000, 0x0145F306 /* 81 */ |
2416 | .long 0x00000000, 0x00000000, 0x028BE60D /* 82 */ |
2417 | .long 0x00000000, 0x00000000, 0x0517CC1B /* 83 */ |
2418 | .long 0x00000000, 0x00000000, 0x0A2F9836 /* 84 */ |
2419 | .long 0x00000000, 0x00000000, 0x145F306D /* 85 */ |
2420 | .long 0x00000000, 0x00000000, 0x28BE60DB /* 86 */ |
2421 | .long 0x00000000, 0x00000000, 0x517CC1B7 /* 87 */ |
2422 | .long 0x00000000, 0x00000000, 0xA2F9836E /* 88 */ |
2423 | .long 0x00000000, 0x00000001, 0x45F306DC /* 89 */ |
2424 | .long 0x00000000, 0x00000002, 0x8BE60DB9 /* 90 */ |
2425 | .long 0x00000000, 0x00000005, 0x17CC1B72 /* 91 */ |
2426 | .long 0x00000000, 0x0000000A, 0x2F9836E4 /* 92 */ |
2427 | .long 0x00000000, 0x00000014, 0x5F306DC9 /* 93 */ |
2428 | .long 0x00000000, 0x00000028, 0xBE60DB93 /* 94 */ |
2429 | .long 0x00000000, 0x00000051, 0x7CC1B727 /* 95 */ |
2430 | .long 0x00000000, 0x000000A2, 0xF9836E4E /* 96 */ |
2431 | .long 0x00000000, 0x00000145, 0xF306DC9C /* 97 */ |
2432 | .long 0x00000000, 0x0000028B, 0xE60DB939 /* 98 */ |
2433 | .long 0x00000000, 0x00000517, 0xCC1B7272 /* 99 */ |
2434 | .long 0x00000000, 0x00000A2F, 0x9836E4E4 /* 100 */ |
2435 | .long 0x00000000, 0x0000145F, 0x306DC9C8 /* 101 */ |
2436 | .long 0x00000000, 0x000028BE, 0x60DB9391 /* 102 */ |
2437 | .long 0x00000000, 0x0000517C, 0xC1B72722 /* 103 */ |
2438 | .long 0x00000000, 0x0000A2F9, 0x836E4E44 /* 104 */ |
2439 | .long 0x00000000, 0x000145F3, 0x06DC9C88 /* 105 */ |
2440 | .long 0x00000000, 0x00028BE6, 0x0DB93910 /* 106 */ |
2441 | .long 0x00000000, 0x000517CC, 0x1B727220 /* 107 */ |
2442 | .long 0x00000000, 0x000A2F98, 0x36E4E441 /* 108 */ |
2443 | .long 0x00000000, 0x00145F30, 0x6DC9C882 /* 109 */ |
2444 | .long 0x00000000, 0x0028BE60, 0xDB939105 /* 110 */ |
2445 | .long 0x00000000, 0x00517CC1, 0xB727220A /* 111 */ |
2446 | .long 0x00000000, 0x00A2F983, 0x6E4E4415 /* 112 */ |
2447 | .long 0x00000000, 0x0145F306, 0xDC9C882A /* 113 */ |
2448 | .long 0x00000000, 0x028BE60D, 0xB9391054 /* 114 */ |
2449 | .long 0x00000000, 0x0517CC1B, 0x727220A9 /* 115 */ |
2450 | .long 0x00000000, 0x0A2F9836, 0xE4E44152 /* 116 */ |
2451 | .long 0x00000000, 0x145F306D, 0xC9C882A5 /* 117 */ |
2452 | .long 0x00000000, 0x28BE60DB, 0x9391054A /* 118 */ |
2453 | .long 0x00000000, 0x517CC1B7, 0x27220A94 /* 119 */ |
2454 | .long 0x00000000, 0xA2F9836E, 0x4E441529 /* 120 */ |
2455 | .long 0x00000001, 0x45F306DC, 0x9C882A53 /* 121 */ |
2456 | .long 0x00000002, 0x8BE60DB9, 0x391054A7 /* 122 */ |
2457 | .long 0x00000005, 0x17CC1B72, 0x7220A94F /* 123 */ |
2458 | .long 0x0000000A, 0x2F9836E4, 0xE441529F /* 124 */ |
2459 | .long 0x00000014, 0x5F306DC9, 0xC882A53F /* 125 */ |
2460 | .long 0x00000028, 0xBE60DB93, 0x91054A7F /* 126 */ |
2461 | .long 0x00000051, 0x7CC1B727, 0x220A94FE /* 127 */ |
2462 | .long 0x000000A2, 0xF9836E4E, 0x441529FC /* 128 */ |
2463 | .long 0x00000145, 0xF306DC9C, 0x882A53F8 /* 129 */ |
2464 | .long 0x0000028B, 0xE60DB939, 0x1054A7F0 /* 130 */ |
2465 | .long 0x00000517, 0xCC1B7272, 0x20A94FE1 /* 131 */ |
2466 | .long 0x00000A2F, 0x9836E4E4, 0x41529FC2 /* 132 */ |
2467 | .long 0x0000145F, 0x306DC9C8, 0x82A53F84 /* 133 */ |
2468 | .long 0x000028BE, 0x60DB9391, 0x054A7F09 /* 134 */ |
2469 | .long 0x0000517C, 0xC1B72722, 0x0A94FE13 /* 135 */ |
2470 | .long 0x0000A2F9, 0x836E4E44, 0x1529FC27 /* 136 */ |
2471 | .long 0x000145F3, 0x06DC9C88, 0x2A53F84E /* 137 */ |
2472 | .long 0x00028BE6, 0x0DB93910, 0x54A7F09D /* 138 */ |
2473 | .long 0x000517CC, 0x1B727220, 0xA94FE13A /* 139 */ |
2474 | .long 0x000A2F98, 0x36E4E441, 0x529FC275 /* 140 */ |
2475 | .long 0x00145F30, 0x6DC9C882, 0xA53F84EA /* 141 */ |
2476 | .long 0x0028BE60, 0xDB939105, 0x4A7F09D5 /* 142 */ |
2477 | .long 0x00517CC1, 0xB727220A, 0x94FE13AB /* 143 */ |
2478 | .long 0x00A2F983, 0x6E4E4415, 0x29FC2757 /* 144 */ |
2479 | .long 0x0145F306, 0xDC9C882A, 0x53F84EAF /* 145 */ |
2480 | .long 0x028BE60D, 0xB9391054, 0xA7F09D5F /* 146 */ |
2481 | .long 0x0517CC1B, 0x727220A9, 0x4FE13ABE /* 147 */ |
2482 | .long 0x0A2F9836, 0xE4E44152, 0x9FC2757D /* 148 */ |
2483 | .long 0x145F306D, 0xC9C882A5, 0x3F84EAFA /* 149 */ |
2484 | .long 0x28BE60DB, 0x9391054A, 0x7F09D5F4 /* 150 */ |
2485 | .long 0x517CC1B7, 0x27220A94, 0xFE13ABE8 /* 151 */ |
2486 | .long 0xA2F9836E, 0x4E441529, 0xFC2757D1 /* 152 */ |
2487 | .long 0x45F306DC, 0x9C882A53, 0xF84EAFA3 /* 153 */ |
2488 | .long 0x8BE60DB9, 0x391054A7, 0xF09D5F47 /* 154 */ |
2489 | .long 0x17CC1B72, 0x7220A94F, 0xE13ABE8F /* 155 */ |
2490 | .long 0x2F9836E4, 0xE441529F, 0xC2757D1F /* 156 */ |
2491 | .long 0x5F306DC9, 0xC882A53F, 0x84EAFA3E /* 157 */ |
2492 | .long 0xBE60DB93, 0x91054A7F, 0x09D5F47D /* 158 */ |
2493 | .long 0x7CC1B727, 0x220A94FE, 0x13ABE8FA /* 159 */ |
2494 | .long 0xF9836E4E, 0x441529FC, 0x2757D1F5 /* 160 */ |
2495 | .long 0xF306DC9C, 0x882A53F8, 0x4EAFA3EA /* 161 */ |
2496 | .long 0xE60DB939, 0x1054A7F0, 0x9D5F47D4 /* 162 */ |
2497 | .long 0xCC1B7272, 0x20A94FE1, 0x3ABE8FA9 /* 163 */ |
2498 | .long 0x9836E4E4, 0x41529FC2, 0x757D1F53 /* 164 */ |
2499 | .long 0x306DC9C8, 0x82A53F84, 0xEAFA3EA6 /* 165 */ |
2500 | .long 0x60DB9391, 0x054A7F09, 0xD5F47D4D /* 166 */ |
2501 | .long 0xC1B72722, 0x0A94FE13, 0xABE8FA9A /* 167 */ |
2502 | .long 0x836E4E44, 0x1529FC27, 0x57D1F534 /* 168 */ |
2503 | .long 0x06DC9C88, 0x2A53F84E, 0xAFA3EA69 /* 169 */ |
2504 | .long 0x0DB93910, 0x54A7F09D, 0x5F47D4D3 /* 170 */ |
2505 | .long 0x1B727220, 0xA94FE13A, 0xBE8FA9A6 /* 171 */ |
2506 | .long 0x36E4E441, 0x529FC275, 0x7D1F534D /* 172 */ |
2507 | .long 0x6DC9C882, 0xA53F84EA, 0xFA3EA69B /* 173 */ |
2508 | .long 0xDB939105, 0x4A7F09D5, 0xF47D4D37 /* 174 */ |
2509 | .long 0xB727220A, 0x94FE13AB, 0xE8FA9A6E /* 175 */ |
2510 | .long 0x6E4E4415, 0x29FC2757, 0xD1F534DD /* 176 */ |
2511 | .long 0xDC9C882A, 0x53F84EAF, 0xA3EA69BB /* 177 */ |
2512 | .long 0xB9391054, 0xA7F09D5F, 0x47D4D377 /* 178 */ |
2513 | .long 0x727220A9, 0x4FE13ABE, 0x8FA9A6EE /* 179 */ |
2514 | .long 0xE4E44152, 0x9FC2757D, 0x1F534DDC /* 180 */ |
2515 | .long 0xC9C882A5, 0x3F84EAFA, 0x3EA69BB8 /* 181 */ |
2516 | .long 0x9391054A, 0x7F09D5F4, 0x7D4D3770 /* 182 */ |
2517 | .long 0x27220A94, 0xFE13ABE8, 0xFA9A6EE0 /* 183 */ |
2518 | .long 0x4E441529, 0xFC2757D1, 0xF534DDC0 /* 184 */ |
2519 | .long 0x9C882A53, 0xF84EAFA3, 0xEA69BB81 /* 185 */ |
2520 | .long 0x391054A7, 0xF09D5F47, 0xD4D37703 /* 186 */ |
2521 | .long 0x7220A94F, 0xE13ABE8F, 0xA9A6EE06 /* 187 */ |
2522 | .long 0xE441529F, 0xC2757D1F, 0x534DDC0D /* 188 */ |
2523 | .long 0xC882A53F, 0x84EAFA3E, 0xA69BB81B /* 189 */ |
2524 | .long 0x91054A7F, 0x09D5F47D, 0x4D377036 /* 190 */ |
2525 | .long 0x220A94FE, 0x13ABE8FA, 0x9A6EE06D /* 191 */ |
2526 | .long 0x441529FC, 0x2757D1F5, 0x34DDC0DB /* 192 */ |
2527 | .long 0x882A53F8, 0x4EAFA3EA, 0x69BB81B6 /* 193 */ |
2528 | .long 0x1054A7F0, 0x9D5F47D4, 0xD377036D /* 194 */ |
2529 | .long 0x20A94FE1, 0x3ABE8FA9, 0xA6EE06DB /* 195 */ |
2530 | .long 0x41529FC2, 0x757D1F53, 0x4DDC0DB6 /* 196 */ |
2531 | .long 0x82A53F84, 0xEAFA3EA6, 0x9BB81B6C /* 197 */ |
2532 | .long 0x054A7F09, 0xD5F47D4D, 0x377036D8 /* 198 */ |
2533 | .long 0x0A94FE13, 0xABE8FA9A, 0x6EE06DB1 /* 199 */ |
2534 | .long 0x1529FC27, 0x57D1F534, 0xDDC0DB62 /* 200 */ |
2535 | .long 0x2A53F84E, 0xAFA3EA69, 0xBB81B6C5 /* 201 */ |
2536 | .long 0x54A7F09D, 0x5F47D4D3, 0x77036D8A /* 202 */ |
2537 | .long 0xA94FE13A, 0xBE8FA9A6, 0xEE06DB14 /* 203 */ |
2538 | .long 0x529FC275, 0x7D1F534D, 0xDC0DB629 /* 204 */ |
2539 | .long 0xA53F84EA, 0xFA3EA69B, 0xB81B6C52 /* 205 */ |
2540 | .long 0x4A7F09D5, 0xF47D4D37, 0x7036D8A5 /* 206 */ |
2541 | .long 0x94FE13AB, 0xE8FA9A6E, 0xE06DB14A /* 207 */ |
2542 | .long 0x29FC2757, 0xD1F534DD, 0xC0DB6295 /* 208 */ |
2543 | .long 0x53F84EAF, 0xA3EA69BB, 0x81B6C52B /* 209 */ |
2544 | .long 0xA7F09D5F, 0x47D4D377, 0x036D8A56 /* 210 */ |
2545 | .long 0x4FE13ABE, 0x8FA9A6EE, 0x06DB14AC /* 211 */ |
2546 | .long 0x9FC2757D, 0x1F534DDC, 0x0DB62959 /* 212 */ |
2547 | .long 0x3F84EAFA, 0x3EA69BB8, 0x1B6C52B3 /* 213 */ |
2548 | .long 0x7F09D5F4, 0x7D4D3770, 0x36D8A566 /* 214 */ |
2549 | .long 0xFE13ABE8, 0xFA9A6EE0, 0x6DB14ACC /* 215 */ |
2550 | .long 0xFC2757D1, 0xF534DDC0, 0xDB629599 /* 216 */ |
2551 | .long 0xF84EAFA3, 0xEA69BB81, 0xB6C52B32 /* 217 */ |
2552 | .long 0xF09D5F47, 0xD4D37703, 0x6D8A5664 /* 218 */ |
2553 | .long 0xE13ABE8F, 0xA9A6EE06, 0xDB14ACC9 /* 219 */ |
2554 | .long 0xC2757D1F, 0x534DDC0D, 0xB6295993 /* 220 */ |
2555 | .long 0x84EAFA3E, 0xA69BB81B, 0x6C52B327 /* 221 */ |
2556 | .long 0x09D5F47D, 0x4D377036, 0xD8A5664F /* 222 */ |
2557 | .long 0x13ABE8FA, 0x9A6EE06D, 0xB14ACC9E /* 223 */ |
2558 | .long 0x2757D1F5, 0x34DDC0DB, 0x6295993C /* 224 */ |
2559 | .long 0x4EAFA3EA, 0x69BB81B6, 0xC52B3278 /* 225 */ |
2560 | .long 0x9D5F47D4, 0xD377036D, 0x8A5664F1 /* 226 */ |
2561 | .long 0x3ABE8FA9, 0xA6EE06DB, 0x14ACC9E2 /* 227 */ |
2562 | .long 0x757D1F53, 0x4DDC0DB6, 0x295993C4 /* 228 */ |
2563 | .long 0xEAFA3EA6, 0x9BB81B6C, 0x52B32788 /* 229 */ |
2564 | .long 0xD5F47D4D, 0x377036D8, 0xA5664F10 /* 230 */ |
2565 | .long 0xABE8FA9A, 0x6EE06DB1, 0x4ACC9E21 /* 231 */ |
2566 | .long 0x57D1F534, 0xDDC0DB62, 0x95993C43 /* 232 */ |
2567 | .long 0xAFA3EA69, 0xBB81B6C5, 0x2B327887 /* 233 */ |
2568 | .long 0x5F47D4D3, 0x77036D8A, 0x5664F10E /* 234 */ |
2569 | .long 0xBE8FA9A6, 0xEE06DB14, 0xACC9E21C /* 235 */ |
2570 | .long 0x7D1F534D, 0xDC0DB629, 0x5993C439 /* 236 */ |
2571 | .long 0xFA3EA69B, 0xB81B6C52, 0xB3278872 /* 237 */ |
2572 | .long 0xF47D4D37, 0x7036D8A5, 0x664F10E4 /* 238 */ |
2573 | .long 0xE8FA9A6E, 0xE06DB14A, 0xCC9E21C8 /* 239 */ |
2574 | .long 0xD1F534DD, 0xC0DB6295, 0x993C4390 /* 240 */ |
2575 | .long 0xA3EA69BB, 0x81B6C52B, 0x32788720 /* 241 */ |
2576 | .long 0x47D4D377, 0x036D8A56, 0x64F10E41 /* 242 */ |
2577 | .long 0x8FA9A6EE, 0x06DB14AC, 0xC9E21C82 /* 243 */ |
2578 | .long 0x1F534DDC, 0x0DB62959, 0x93C43904 /* 244 */ |
2579 | .long 0x3EA69BB8, 0x1B6C52B3, 0x27887208 /* 245 */ |
2580 | .long 0x7D4D3770, 0x36D8A566, 0x4F10E410 /* 246 */ |
2581 | .long 0xFA9A6EE0, 0x6DB14ACC, 0x9E21C820 /* 247 */ |
2582 | .long 0xF534DDC0, 0xDB629599, 0x3C439041 /* 248 */ |
2583 | .long 0xEA69BB81, 0xB6C52B32, 0x78872083 /* 249 */ |
2584 | .long 0xD4D37703, 0x6D8A5664, 0xF10E4107 /* 250 */ |
2585 | .long 0xA9A6EE06, 0xDB14ACC9, 0xE21C820F /* 251 */ |
2586 | .long 0x534DDC0D, 0xB6295993, 0xC439041F /* 252 */ |
2587 | .long 0xA69BB81B, 0x6C52B327, 0x8872083F /* 253 */ |
2588 | .long 0x4D377036, 0xD8A5664F, 0x10E4107F /* 254 */ |
2589 | .long 0x9A6EE06D, 0xB14ACC9E, 0x21C820FF /* 255 */ |
2590 | .align 32 |
2591 | .type __svml_stan_reduction_data_internal, @object |
2592 | .size __svml_stan_reduction_data_internal, .-__svml_stan_reduction_data_internal |
2593 | |