xref: /illumos-gate/usr/src/lib/libmvec/common/vis/__vlog_ultra3.S (revision ed093b41a93e8563e6e1e5dae0768dda2a7bcc27)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21/*
22 * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
23 */
24/*
25 * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
26 * Use is subject to license terms.
27 */
28
29	.file	"__vlog_ultra3.S"
30
31#include "libm.h"
32	.weak	__vlog
33	.type	__vlog,#function
34	__vlog = __vlog_ultra3
35
36/*
37 * ELEVENBIT table and order 5 POLYNOMIAL no explicit correction t
38 */
39
40	RO_DATA
41	.align	64
42!! this is a new 11 bit table.
43TBL:
44	.word	0xbfd522ae,	0x0738a000
45	.word	0xbd2ebe70,	0x8164c759
46	.word	0xbfd5178d,	0x9ab55000
47	.word	0xbd35c153,	0x0fe963b3
48	.word	0xbfd50c6f,	0x1d11b000
49	.word	0xbd42f8ca,	0x40bec1ea
50	.word	0xbfd50152,	0x8da1f000
51	.word	0xbd42cfac,	0x6d29f4d7
52	.word	0xbfd4f637,	0xebba9000
53	.word	0xbd401f53,	0x9a676da3
54	.word	0xbfd4eb1f,	0x36b07000
55	.word	0xbd184047,	0x46e5797b
56	.word	0xbfd4e008,	0x6dd8b000
57	.word	0xbd4594b6,	0xaf0ddc3c
58	.word	0xbfd4d4f3,	0x90890000
59	.word	0xbd19fd79,	0x3a9f1441
60	.word	0xbfd4c9e0,	0x9e172000
61	.word	0xbd4877dd,	0xb93d49d7
62	.word	0xbfd4becf,	0x95d97000
63	.word	0xbd422662,	0x6ffee2c8
64	.word	0xbfd4b3c0,	0x77267000
65	.word	0xbd4d3497,	0x2fdf5a8c
66	.word	0xbfd4a8b3,	0x41552000
67	.word	0xbd46127e,	0x3d0dc8d1
68	.word	0xbfd49da7,	0xf3bcc000
69	.word	0xbd307b33,	0x4daf4b9a
70	.word	0xbfd4929e,	0x8db4e000
71	.word	0xbd3b9056,	0x556c70de
72	.word	0xbfd48797,	0x0e958000
73	.word	0xbd3dc1b8,	0x465cf25f
74	.word	0xbfd47c91,	0x75b6f000
75	.word	0xbd05acd1,	0x7009e35b
76	.word	0xbfd4718d,	0xc271c000
77	.word	0xbd306c18,	0xfb4c14c5
78	.word	0xbfd4668b,	0xf41ef000
79	.word	0xbd432874,	0x4e9d2b85
80	.word	0xbfd45b8c,	0x0a17d000
81	.word	0xbd4e26ed,	0xf182f57b
82	.word	0xbfd4508e,	0x03b61000
83	.word	0xbd40ef1c,	0x2579199c
84	.word	0xbfd44591,	0xe0539000
85	.word	0xbd4e916a,	0x76d6dc28
86	.word	0xbfd43a97,	0x9f4ac000
87	.word	0xbd23ee07,	0x6a81f88e
88	.word	0xbfd42f9f,	0x3ff62000
89	.word	0xbd390644,	0x0f7d3354
90	.word	0xbfd424a8,	0xc1b0c000
91	.word	0xbd2dc57c,	0x99ae2a25
92	.word	0xbfd419b4,	0x23d5e000
93	.word	0xbd418e43,	0x6ec90e0a
94	.word	0xbfd40ec1,	0x65c13000
95	.word	0xbd3f59a8,	0xa01757f6
96	.word	0xbfd403d0,	0x86cea000
97	.word	0xbd3e6ef5,	0x74487308
98	.word	0xbfd3f8e1,	0x865a8000
99	.word	0xbd26f338,	0x912773e3
100	.word	0xbfd3edf4,	0x63c16000
101	.word	0xbd407cc1,	0xeb4069e1
102	.word	0xbfd3e309,	0x1e604000
103	.word	0xbd43f634,	0xa2afb68d
104	.word	0xbfd3d81f,	0xb5946000
105	.word	0xbd4b74e0,	0xf558b217
106	.word	0xbfd3cd38,	0x28bb6000
107	.word	0xbd489faf,	0xb06c8342
108	.word	0xbfd3c252,	0x77333000
109	.word	0xbd183b54,	0xb606bd5c
110	.word	0xbfd3b76e,	0xa059f000
111	.word	0xbd47b5cf,	0x9912c7cb
112	.word	0xbfd3ac8c,	0xa38e5000
113	.word	0xbd48bd04,	0x10ff506d
114	.word	0xbfd3a1ac,	0x802f3000
115	.word	0xbd398ecf,	0x399abd8d
116	.word	0xbfd396ce,	0x359bb000
117	.word	0xbd4ea7c6,	0x3a99c99c
118	.word	0xbfd38bf1,	0xc3337000
119	.word	0xbd4ce9e9,	0x41e9516d
120	.word	0xbfd38117,	0x28564000
121	.word	0xbd496386,	0xdb17e3f5
122	.word	0xbfd3763e,	0x64645000
123	.word	0xbd318b1f,	0x291dcb56
124	.word	0xbfd36b67,	0x76be1000
125	.word	0xbd116ecd,	0xb0f177c8
126	.word	0xbfd36092,	0x5ec44000
127	.word	0xbd4eb929,	0xf344bbd1
128	.word	0xbfd355bf,	0x1bd82000
129	.word	0xbd491599,	0x1da6c3c6
130	.word	0xbfd34aed,	0xad5b1000
131	.word	0xbd3a2aac,	0xf2be1fdd
132	.word	0xbfd3401e,	0x12aec000
133	.word	0xbd4741c6,	0x5548eb71
134	.word	0xbfd33550,	0x4b355000
135	.word	0xbd446efc,	0x89cefc92
136	.word	0xbfd32a84,	0x56512000
137	.word	0xbd04f928,	0x139af5d6
138	.word	0xbfd31fba,	0x3364c000
139	.word	0xbd4a08d8,	0x6ce5a16e
140	.word	0xbfd314f1,	0xe1d35000
141	.word	0xbd49c761,	0x4b37b0d2
142	.word	0xbfd30a2b,	0x61001000
143	.word	0xbd4a53e9,	0x6290ef5b
144	.word	0xbfd2ff66,	0xb04ea000
145	.word	0xbd43a896,	0xd5f0c8e9
146	.word	0xbfd2f4a3,	0xcf22e000
147	.word	0xbd4b8693,	0xf85f2705
148	.word	0xbfd2e9e2,	0xbce12000
149	.word	0xbd24300c,	0x128d1dc2
150	.word	0xbfd2df23,	0x78edd000
151	.word	0xbce292b7,	0xcd95c595
152	.word	0xbfd2d466,	0x02adc000
153	.word	0xbd49dcbc,	0x88caaf9b
154	.word	0xbfd2c9aa,	0x59863000
155	.word	0xbd4a7f90,	0xe829d4d2
156	.word	0xbfd2bef0,	0x7cdc9000
157	.word	0xbd2a9cfa,	0x4a5004f4
158	.word	0xbfd2b438,	0x6c168000
159	.word	0xbd4e1827,	0x3a343630
160	.word	0xbfd2a982,	0x269a3000
161	.word	0xbd4b7e9c,	0x6aa35e8c
162	.word	0xbfd29ecd,	0xabcdf000
163	.word	0xbd44073b,	0x3bdc2243
164	.word	0xbfd2941a,	0xfb186000
165	.word	0xbd46f79e,	0xa4678ebb
166	.word	0xbfd2896a,	0x13e08000
167	.word	0xbd3a8ed0,	0x27e16952
168	.word	0xbfd27eba,	0xf58d8000
169	.word	0xbd49399d,	0xffd2d096
170	.word	0xbfd2740d,	0x9f870000
171	.word	0xbd45f660,	0x0b9a802a
172	.word	0xbfd26962,	0x1134d000
173	.word	0xbd4724f0,	0x77d6ecee
174	.word	0xbfd25eb8,	0x49ff2000
175	.word	0xbd310c25,	0x03f76b8e
176	.word	0xbfd25410,	0x494e5000
177	.word	0xbd3b1d7a,	0xc0ef77f2
178	.word	0xbfd2496a,	0x0e8b3000
179	.word	0xbd003238,	0x687cfe2e
180	.word	0xbfd23ec5,	0x991eb000
181	.word	0xbd44920d,	0xdbae8d6f
182	.word	0xbfd23422,	0xe8724000
183	.word	0xbd40708a,	0x931c895b
184	.word	0xbfd22981,	0xfbef7000
185	.word	0xbd42f5ef,	0x4fb53f93
186	.word	0xbfd21ee2,	0xd3003000
187	.word	0xbd40382e,	0x41be00e3
188	.word	0xbfd21445,	0x6d0eb000
189	.word	0xbd41a87d,	0xeba46baf
190	.word	0xbfd209a9,	0xc9857000
191	.word	0xbd45b053,	0x3ba9c94d
192	.word	0xbfd1ff0f,	0xe7cf4000
193	.word	0xbd3e9d5b,	0x513ff0c1
194	.word	0xbfd1f477,	0xc7573000
195	.word	0xbd26d6d4,	0x010d751a
196	.word	0xbfd1e9e1,	0x67889000
197	.word	0xbd43e8a8,	0x961ba4d1
198	.word	0xbfd1df4c,	0xc7cf2000
199	.word	0xbd30b43f,	0x0455f7e4
200	.word	0xbfd1d4b9,	0xe796c000
201	.word	0xbd222a66,	0x7c42e56d
202	.word	0xbfd1ca28,	0xc64ba000
203	.word	0xbd4ca760,	0xf7a15533
204	.word	0xbfd1bf99,	0x635a6000
205	.word	0xbd4729bb,	0x5451ef6e
206	.word	0xbfd1b50b,	0xbe2fc000
207	.word	0xbd38ecd7,	0x3263201f
208	.word	0xbfd1aa7f,	0xd638d000
209	.word	0xbd29f60a,	0x9616f7a0
210	.word	0xbfd19ff5,	0xaae2f000
211	.word	0xbce69fd9,	0x9ec05ba8
212	.word	0xbfd1956d,	0x3b9bc000
213	.word	0xbd27d2f7,	0x3ad1aa14
214	.word	0xbfd18ae6,	0x87d13000
215	.word	0xbd43a034,	0x64df39ff
216	.word	0xbfd18061,	0x8ef18000
217	.word	0xbd45be80,	0x1bc9638d
218	.word	0xbfd175de,	0x506b3000
219	.word	0xbd30c07c,	0x4da5752f
220	.word	0xbfd16b5c,	0xcbacf000
221	.word	0xbd46e6b3,	0x7de945a0
222	.word	0xbfd160dd,	0x0025e000
223	.word	0xbd4ba5c1,	0xc499684a
224	.word	0xbfd1565e,	0xed455000
225	.word	0xbd4f8629,	0x48125517
226	.word	0xbfd14be2,	0x927ae000
227	.word	0xbd49a817,	0xc85685e2
228	.word	0xbfd14167,	0xef367000
229	.word	0xbd3e0c07,	0x824daaf5
230	.word	0xbfd136ef,	0x02e82000
231	.word	0xbd4217d3,	0xe78d3ed8
232	.word	0xbfd12c77,	0xcd007000
233	.word	0xbd13b294,	0x8a11f797
234	.word	0xbfd12202,	0x4cf00000
235	.word	0xbd38fdd9,	0x76fabda5
236	.word	0xbfd1178e,	0x8227e000
237	.word	0xbd31ef78,	0xce2d07f2
238	.word	0xbfd10d1c,	0x6c194000
239	.word	0xbd4cb3de,	0x00324ee4
240	.word	0xbfd102ac,	0x0a35c000
241	.word	0xbd483810,	0x88080a5e
242	.word	0xbfd0f83d,	0x5bef2000
243	.word	0xbd475fa0,	0x37a37ba8
244	.word	0xbfd0edd0,	0x60b78000
245	.word	0xbd0019b5,	0x2d8435f5
246	.word	0xbfd0e365,	0x18012000
247	.word	0xbd2a5943,	0x8bbdca93
248	.word	0xbfd0d8fb,	0x813eb000
249	.word	0xbd1ee8c8,	0x8753fa35
250	.word	0xbfd0ce93,	0x9be30000
251	.word	0xbd4e8266,	0xd788ddf1
252	.word	0xbfd0c42d,	0x67616000
253	.word	0xbd27188b,	0x163ceae9
254	.word	0xbfd0b9c8,	0xe32d1000
255	.word	0xbd42224e,	0x89208f94
256	.word	0xbfd0af66,	0x0eb9e000
257	.word	0xbd23c7c3,	0xf528d80a
258	.word	0xbfd0a504,	0xe97bb000
259	.word	0xbd303094,	0xe6690c44
260	.word	0xbfd09aa5,	0x72e6c000
261	.word	0xbd3b50a1,	0xe1734342
262	.word	0xbfd09047,	0xaa6f9000
263	.word	0xbd3f18e8,	0x3ce75c0e
264	.word	0xbfd085eb,	0x8f8ae000
265	.word	0xbd3e5d51,	0x3f45fe7b
266	.word	0xbfd07b91,	0x21adb000
267	.word	0xbd4520ba,	0x8e9b8a72
268	.word	0xbfd07138,	0x604d5000
269	.word	0xbd40c4e6,	0xd8b76a75
270	.word	0xbfd066e1,	0x4adf4000
271	.word	0xbd47f6bb,	0x351a4a71
272	.word	0xbfd05c8b,	0xe0d96000
273	.word	0xbd2ad0f1,	0xc77ccb58
274	.word	0xbfd05238,	0x21b1a000
275	.word	0xbd4ec752,	0xd39776ce
276	.word	0xbfd047e6,	0x0cde8000
277	.word	0xbd2dbdf1,	0x0d397f3c
278	.word	0xbfd03d95,	0xa1d67000
279	.word	0xbd3a1788,	0x0f236109
280	.word	0xbfd03346,	0xe0106000
281	.word	0xbcf89ff8,	0xa966395c
282	.word	0xbfd028f9,	0xc7035000
283	.word	0xbd483851,	0x858333c0
284	.word	0xbfd01eae,	0x5626c000
285	.word	0xbd3a43dc,	0xfade85ae
286	.word	0xbfd01464,	0x8cf23000
287	.word	0xbd4d082a,	0x567b45ed
288	.word	0xbfd00a1c,	0x6adda000
289	.word	0xbd31cd8d,	0x688b9e18
290	.word	0xbfcfffab,	0xdec23000
291	.word	0xbd236a1a,	0xdb4a75a4
292	.word	0xbfcfeb22,	0x33ea0000
293	.word	0xbd2f3418,	0xde00938b
294	.word	0xbfcfd69b,	0xd4240000
295	.word	0xbd3641a8,	0xff2ccc45
296	.word	0xbfcfc218,	0xbe620000
297	.word	0xbd34bba4,	0x6f1cf6a0
298	.word	0xbfcfad98,	0xf1965000
299	.word	0xbd16ee92,	0x73d7c2de
300	.word	0xbfcf991c,	0x6cb3b000
301	.word	0xbd1bcbec,	0xca0cdf30
302	.word	0xbfcf84a3,	0x2ead7000
303	.word	0xbd386af1,	0xd33d9e37
304	.word	0xbfcf702d,	0x36777000
305	.word	0xbd3bdf9a,	0xba663077
306	.word	0xbfcf5bba,	0x83060000
307	.word	0xbd341b25,	0x4a43da63
308	.word	0xbfcf474b,	0x134df000
309	.word	0xbd1146d8,	0x38821289
310	.word	0xbfcf32de,	0xe6448000
311	.word	0xbd2efb83,	0x625f1609
312	.word	0xbfcf1e75,	0xfadf9000
313	.word	0xbd37bcea,	0x6d13e04a
314	.word	0xbfcf0a10,	0x50157000
315	.word	0xbd3dad5f,	0x7347f55b
316	.word	0xbfcef5ad,	0xe4dcf000
317	.word	0xbd3fcbbd,	0xd53488e4
318	.word	0xbfcee14e,	0xb82d6000
319	.word	0xbd39d172,	0x6f4de261
320	.word	0xbfceccf2,	0xc8fe9000
321	.word	0xbd104e71,	0x7062a6fe
322	.word	0xbfceb89a,	0x1648b000
323	.word	0xbd32e26f,	0x74808b80
324	.word	0xbfcea444,	0x9f04a000
325	.word	0xbd35e916,	0x63732a36
326	.word	0xbfce8ff2,	0x622ba000
327	.word	0xbd378e13,	0xd33981e5
328	.word	0xbfce7ba3,	0x5eb77000
329	.word	0xbd3c5422,	0x3b90d937
330	.word	0xbfce6757,	0x93a26000
331	.word	0xbd01dc8e,	0xc0554762
332	.word	0xbfce530e,	0xffe71000
333	.word	0xbcc21227,	0x6041f430
334	.word	0xbfce3ec9,	0xa280c000
335	.word	0xbd14bd96,	0x3fb80bff
336	.word	0xbfce2a87,	0x7a6b2000
337	.word	0xbd382381,	0x7787081a
338	.word	0xbfce1648,	0x86a27000
339	.word	0xbd36ce95,	0xba645527
340	.word	0xbfce020c,	0xc6235000
341	.word	0xbd356a7f,	0xa92375ee
342	.word	0xbfcdedd4,	0x37eae000
343	.word	0xbd3e0125,	0x53595898
344	.word	0xbfcdd99e,	0xdaf6d000
345	.word	0xbd2fa273,	0x2c71522a
346	.word	0xbfcdc56c,	0xae452000
347	.word	0xbd3eb37a,	0xa24e1817
348	.word	0xbfcdb13d,	0xb0d48000
349	.word	0xbd32806a,	0x847527e6
350	.word	0xbfcd9d11,	0xe1a3f000
351	.word	0xbd19da04,	0xfa9fa4c6
352	.word	0xbfcd88e9,	0x3fb2f000
353	.word	0xbd2141af,	0xfb96815e
354	.word	0xbfcd74c3,	0xca018000
355	.word	0xbd393e4c,	0xfa17dce1
356	.word	0xbfcd60a1,	0x7f903000
357	.word	0xbd24523f,	0x207be58e
358	.word	0xbfcd4c82,	0x5f5fd000
359	.word	0xbd3e3f04,	0x21df291e
360	.word	0xbfcd3866,	0x6871f000
361	.word	0xbd21935e,	0x98ed9a88
362	.word	0xbfcd244d,	0x99c85000
363	.word	0xbd29cfb0,	0x0c890770
364	.word	0xbfcd1037,	0xf2655000
365	.word	0xbd3cf6b0,	0x31492124
366	.word	0xbfccfc25,	0x714bd000
367	.word	0xbd39fbd3,	0x34e03910
368	.word	0xbfcce816,	0x157f1000
369	.word	0xbd330faa,	0x2efb3576
370	.word	0xbfccd409,	0xde02d000
371	.word	0xbd132115,	0x39f1dcc5
372	.word	0xbfccc000,	0xc9db3000
373	.word	0xbd38a4a9,	0xe8aa1402
374	.word	0xbfccabfa,	0xd80d0000
375	.word	0xbd11e253,	0x70a10e3e
376	.word	0xbfcc97f8,	0x079d4000
377	.word	0xbd23b161,	0xa8c6e6c5
378	.word	0xbfcc83f8,	0x57919000
379	.word	0xbd358740,	0x00c94a0f
380	.word	0xbfcc6ffb,	0xc6f00000
381	.word	0xbd3ee138,	0xd3a69d43
382	.word	0xbfcc5c02,	0x54bf2000
383	.word	0xbd1d2f55,	0x73da163b
384	.word	0xbfcc480c,	0x0005c000
385	.word	0xbd39a294,	0xd5e44e76
386	.word	0xbfcc3418,	0xc7cb7000
387	.word	0xbd234b5d,	0xe46e0516
388	.word	0xbfcc2028,	0xab17f000
389	.word	0xbd3368f8,	0x8d51c29d
390	.word	0xbfcc0c3b,	0xa8f3a000
391	.word	0xbd3ac339,	0x48e7f56a
392	.word	0xbfcbf851,	0xc0675000
393	.word	0xbd257be3,	0x67ef56a7
394	.word	0xbfcbe46a,	0xf07c2000
395	.word	0xbd350591,	0x910f505a
396	.word	0xbfcbd087,	0x383bd000
397	.word	0xbd315a1d,	0xd355f6a5
398	.word	0xbfcbbca6,	0x96b07000
399	.word	0xbd3d0045,	0xea3f2624
400	.word	0xbfcba8c9,	0x0ae4a000
401	.word	0xbd3a32e7,	0xf44432da
402	.word	0xbfcb94ee,	0x93e36000
403	.word	0xbd2f2a06,	0xe2db48a3
404	.word	0xbfcb8117,	0x30b82000
405	.word	0xbd1e9068,	0x3b9cd768
406	.word	0xbfcb6d42,	0xe06ec000
407	.word	0xbd302afe,	0x254869ba
408	.word	0xbfcb5971,	0xa213a000
409	.word	0xbd39b50e,	0x83aa91df
410	.word	0xbfcb45a3,	0x74b39000
411	.word	0xbd3701df,	0x22138fc3
412	.word	0xbfcb31d8,	0x575bc000
413	.word	0xbd3c794e,	0x562a63cb
414	.word	0xbfcb1e10,	0x4919e000
415	.word	0xbd3fa006,	0x2597f33a
416	.word	0xbfcb0a4b,	0x48fc1000
417	.word	0xbd368c69,	0x51e3338a
418	.word	0xbfcaf689,	0x5610d000
419	.word	0xbd375beb,	0xba042b64
420	.word	0xbfcae2ca,	0x6f672000
421	.word	0xbd37a8d5,	0xae54f550
422	.word	0xbfcacf0e,	0x940e7000
423	.word	0xbd2800e3,	0xa7e64e07
424	.word	0xbfcabb55,	0xc3169000
425	.word	0xbd1d6694,	0xd43acc9f
426	.word	0xbfcaa79f,	0xfb8fc000
427	.word	0xbd3a8bf1,	0x1c0d8aaa
428	.word	0xbfca93ed,	0x3c8ad000
429	.word	0xbd33c6de,	0x57d4ef4c
430	.word	0xbfca803d,	0x8518d000
431	.word	0xbd3e09d1,	0x87f293cc
432	.word	0xbfca6c90,	0xd44b7000
433	.word	0xbce38901,	0xf909e74b
434	.word	0xbfca58e7,	0x29348000
435	.word	0xbd3e867d,	0x504551b1
436	.word	0xbfca4540,	0x82e6a000
437	.word	0xbd360a77,	0xc81f7171
438	.word	0xbfca319c,	0xe074a000
439	.word	0xbcbd7dba,	0xe650d5b3
440	.word	0xbfca1dfc,	0x40f1b000
441	.word	0xbd2fc3e1,	0xff6190fe
442	.word	0xbfca0a5e,	0xa371a000
443	.word	0xbd322191,	0x988b2e31
444	.word	0xbfc9f6c4,	0x07089000
445	.word	0xbd29904d,	0x6865817a
446	.word	0xbfc9e32c,	0x6acb0000
447	.word	0xbd3e5e8d,	0xbc0fb4ac
448	.word	0xbfc9cf97,	0xcdce0000
449	.word	0xbd3d862f,	0x10c414e3
450	.word	0xbfc9bc06,	0x2f26f000
451	.word	0xbd3874d8,	0x1809e6d5
452	.word	0xbfc9a877,	0x8deba000
453	.word	0xbd3470fa,	0x3efec390
454	.word	0xbfc994eb,	0xe9325000
455	.word	0xbd2a9c9d,	0x28bcbe25
456	.word	0xbfc98163,	0x4011a000
457	.word	0xbd34eadd,	0x9e9045e2
458	.word	0xbfc96ddd,	0x91a0b000
459	.word	0xbd32ac6b,	0x11cf6f2b
460	.word	0xbfc95a5a,	0xdcf70000
461	.word	0xbd07f228,	0x58a0ff6f
462	.word	0xbfc946db,	0x212c6000
463	.word	0xbd36cf76,	0x74ca02ba
464	.word	0xbfc9335e,	0x5d594000
465	.word	0xbd33115c,	0x3abd47da
466	.word	0xbfc91fe4,	0x90965000
467	.word	0xbd30369c,	0xf30a1c32
468	.word	0xbfc90c6d,	0xb9fcb000
469	.word	0xbd39b282,	0xa239ca0d
470	.word	0xbfc8f8f9,	0xd8a60000
471	.word	0xbd2af16c,	0x8230ceca
472	.word	0xbfc8e588,	0xebac2000
473	.word	0xbd3b7d5c,	0xab2d1140
474	.word	0xbfc8d21a,	0xf2299000
475	.word	0xbd14d652,	0x74757226
476	.word	0xbfc8beaf,	0xeb38f000
477	.word	0xbd3d1855,	0x6aa2da66
478	.word	0xbfc8ab47,	0xd5f5a000
479	.word	0xbd187eb8,	0x505d468f
480	.word	0xbfc897e2,	0xb17b1000
481	.word	0xbd334a64,	0x63f9a0b1
482	.word	0xbfc88480,	0x7ce56000
483	.word	0xbd1c77ce,	0xf4a8712c
484	.word	0xbfc87121,	0x3750e000
485	.word	0xbd3328eb,	0x42f9af75
486	.word	0xbfc85dc4,	0xdfda7000
487	.word	0xbd3785ab,	0x048301ba
488	.word	0xbfc84a6b,	0x759f5000
489	.word	0xbd02ebfe,	0xa903cfb8
490	.word	0xbfc83714,	0xf7bd0000
491	.word	0xbd2ed83a,	0xf85a2ced
492	.word	0xbfc823c1,	0x6551a000
493	.word	0xbd1e0ddb,	0x9a631e83
494	.word	0xbfc81070,	0xbd7b9000
495	.word	0xbcafe80a,	0x6682e646
496	.word	0xbfc7fd22,	0xff599000
497	.word	0xbd3a9d05,	0x02ea120c
498	.word	0xbfc7e9d8,	0x2a0b0000
499	.word	0xbd116849,	0xfa40e4f0
500	.word	0xbfc7d690,	0x3caf5000
501	.word	0xbd359fca,	0x741e7f15
502	.word	0xbfc7c34b,	0x3666a000
503	.word	0xbd3175c9,	0x81b45e10
504	.word	0xbfc7b009,	0x16515000
505	.word	0xbd146280,	0xd3e606a3
506	.word	0xbfc79cc9,	0xdb902000
507	.word	0xbd1e00d0,	0x375e70bd
508	.word	0xbfc7898d,	0x85444000
509	.word	0xbd38e67b,	0xe3dbaf3f
510	.word	0xbfc77654,	0x128f6000
511	.word	0xbd0274ba,	0xdf268e7c
512	.word	0xbfc7631d,	0x82935000
513	.word	0xbd350c41,	0x1c1d060f
514	.word	0xbfc74fe9,	0xd4729000
515	.word	0xbd249736,	0xd91da11e
516	.word	0xbfc73cb9,	0x074fd000
517	.word	0xbd04cab7,	0x97ffd2cc
518	.word	0xbfc7298b,	0x1a4e3000
519	.word	0xbd15accc,	0xe43ce383
520	.word	0xbfc71660,	0x0c914000
521	.word	0xbce51b15,	0x7cec3838
522	.word	0xbfc70337,	0xdd3ce000
523	.word	0xbd206a17,	0x8a5eab9c
524	.word	0xbfc6f012,	0x8b756000
525	.word	0xbd357739,	0x0d31ef0f
526	.word	0xbfc6dcf0,	0x165f8000
527	.word	0xbd1b9566,	0x9a33e4c6
528	.word	0xbfc6c9d0,	0x7d203000
529	.word	0xbd3f8e30,	0x14099349
530	.word	0xbfc6b6b3,	0xbedd1000
531	.word	0xbd1a8f73,	0xa64d3813
532	.word	0xbfc6a399,	0xdabbd000
533	.word	0xbd1c1b2c,	0x6657a967
534	.word	0xbfc69082,	0xcfe2b000
535	.word	0xbd2da1e7,	0x20b79662
536	.word	0xbfc67d6e,	0x9d785000
537	.word	0xbd2dc2ef,	0x9eb1f25a
538	.word	0xbfc66a5d,	0x42a3a000
539	.word	0xbd3a6893,	0x3aa00298
540	.word	0xbfc6574e,	0xbe8c1000
541	.word	0xbd19cf8b,	0x2c3c2e78
542	.word	0xbfc64443,	0x10594000
543	.word	0xbd22f605,	0xb0281916
544	.word	0xbfc6313a,	0x37335000
545	.word	0xbd3aec82,	0xac378565
546	.word	0xbfc61e34,	0x3242d000
547	.word	0xbd32bb2d,	0x97ecd861
548	.word	0xbfc60b31,	0x00b09000
549	.word	0xbd21d752,	0x6cee0fd8
550	.word	0xbfc5f830,	0xa1a5c000
551	.word	0xbd352268,	0x98ffc1bc
552	.word	0xbfc5e533,	0x144c1000
553	.word	0xbd2c63e8,	0x189ade2b
554	.word	0xbfc5d238,	0x57cd7000
555	.word	0xbd23530a,	0x5ba6e7ac
556	.word	0xbfc5bf40,	0x6b543000
557	.word	0xbd3b63f7,	0x0525d9f9
558	.word	0xbfc5ac4b,	0x4e0b2000
559	.word	0xbd351709,	0xd7275f36
560	.word	0xbfc59958,	0xff1d5000
561	.word	0xbd178be9,	0xa258d7eb
562	.word	0xbfc58669,	0x7db62000
563	.word	0xbd39e26c,	0x65e8cb44
564	.word	0xbfc5737c,	0xc9018000
565	.word	0xbd39baa7,	0xa6b887f6
566	.word	0xbfc56092,	0xe02ba000
567	.word	0xbd245850,	0x06899d98
568	.word	0xbfc54dab,	0xc2610000
569	.word	0xbd2746fe,	0xe5c8d0d8
570	.word	0xbfc53ac7,	0x6ece9000
571	.word	0xbd39ca8a,	0x2a8725d5
572	.word	0xbfc527e5,	0xe4a1b000
573	.word	0xbd2633e8,	0xe5697dc7
574	.word	0xbfc51507,	0x2307f000
575	.word	0xbd306b11,	0xecc0d77b
576	.word	0xbfc5022b,	0x292f6000
577	.word	0xbd348a05,	0xff36a25b
578	.word	0xbfc4ef51,	0xf6466000
579	.word	0xbd3bc83d,	0x21c8cd53
580	.word	0xbfc4dc7b,	0x897bc000
581	.word	0xbd0c79b6,	0x0ae1ff0f
582	.word	0xbfc4c9a7,	0xe1fe8000
583	.word	0xbcff39f7,	0x50dbbb30
584	.word	0xbfc4b6d6,	0xfefe2000
585	.word	0xbd1522ec,	0xf56e7952
586	.word	0xbfc4a408,	0xdfaa7000
587	.word	0xbd33b41f,	0x86e5dd72
588	.word	0xbfc4913d,	0x8333b000
589	.word	0xbd258379,	0x54fdb678
590	.word	0xbfc47e74,	0xe8ca5000
591	.word	0xbd3ef836,	0xa48fdfcf
592	.word	0xbfc46baf,	0x0f9f5000
593	.word	0xbd3b6d8c,	0xbe1bdef9
594	.word	0xbfc458eb,	0xf6e3f000
595	.word	0xbcf5c0fe,	0x1f2b8094
596	.word	0xbfc4462b,	0x9dc9b000
597	.word	0xbd1ede9d,	0x63b93e7a
598	.word	0xbfc4336e,	0x03829000
599	.word	0xbd3ac363,	0xa859c2af
600	.word	0xbfc420b3,	0x2740f000
601	.word	0xbd3ba75f,	0x4de97ddf
602	.word	0xbfc40dfb,	0x08378000
603	.word	0xbc9bb453,	0xc4f7b685
604	.word	0xbfc3fb45,	0xa5992000
605	.word	0xbd319713,	0xc0cae559
606	.word	0xbfc3e892,	0xfe995000
607	.word	0xbd2b6aad,	0x914d5249
608	.word	0xbfc3d5e3,	0x126bc000
609	.word	0xbd13fb2f,	0x85096c4b
610	.word	0xbfc3c335,	0xe0447000
611	.word	0xbd3ae77d,	0x114a8b5f
612	.word	0xbfc3b08b,	0x6757f000
613	.word	0xbd15485c,	0x35b37c15
614	.word	0xbfc39de3,	0xa6dae000
615	.word	0xbd284fc7,	0x32ce95f1
616	.word	0xbfc38b3e,	0x9e027000
617	.word	0xbd21e21f,	0x5747d00e
618	.word	0xbfc3789c,	0x4c041000
619	.word	0xbd19b4f4,	0x44d31e60
620	.word	0xbfc365fc,	0xb0159000
621	.word	0xbcc62fa8,	0x234b7289
622	.word	0xbfc3535f,	0xc96d1000
623	.word	0xbd013f1c,	0x3b1fab68
624	.word	0xbfc340c5,	0x97411000
625	.word	0xbd20b846,	0x104c58f3
626	.word	0xbfc32e2e,	0x18c86000
627	.word	0xbd3e6220,	0x6c327115
628	.word	0xbfc31b99,	0x4d3a4000
629	.word	0xbd3f098e,	0xe3a50810
630	.word	0xbfc30907,	0x33ce3000
631	.word	0xbd33f323,	0x7c4d853e
632	.word	0xbfc2f677,	0xcbbc0000
633	.word	0xbd352b30,	0x2160f40d
634	.word	0xbfc2e3eb,	0x143bf000
635	.word	0xbd218910,	0x2710016e
636	.word	0xbfc2d161,	0x0c868000
637	.word	0xbd039d6c,	0xcb81b4a1
638	.word	0xbfc2bed9,	0xb3d49000
639	.word	0xbd095245,	0x4a40d26b
640	.word	0xbfc2ac55,	0x095f5000
641	.word	0xbd38b2e6,	0x4bce4dd6
642	.word	0xbfc299d3,	0x0c606000
643	.word	0xbd3d4d00,	0x79dc08d9
644	.word	0xbfc28753,	0xbc11a000
645	.word	0xbd37494e,	0x359302e6
646	.word	0xbfc274d7,	0x17ad4000
647	.word	0xbd38a65b,	0xa0967592
648	.word	0xbfc2625d,	0x1e6dd000
649	.word	0xbd3ead69,	0xd0f61c28
650	.word	0xbfc24fe5,	0xcf8e4000
651	.word	0xbd318f96,	0x26b10d30
652	.word	0xbfc23d71,	0x2a49c000
653	.word	0xbd100d23,	0x8fd3df5c
654	.word	0xbfc22aff,	0x2ddbd000
655	.word	0xbd32e1ea,	0xca7cb4f0
656	.word	0xbfc2188f,	0xd9807000
657	.word	0xbd131786,	0x02bce3fb
658	.word	0xbfc20623,	0x2c73c000
659	.word	0xbd2351a5,	0x02bb95f5
660	.word	0xbfc1f3b9,	0x25f25000
661	.word	0xbd3a822c,	0x593df273
662	.word	0xbfc1e151,	0xc5391000
663	.word	0xbd38e5f5,	0xf578d80e
664	.word	0xbfc1ceed,	0x09853000
665	.word	0xbd2d47c7,	0x8dcdaa0e
666	.word	0xbfc1bc8a,	0xf2143000
667	.word	0xbd2acd64,	0xfb955458
668	.word	0xbfc1aa2b,	0x7e23f000
669	.word	0xbd2ca78e,	0x44389934
670	.word	0xbfc197ce,	0xacf2a000
671	.word	0xbd31ab14,	0x4caf6736
672	.word	0xbfc18574,	0x7dbec000
673	.word	0xbd3e6744,	0x45bd9b49
674	.word	0xbfc1731c,	0xefc74000
675	.word	0xbcfde27c,	0xd98317fd
676	.word	0xbfc160c8,	0x024b2000
677	.word	0xbd2ec2d2,	0xa9009e3d
678	.word	0xbfc14e75,	0xb489f000
679	.word	0xbd3fdf84,	0x66dfe192
680	.word	0xbfc13c26,	0x05c39000
681	.word	0xbd318501,	0x13584d7c
682	.word	0xbfc129d8,	0xf5381000
683	.word	0xbd1d77cc,	0x415a172e
684	.word	0xbfc1178e,	0x8227e000
685	.word	0xbd21ef78,	0xce2d07f2
686	.word	0xbfc10546,	0xabd3d000
687	.word	0xbd00189b,	0x51d162e8
688	.word	0xbfc0f301,	0x717cf000
689	.word	0xbcff64bb,	0xe51793b4
690	.word	0xbfc0e0be,	0xd264a000
691	.word	0xbd3bafe2,	0x3aeb549c
692	.word	0xbfc0ce7e,	0xcdccc000
693	.word	0xbd14652d,	0xabff5447
694	.word	0xbfc0bc41,	0x62f73000
695	.word	0xbd36ca04,	0x73bd9c29
696	.word	0xbfc0aa06,	0x91267000
697	.word	0xbd2755cc,	0x51f9bdae
698	.word	0xbfc097ce,	0x579d2000
699	.word	0xbce33742,	0xda652881
700	.word	0xbfc08598,	0xb59e3000
701	.word	0xbd340d11,	0x47fb37ea
702	.word	0xbfc07365,	0xaa6d1000
703	.word	0xbd16e172,	0x43f1226a
704	.word	0xbfc06135,	0x354d4000
705	.word	0xbd363046,	0x28340ee9
706	.word	0xbfc04f07,	0x5582d000
707	.word	0xbd1a3d31,	0x4c780403
708	.word	0xbfc03cdc,	0x0a51e000
709	.word	0xbd381a9c,	0xf169fc5c
710	.word	0xbfc02ab3,	0x52ff2000
711	.word	0xbd27ce63,	0x5d569b2b
712	.word	0xbfc0188d,	0x2ecf6000
713	.word	0xbd03f965,	0x1cff9dfe
714	.word	0xbfc00669,	0x9d07c000
715	.word	0xbd3b8775,	0x304686e1
716	.word	0xbfbfe891,	0x39dbd000
717	.word	0xbd159653,	0x60bdea07
718	.word	0xbfbfc454,	0x5b8f0000
719	.word	0xbd29cba7,	0xd5591204
720	.word	0xbfbfa01c,	0x9db57000
721	.word	0xbd29c32b,	0x816dd634
722	.word	0xbfbf7be9,	0xfedbf000
723	.word	0xbd2bcbe8,	0xb535310e
724	.word	0xbfbf57bc,	0x7d900000
725	.word	0xbd176a6c,	0x9ea8b04e
726	.word	0xbfbf3394,	0x185fa000
727	.word	0xbd1ea383,	0x09d097b7
728	.word	0xbfbf0f70,	0xcdd99000
729	.word	0xbd0718fb,	0x613960ee
730	.word	0xbfbeeb52,	0x9c8d1000
731	.word	0xbd0b6260,	0x903c8f99
732	.word	0xbfbec739,	0x830a1000
733	.word	0xbcf1fcba,	0x80cdd0fe
734	.word	0xbfbea325,	0x7fe10000
735	.word	0xbd2ef30d,	0x47e4627a
736	.word	0xbfbe7f16,	0x91a32000
737	.word	0xbd2a7c74,	0xc871080d
738	.word	0xbfbe5b0c,	0xb6e22000
739	.word	0xbd109021,	0x3b34d95f
740	.word	0xbfbe3707,	0xee304000
741	.word	0xbd20f684,	0xe6766abd
742	.word	0xbfbe1308,	0x36208000
743	.word	0xbd21aeea,	0xf90019f9
744	.word	0xbfbdef0d,	0x8d466000
745	.word	0xbd2b715f,	0x7da2cb17
746	.word	0xbfbdcb17,	0xf2361000
747	.word	0xbd226a0a,	0x5ba47956
748	.word	0xbfbda727,	0x63844000
749	.word	0xbd1a8940,	0x1fa71733
750	.word	0xbfbd833b,	0xdfc64000
751	.word	0xbd24805c,	0x07408695
752	.word	0xbfbd5f55,	0x65921000
753	.word	0xbcec4739,	0x830a8d2a
754	.word	0xbfbd3b73,	0xf37e1000
755	.word	0xbd2f3501,	0x33da5007
756	.word	0xbfbd1797,	0x88219000
757	.word	0xbd0b219d,	0xaf7df76b
758	.word	0xbfbcf3c0,	0x22142000
759	.word	0xbce9d2b6,	0x6ddd996f
760	.word	0xbfbccfed,	0xbfee1000
761	.word	0xbd0d4119,	0x7f3892ad
762	.word	0xbfbcac20,	0x60484000
763	.word	0xbd2d53ed,	0xcc4f420b
764	.word	0xbfbc8858,	0x01bc4000
765	.word	0xbd2646d1,	0xc65aacd3
766	.word	0xbfbc6494,	0xa2e41000
767	.word	0xbd214bd1,	0x564189cb
768	.word	0xbfbc40d6,	0x425a5000
769	.word	0xbd296224,	0x3a3261b9
770	.word	0xbfbc1d1c,	0xdeba5000
771	.word	0xbd02f7e7,	0x23a02373
772	.word	0xbfbbf968,	0x769fc000
773	.word	0xbd24218c,	0x8d824283
774	.word	0xbfbbd5b9,	0x08a72000
775	.word	0xbd2236aa,	0x3ae84f31
776	.word	0xbfbbb20e,	0x936d6000
777	.word	0xbd22e8af,	0x9574c8e4
778	.word	0xbfbb8e69,	0x15901000
779	.word	0xbd22bef7,	0xf208fbd9
780	.word	0xbfbb6ac8,	0x8dad5000
781	.word	0xbd2637bf,	0xea044b8d
782	.word	0xbfbb472c,	0xfa63e000
783	.word	0xbd1246f5,	0xc7f4588b
784	.word	0xbfbb2396,	0x5a52f000
785	.word	0xbd2e009b,	0x115ec8f8
786	.word	0xbfbb0004,	0xac1a8000
787	.word	0xbd1aaf97,	0x037f2b35
788	.word	0xbfbadc77,	0xee5ae000
789	.word	0xbd25189b,	0xec79cdf7
790	.word	0xbfbab8f0,	0x1fb52000
791	.word	0xbd27f69d,	0xd23d3ac2
792	.word	0xbfba956d,	0x3ecad000
793	.word	0xbd2cc6f2,	0x9805895f
794	.word	0xbfba71ef,	0x4a3e2000
795	.word	0xbd1bbc94,	0x7b201fbf
796	.word	0xbfba4e76,	0x40b1b000
797	.word	0xbd286f52,	0x51aefe0e
798	.word	0xbfba2b02,	0x20c8e000
799	.word	0xbd17d329,	0x8e6b7dbf
800	.word	0xbfba0792,	0xe9277000
801	.word	0xbd2958c6,	0x4d94ab90
802	.word	0xbfb9e428,	0x9871e000
803	.word	0xbd22c483,	0xd0942b9c
804	.word	0xbfb9c0c3,	0x2d4d2000
805	.word	0xbd1520fd,	0x85f1e661
806	.word	0xbfb99d62,	0xa65eb000
807	.word	0xbd22dd17,	0xd834450a
808	.word	0xbfb97a07,	0x024cb000
809	.word	0xbd2ce867,	0xd19bed86
810	.word	0xbfb956b0,	0x3fbdd000
811	.word	0xbd286fb6,	0x03fe1b67
812	.word	0xbfb9335e,	0x5d594000
813	.word	0xbd23115c,	0x3abd47da
814	.word	0xbfb91011,	0x59c6c000
815	.word	0xbd27af17,	0x9df80b59
816	.word	0xbfb8ecc9,	0x33aeb000
817	.word	0xbd1ba18c,	0x833010ab
818	.word	0xbfb8c985,	0xe9b9e000
819	.word	0xbd290791,	0x0379ff94
820	.word	0xbfb8a647,	0x7a91d000
821	.word	0xbd285181,	0x5f37adbf
822	.word	0xbfb8830d,	0xe4e08000
823	.word	0xbd05f60b,	0x79c8f66a
824	.word	0xbfb85fd9,	0x27506000
825	.word	0xbd248fcf,	0xccd1e7c7
826	.word	0xbfb83ca9,	0x408ca000
827	.word	0xbd2326c8,	0xd744c7d1
828	.word	0xbfb8197e,	0x2f40e000
829	.word	0xbd0f80dc,	0xf96ffdf7
830	.word	0xbfb7f657,	0xf2194000
831	.word	0xbd21bef9,	0x43faf4d2
832	.word	0xbfb7d336,	0x87c29000
833	.word	0xbd0e4461,	0xf3833832
834	.word	0xbfb7b019,	0xeeea0000
835	.word	0xbd275649,	0xaee848d4
836	.word	0xbfb78d02,	0x263d8000
837	.word	0xbd069b57,	0x94b69fb7
838	.word	0xbfb769ef,	0x2c6b5000
839	.word	0xbd1a35d8,	0xc73b6a55
840	.word	0xbfb746e1,	0x00226000
841	.word	0xbd2db25d,	0x23c3bc5b
842	.word	0xbfb723d7,	0xa0123000
843	.word	0xbd2c3cbb,	0x84fef08e
844	.word	0xbfb700d3,	0x0aeac000
845	.word	0xbcec1e8d,	0xa99ded32
846	.word	0xbfb6ddd3,	0x3f5c7000
847	.word	0xbd2aeb06,	0x82906a06
848	.word	0xbfb6bad8,	0x3c188000
849	.word	0xbd0daf3c,	0xc08926ae
850	.word	0xbfb697e1,	0xffd06000
851	.word	0xbd296c57,	0x15a12bb6
852	.word	0xbfb674f0,	0x89365000
853	.word	0xbd24f332,	0x993a6604
854	.word	0xbfb65203,	0xd6fcf000
855	.word	0xbd1ea006,	0x8199326b
856	.word	0xbfb62f1b,	0xe7d77000
857	.word	0xbd1d0cd5,	0x02538764
858	.word	0xbfb60c38,	0xba799000
859	.word	0xbd1172c4,	0x3aec1296
860	.word	0xbfb5e95a,	0x4d979000
861	.word	0xbcfcb7ce,	0x1d171711
862	.word	0xbfb5c680,	0x9fe63000
863	.word	0xbd23c479,	0x935581b6
864	.word	0xbfb5a3ab,	0xb01ad000
865	.word	0xbd2c4ae9,	0x3cd5f430
866	.word	0xbfb580db,	0x7ceb5000
867	.word	0xbd1c07f6,	0xcbe60d53
868	.word	0xbfb55e10,	0x050e0000
869	.word	0xbd0c1d74,	0x0c53c72e
870	.word	0xbfb53b49,	0x4739c000
871	.word	0xbd221868,	0x5306aaa5
872	.word	0xbfb51887,	0x42261000
873	.word	0xbd0850ec,	0xb12c59ec
874	.word	0xbfb4f5c9,	0xf48ad000
875	.word	0xbd0580c1,	0x2c81f8fd
876	.word	0xbfb4d311,	0x5d207000
877	.word	0xbd2d58bb,	0x4fa163c2
878	.word	0xbfb4b05d,	0x7aa01000
879	.word	0xbd07029c,	0x6ef93715
880	.word	0xbfb48dae,	0x4bc31000
881	.word	0xbcb85b20,	0x8c200bea
882	.word	0xbfb46b03,	0xcf437000
883	.word	0xbd2787a5,	0x2f0f6296
884	.word	0xbfb4485e,	0x03dbd000
885	.word	0xbd2f5a8d,	0xd1a4d56e
886	.word	0xbfb425bc,	0xe8474000
887	.word	0xbd2365ac,	0x5219daef
888	.word	0xbfb40320,	0x7b414000
889	.word	0xbd26fd84,	0xaa8157c0
890	.word	0xbfb3e088,	0xbb85f000
891	.word	0xbd248068,	0xbdc331fa
892	.word	0xbfb3bdf5,	0xa7d1e000
893	.word	0xbd2cc85e,	0xa5db4ed7
894	.word	0xbfb39b67,	0x3ee24000
895	.word	0xbd0a759b,	0xa99f5667
896	.word	0xbfb378dd,	0x7f749000
897	.word	0xbd1c5044,	0xa3c7eb28
898	.word	0xbfb35658,	0x68470000
899	.word	0xbd2464d7,	0x0035b508
900	.word	0xbfb333d7,	0xf8183000
901	.word	0xbd2e96d4,	0x957e477c
902	.word	0xbfb3115c,	0x2da75000
903	.word	0xbd25bc37,	0x00651448
904	.word	0xbfb2eee5,	0x07b40000
905	.word	0xbd08081e,	0xdd77c860
906	.word	0xbfb2cc72,	0x84fe5000
907	.word	0xbd2e38bd,	0x0cb32a28
908	.word	0xbfb2aa04,	0xa4471000
909	.word	0xbd1e922e,	0xa2c72d06
910	.word	0xbfb2879b,	0x644f5000
911	.word	0xbd1752b6,	0xf65943ec
912	.word	0xbfb26536,	0xc3d8c000
913	.word	0xbd0b4bac,	0x097c5ba3
914	.word	0xbfb242d6,	0xc1a58000
915	.word	0xbd24b838,	0xac648481
916	.word	0xbfb2207b,	0x5c785000
917	.word	0xbd127633,	0xf0431efb
918	.word	0xbfb1fe24,	0x93144000
919	.word	0xbd27a374,	0xe1a7c696
920	.word	0xbfb1dbd2,	0x643d1000
921	.word	0xbd221649,	0xb2ef8928
922	.word	0xbfb1b984,	0xceb6e000
923	.word	0xbd121a31,	0x2f307601
924	.word	0xbfb1973b,	0xd1465000
925	.word	0xbd159b45,	0x53e4c2cb
926	.word	0xbfb174f7,	0x6ab09000
927	.word	0xbcf71031,	0x7ee2e483
928	.word	0xbfb152b7,	0x99bb3000
929	.word	0xbd299135,	0xbe3f3df6
930	.word	0xbfb1307c,	0x5d2c7000
931	.word	0xbd2357c9,	0xfa3dbf1f
932	.word	0xbfb10e45,	0xb3cae000
933	.word	0xbd20612d,	0xaf6b9737
934	.word	0xbfb0ec13,	0x9c5da000
935	.word	0xbd180247,	0xe54ebd73
936	.word	0xbfb0c9e6,	0x15ac4000
937	.word	0xbd2c2da8,	0x0974d976
938	.word	0xbfb0a7bd,	0x1e7ef000
939	.word	0xbd20f926,	0xcdf8dfb4
940	.word	0xbfb08598,	0xb59e3000
941	.word	0xbd240d11,	0x47fb37ea
942	.word	0xbfb06378,	0xd9d32000
943	.word	0xbd104990,	0x672b0729
944	.word	0xbfb0415d,	0x89e74000
945	.word	0xbd1111c0,	0x5cf1d753
946	.word	0xbfb01f46,	0xc4a4a000
947	.word	0xbd11157c,	0x89ecf845
948	.word	0xbfaffa69,	0x11ab9000
949	.word	0xbcf80464,	0xc1c0d47a
950	.word	0xbfafb64d,	0xaa8b6000
951	.word	0xbd13830d,	0xaeb373e0
952	.word	0xbfaf723b,	0x517fc000
953	.word	0xbd048a79,	0x154f796a
954	.word	0xbfaf2e32,	0x04209000
955	.word	0xbcfb9ba8,	0x2f4d6e7f
956	.word	0xbfaeea31,	0xc006b000
957	.word	0xbd10f760,	0xd81b6242
958	.word	0xbfaea63a,	0x82cc0000
959	.word	0xbd19f144,	0x08e210e7
960	.word	0xbfae624c,	0x4a0b5000
961	.word	0xbd1c368e,	0x2e6265dd
962	.word	0xbfae1e67,	0x13606000
963	.word	0xbd1a0d3c,	0xb7b141db
964	.word	0xbfadda8a,	0xdc67e000
965	.word	0xbd1c9ca7,	0x364c37a2
966	.word	0xbfad96b7,	0xa2bf8000
967	.word	0xbd12eb81,	0xf49d3d78
968	.word	0xbfad52ed,	0x6405d000
969	.word	0xbd10de8b,	0x575910a6
970	.word	0xbfad0f2c,	0x1dda6000
971	.word	0xbd0c6fc7,	0x04385ddf
972	.word	0xbfaccb73,	0xcdddb000
973	.word	0xbcf65c36,	0xe09f5fe2
974	.word	0xbfac87c4,	0x71b12000
975	.word	0xbd13799a,	0xf29d923d
976	.word	0xbfac441e,	0x06f72000
977	.word	0xbd153c7d,	0x26143455
978	.word	0xbfac0080,	0x8b530000
979	.word	0xbd003c05,	0x63baea2e
980	.word	0xbfabbceb,	0xfc68f000
981	.word	0xbd0080f2,	0xe79d07ab
982	.word	0xbfab7960,	0x57de2000
983	.word	0xbd0f5af1,	0xf7b24d0f
984	.word	0xbfab35dd,	0x9b58b000
985	.word	0xbd1559d3,	0x5b3d5639
986	.word	0xbfaaf263,	0xc47fb000
987	.word	0xbd085458,	0x172a97ad
988	.word	0xbfaaaef2,	0xd0fb1000
989	.word	0xbcdf8346,	0xa77685c1
990	.word	0xbfaa6b8a,	0xbe73a000
991	.word	0xbd1e988d,	0x46e25c90
992	.word	0xbfaa282b,	0x8a936000
993	.word	0xbce70a67,	0xf10371d7
994	.word	0xbfa9e4d5,	0x3304e000
995	.word	0xbcfec4a6,	0x991acef2
996	.word	0xbfa9a187,	0xb573d000
997	.word	0xbd1cf746,	0xc4ec9bca
998	.word	0xbfa95e43,	0x0f8ce000
999	.word	0xbd01774c,	0x225e2c8d
1000	.word	0xbfa91b07,	0x3efd7000
1001	.word	0xbcf8a0eb,	0x0224d5a9
1002	.word	0xbfa8d7d4,	0x4173f000
1003	.word	0xbcf24a7b,	0x7a089116
1004	.word	0xbfa894aa,	0x149fb000
1005	.word	0xbcfa19a8,	0xbe97660a
1006	.word	0xbfa85188,	0xb630f000
1007	.word	0xbcca0544,	0x165f80aa
1008	.word	0xbfa80e70,	0x23d8c000
1009	.word	0xbd1988fa,	0x435d02ec
1010	.word	0xbfa7cb60,	0x5b495000
1011	.word	0xbcfc8af3,	0x69d6d0f4
1012	.word	0xbfa78859,	0x5a357000
1013	.word	0xbd0ee9e5,	0xef898b68
1014	.word	0xbfa7455b,	0x1e511000
1015	.word	0xbcfb28ce,	0xb91e296d
1016	.word	0xbfa70265,	0xa550e000
1017	.word	0xbd0ddc83,	0xb80a8c63
1018	.word	0xbfa6bf78,	0xecea9000
1019	.word	0xbd163cc0,	0x0f16f7e9
1020	.word	0xbfa67c94,	0xf2d4b000
1021	.word	0xbd16b082,	0x09f3282f
1022	.word	0xbfa639b9,	0xb4c6b000
1023	.word	0xbd14f37b,	0x6b7f9673
1024	.word	0xbfa5f6e7,	0x3078e000
1025	.word	0xbd1f6f4a,	0xffdb6d69
1026	.word	0xbfa5b41d,	0x63a49000
1027	.word	0xbd0abcc4,	0x7e8a0c20
1028	.word	0xbfa5715c,	0x4c03c000
1029	.word	0xbd1dddc8,	0x80ee2760
1030	.word	0xbfa52ea3,	0xe7519000
1031	.word	0xbd16ff79,	0x68012363
1032	.word	0xbfa4ebf4,	0x3349e000
1033	.word	0xbcf37578,	0x4620c465
1034	.word	0xbfa4a94d,	0x2da96000
1035	.word	0xbd18ace0,	0x8a56ed78
1036	.word	0xbfa466ae,	0xd42de000
1037	.word	0xbcff4c64,	0x521016be
1038	.word	0xbfa42419,	0x2495d000
1039	.word	0xbd05f329,	0x88dd64a6
1040	.word	0xbfa3e18c,	0x1ca0a000
1041	.word	0xbd1d23b4,	0xfdb8de39
1042	.word	0xbfa39f07,	0xba0eb000
1043	.word	0xbd1ac4a7,	0x590b95de
1044	.word	0xbfa35c8b,	0xfaa13000
1045	.word	0xbccabeaf,	0x7cf59aac
1046	.word	0xbfa31a18,	0xdc1a1000
1047	.word	0xbd07dd58,	0xd860ceab
1048	.word	0xbfa2d7ae,	0x5c3c5000
1049	.word	0xbd175b1a,	0xe989664c
1050	.word	0xbfa2954c,	0x78cbc000
1051	.word	0xbd1c3526,	0x570c1572
1052	.word	0xbfa252f3,	0x2f8d1000
1053	.word	0xbd107d35,	0xc0436cf5
1054	.word	0xbfa210a2,	0x7e45c000
1055	.word	0xbcf8ceca,	0x131bef9c
1056	.word	0xbfa1ce5a,	0x62bc3000
1057	.word	0xbd04e63c,	0x6c6fccc5
1058	.word	0xbfa18c1a,	0xdab7b000
1059	.word	0xbcf22af4,	0xd32f2ac0
1060	.word	0xbfa149e3,	0xe4005000
1061	.word	0xbd1519d5,	0x96fa5c0c
1062	.word	0xbfa107b5,	0x7c5f2000
1063	.word	0xbd152b81,	0xe94af0a6
1064	.word	0xbfa0c58f,	0xa19df000
1065	.word	0xbd155317,	0x53a74377
1066	.word	0xbfa08372,	0x51877000
1067	.word	0xbd1cc91e,	0xb2004222
1068	.word	0xbfa0415d,	0x89e74000
1069	.word	0xbd0111c0,	0x5cf1d753
1070	.word	0xbf9ffea2,	0x91136000
1071	.word	0xbd04dd01,	0xd7640dc2
1072	.word	0xbf9f7a9b,	0x16782000
1073	.word	0xbd00ab64,	0x9c6f9f5c
1074	.word	0xbf9ef6a4,	0x9f98f000
1075	.word	0xbd0671e4,	0xe8f151a3
1076	.word	0xbf9e72bf,	0x2813c000
1077	.word	0xbd0ca2ba,	0xda22cae5
1078	.word	0xbf9deeea,	0xab883000
1079	.word	0xbd0c6e1d,	0x7741b591
1080	.word	0xbf9d6b27,	0x25979000
1081	.word	0xbd000425,	0x79723e3d
1082	.word	0xbf9ce774,	0x91e4d000
1083	.word	0xbd00d7ce,	0xf3d25198
1084	.word	0xbf9c63d2,	0xec14a000
1085	.word	0xbd05e318,	0xfe7acbca
1086	.word	0xbf9be042,	0x2fcd6000
1087	.word	0xbd01ec42,	0x87f2c9ca
1088	.word	0xbf9b5cc2,	0x58b71000
1089	.word	0xbd01cc23,	0x715f7fd0
1090	.word	0xbf9ad953,	0x627b6000
1091	.word	0xbd0ab5a1,	0x1a805efd
1092	.word	0xbf9a55f5,	0x48c5c000
1093	.word	0xbcf0fc7b,	0x0697e1b5
1094	.word	0xbf99d2a8,	0x07432000
1095	.word	0xbcf7cf80,	0x538b441e
1096	.word	0xbf994f6b,	0x99a24000
1097	.word	0xbcf1d5ef,	0x96cf7f51
1098	.word	0xbf98cc3f,	0xfb937000
1099	.word	0xbd050394,	0x323f2c7a
1100	.word	0xbf984925,	0x28c8c000
1101	.word	0xbd057d17,	0x3697cf30
1102	.word	0xbf97c61b,	0x1cf5d000
1103	.word	0xbd0dc0dc,	0x1ed96ee4
1104	.word	0xbf974321,	0xd3d00000
1105	.word	0xbcfb4a69,	0x0fe94778
1106	.word	0xbf96c039,	0x490e3000
1107	.word	0xbcff7b34,	0x02fd59ca
1108	.word	0xbf963d61,	0x78690000
1109	.word	0xbd07abf3,	0x89596542
1110	.word	0xbf95ba9a,	0x5d9ac000
1111	.word	0xbcacbb84,	0xe08d78ac
1112	.word	0xbf9537e3,	0xf45f3000
1113	.word	0xbcf592ce,	0x96bf9299
1114	.word	0xbf94b53e,	0x3873e000
1115	.word	0xbd0b6ee9,	0xbca265c1
1116	.word	0xbf9432a9,	0x25980000
1117	.word	0xbd098139,	0x928637fe
1118	.word	0xbf93b024,	0xb78c5000
1119	.word	0xbcf9a5e2,	0x3a02f82a
1120	.word	0xbf932db0,	0xea132000
1121	.word	0xbd0c432c,	0x4c2257ef
1122	.word	0xbf92ab4d,	0xb8f09000
1123	.word	0xbcf82c84,	0xa532c74c
1124	.word	0xbf9228fb,	0x1fea2000
1125	.word	0xbd0c4f8c,	0xa12647f9
1126	.word	0xbf91a6b9,	0x1ac73000
1127	.word	0xbcec30e9,	0xb54e2dd6
1128	.word	0xbf912487,	0xa5507000
1129	.word	0xbd0edf2f,	0xf6a59c94
1130	.word	0xbf90a266,	0xbb508000
1131	.word	0xbcfa5be1,	0x7c2ec500
1132	.word	0xbf902056,	0x58935000
1133	.word	0xbd008e93,	0xe47420b7
1134	.word	0xbf8f3cac,	0xf1cd3000
1135	.word	0xbcf64d83,	0xc9a6875d
1136	.word	0xbf8e38ce,	0x30333000
1137	.word	0xbcc0bbae,	0x12ebf308
1138	.word	0xbf8d3510,	0x63fa4000
1139	.word	0xbcea8d92,	0xdf000beb
1140	.word	0xbf8c3173,	0x84c75000
1141	.word	0xbcfe0cc0,	0x31046026
1142	.word	0xbf8b2df7,	0x8a428000
1143	.word	0xbcf4c647,	0xa5d4542f
1144	.word	0xbf8a2a9c,	0x6c170000
1145	.word	0xbce18876,	0x525971be
1146	.word	0xbf892762,	0x21f33000
1147	.word	0xbcd456ba,	0x9344a27f
1148	.word	0xbf882448,	0xa388a000
1149	.word	0xbcd55104,	0xb16137f1
1150	.word	0xbf87214f,	0xe88c0000
1151	.word	0xbcf27275,	0xd7338080
1152	.word	0xbf861e77,	0xe8b53000
1153	.word	0xbcff8c11,	0x507150cb
1154	.word	0xbf851bc0,	0x9bbf4000
1155	.word	0xbcdae1ea,	0x5258a3c6
1156	.word	0xbf841929,	0xf9683000
1157	.word	0xbcd77c75,	0x5d013688
1158	.word	0xbf8316b3,	0xf9714000
1159	.word	0xbcfb8dcc,	0x8ba5563d
1160	.word	0xbf82145e,	0x939ef000
1161	.word	0xbcce891c,	0x6274ffda
1162	.word	0xbf811229,	0xbfb89000
1163	.word	0xbcf50ee4,	0x5fd053b1
1164	.word	0xbf801015,	0x7588d000
1165	.word	0xbcfce251,	0x998b505f
1166	.word	0xbf7e1c43,	0x59bad000
1167	.word	0xbce9f504,	0xadbb6021
1168	.word	0xbf7c189c,	0xbb0e2000
1169	.word	0xbcdfeabb,	0x69dea7ed
1170	.word	0xbf7a1536,	0xfeb35000
1171	.word	0xbcecb8e8,	0x91b69c25
1172	.word	0xbf781212,	0x14586000
1173	.word	0xbce6a81c,	0x14b9f937
1174	.word	0xbf760f2d,	0xebb16000
1175	.word	0xbcbb6835,	0x84891753
1176	.word	0xbf740c8a,	0x74787000
1177	.word	0xbce1c38e,	0xf838000c
1178	.word	0xbf720a27,	0x9e6e0000
1179	.word	0xbce34d96,	0x922727aa
1180	.word	0xbf700805,	0x59588000
1181	.word	0xbce66afc,	0xb31c67b2
1182	.word	0xbf6c0c47,	0x2a092000
1183	.word	0xbc657d36,	0x31cacba0
1184	.word	0xbf680904,	0x82898000
1185	.word	0xbcc701a5,	0xa9c30314
1186	.word	0xbf640642,	0x9be3c000
1187	.word	0xbcccf0de,	0xc26e96f3
1188	.word	0xbf600401,	0x55d58000
1189	.word	0xbcd13bce,	0x0ce3ddd8
1190	.word	0xbf580481,	0x20511000
1191	.word	0xbcc0a8ce,	0x7ceb0de6
1192	.word	0xbf500200,	0x55655000
1193	.word	0xbcc11266,	0xaf9afc3f
1194	.word	0xbf400100,	0x15575000
1195	.word	0xbca62237,	0x79c0dc11
1196	.word	0x00000000,	0x00000000
1197	.word	0x00000000,	0x00000000
1198	.word	0x3f4ffc00,	0xaa8ab000
1199	.word	0x3c80fbc0,	0x4d051925
1200	.word	0x3f5ff802,	0xa9ab1000
1201	.word	0x3c8ccf14,	0xf1d0a9f2
1202	.word	0x3f67f704,	0x7d798000
1203	.word	0x3cbed344,	0xeb43240a
1204	.word	0x3f6ff00a,	0xa2b10000
1205	.word	0x3cd78094,	0x10d6ad37
1206	.word	0x3f73f38a,	0x60f06000
1207	.word	0x3cd22569,	0x3c937494
1208	.word	0x3f77ee11,	0xebd82000
1209	.word	0x3ced274f,	0x0b48e81d
1210	.word	0x3f7be79c,	0x70058000
1211	.word	0x3ced91f3,	0x4d808088
1212	.word	0x3f7fe02a,	0x6b106000
1213	.word	0x3cde23f0,	0xdda40e47
1214	.word	0x3f81ebde,	0x2d199000
1215	.word	0x3cef97c0,	0x0b723c9a
1216	.word	0x3f83e729,	0x5d25a000
1217	.word	0x3cef63e0,	0x0d65eebc
1218	.word	0x3f85e1f7,	0x03ecb000
1219	.word	0x3cfca09f,	0x585da1b5
1220	.word	0x3f87dc47,	0x5f810000
1221	.word	0x3cf4edba,	0x4a25e0b1
1222	.word	0x3f89d61a,	0xadc6b000
1223	.word	0x3cfb1963,	0x27b4256d
1224	.word	0x3f8bcf71,	0x2c743000
1225	.word	0x3cf09782,	0x5ef65dc3
1226	.word	0x3f8dc84b,	0x19123000
1227	.word	0x3cf02950,	0x78e96cc1
1228	.word	0x3f8fc0a8,	0xb0fc0000
1229	.word	0x3cdf1e7c,	0xf6d3a69c
1230	.word	0x3f90dc45,	0x18afc000
1231	.word	0x3d090f43,	0x1ff3b010
1232	.word	0x3f91d7f7,	0xeb9ee000
1233	.word	0x3d07cd8a,	0xf80670b5
1234	.word	0x3f92d36c,	0xefb55000
1235	.word	0x3cff0bb3,	0x41706c38
1236	.word	0x3f93cea4,	0x4346a000
1237	.word	0x3cf5d3bc,	0xd295bf53
1238	.word	0x3f94c99e,	0x04901000
1239	.word	0x3d0bd98c,	0xbbebe949
1240	.word	0x3f95c45a,	0x51b8d000
1241	.word	0x3cec449d,	0xe927827c
1242	.word	0x3f96bed9,	0x48d1b000
1243	.word	0x3cff43be,	0x9f5bc086
1244	.word	0x3f97b91b,	0x07d5b000
1245	.word	0x3cd1aa92,	0x7f54c717
1246	.word	0x3f98b31f,	0xaca9b000
1247	.word	0x3c8c3ab4,	0x8db4decf
1248	.word	0x3f99ace7,	0x551cc000
1249	.word	0x3cf45134,	0x09c1df81
1250	.word	0x3f9aa672,	0x1ee83000
1251	.word	0x3cf6a75a,	0xe2d7a49d
1252	.word	0x3f9b9fc0,	0x27af9000
1253	.word	0x3cd97fbd,	0x465b7589
1254	.word	0x3f9c98d1,	0x8d00c000
1255	.word	0x3d0027ab,	0xe9d883c3
1256	.word	0x3f9d91a6,	0x6c543000
1257	.word	0x3d0987c5,	0x9633ee68
1258	.word	0x3f9e8a3e,	0xe30cd000
1259	.word	0x3d095817,	0x086b1c01
1260	.word	0x3f9f829b,	0x0e783000
1261	.word	0x3ce80267,	0xc7e09e3e
1262	.word	0x3fa03d5d,	0x85e73000
1263	.word	0x3d1dde25,	0x83b4a73b
1264	.word	0x3fa0b94f,	0x7c196000
1265	.word	0x3ce76769,	0x0fdd87d3
1266	.word	0x3fa13523,	0x78597000
1267	.word	0x3cef29e2,	0x4702d328
1268	.word	0x3fa1b0d9,	0x8923d000
1269	.word	0x3d12ff85,	0x945dd915
1270	.word	0x3fa22c71,	0xbcea8000
1271	.word	0x3cfd2818,	0xf87f888f
1272	.word	0x3fa2a7ec,	0x2214e000
1273	.word	0x3d10e631,	0x0add3804
1274	.word	0x3fa32348,	0xc7001000
1275	.word	0x3d0a5b6e,	0x42c7927d
1276	.word	0x3fa39e87,	0xb9feb000
1277	.word	0x3d1abf52,	0x02b64055
1278	.word	0x3fa419a9,	0x09593000
1279	.word	0x3d0ae6e3,	0x3ea4753a
1280	.word	0x3fa494ac,	0xc34d9000
1281	.word	0x3ce1c78a,	0x56fd2473
1282	.word	0x3fa50f92,	0xf60f9000
1283	.word	0x3d12d9f6,	0x1523ffc6
1284	.word	0x3fa58a5b,	0xafc8e000
1285	.word	0x3d035231,	0xaa3d4b1d
1286	.word	0x3fa60506,	0xfe98d000
1287	.word	0x3d1516fd,	0xf9ac7f28
1288	.word	0x3fa67f94,	0xf094b000
1289	.word	0x3d1b307c,	0xf9f93b5b
1290	.word	0x3fa6fa05,	0x93c7b000
1291	.word	0x3d0a0af2,	0x0eb1a504
1292	.word	0x3fa77458,	0xf632d000
1293	.word	0x3d19f88c,	0x69e543dd
1294	.word	0x3fa7ee8f,	0x25cd4000
1295	.word	0x3ce7bd3d,	0xcb47c2e4
1296	.word	0x3fa868a8,	0x3083f000
1297	.word	0x3d0b3b8b,	0xd96a72db
1298	.word	0x3fa8e2a4,	0x243a1000
1299	.word	0x3d173dd6,	0x0284c920
1300	.word	0x3fa95c83,	0x0ec8e000
1301	.word	0x3cff5beb,	0x41d00a41
1302	.word	0x3fa9d644,	0xfdffa000
1303	.word	0x3cf3c905,	0x39a473b6
1304	.word	0x3faa4fe9,	0xffa3d000
1305	.word	0x3cf1a7b5,	0xfbfd6db2
1306	.word	0x3faac972,	0x21711000
1307	.word	0x3d1f1a7d,	0xe0264459
1308	.word	0x3fab42dd,	0x71197000
1309	.word	0x3cebec28,	0xd14c7d9f
1310	.word	0x3fabbc2b,	0xfc44f000
1311	.word	0x3d005cf2,	0xdd7d04a2
1312	.word	0x3fac355d,	0xd0921000
1313	.word	0x3d1e5999,	0x357f0710
1314	.word	0x3facae72,	0xfb95c000
1315	.word	0x3cf0540d,	0xfda4e418
1316	.word	0x3fad276b,	0x8adb0000
1317	.word	0x3d16a423,	0xc78a64b0
1318	.word	0x3fada047,	0x8be39000
1319	.word	0x3cf2963d,	0x8fb7f02b
1320	.word	0x3fae1907,	0x0c276000
1321	.word	0x3ca5b99b,	0x9d617a09
1322	.word	0x3fae91aa,	0x1914f000
1323	.word	0x3d10beaf,	0xf119cac5
1324	.word	0x3faf0a30,	0xc0116000
1325	.word	0x3cf5330b,	0xe64b8b77
1326	.word	0x3faf829b,	0x0e783000
1327	.word	0x3cf80267,	0xc7e09e3e
1328	.word	0x3faffae9,	0x119b9000
1329	.word	0x3cf819ba,	0x13162a9c
1330	.word	0x3fb0398d,	0x6b622000
1331	.word	0x3d153ac8,	0x0d00cc01
1332	.word	0x3fb07598,	0x3598e000
1333	.word	0x3d11c4c0,	0x6d2999e2
1334	.word	0x3fb0b194,	0xee0d1000
1335	.word	0x3d199ba9,	0x3da7b72e
1336	.word	0x3fb0ed83,	0x9b552000
1337	.word	0x3d1bf82e,	0x4add5131
1338	.word	0x3fb12964,	0x4402e000
1339	.word	0x3d056224,	0x572ac464
1340	.word	0x3fb16536,	0xeea37000
1341	.word	0x3d25c1d0,	0xc4b82e7c
1342	.word	0x3fb1a0fb,	0xa1bf8000
1343	.word	0x3d24a3fc,	0xc319d6dc
1344	.word	0x3fb1dcb2,	0x63db1000
1345	.word	0x3d22889e,	0xbd3d1303
1346	.word	0x3fb2185b,	0x3b75a000
1347	.word	0x3cfce760,	0x70cdcfc5
1348	.word	0x3fb253f6,	0x2f0a1000
1349	.word	0x3d105be3,	0xeda69c04
1350	.word	0x3fb28f83,	0x450ed000
1351	.word	0x3d251aeb,	0x54232ed1
1352	.word	0x3fb2cb02,	0x83f5d000
1353	.word	0x3d2c3dc5,	0x94cae043
1354	.word	0x3fb30673,	0xf22c8000
1355	.word	0x3d24c9e2,	0x9dcf0ba5
1356	.word	0x3fb341d7,	0x961bd000
1357	.word	0x3cfd0929,	0x98376105
1358	.word	0x3fb37d2d,	0x76283000
1359	.word	0x3cfcfaab,	0x2400751e
1360	.word	0x3fb3b875,	0x98b1b000
1361	.word	0x3d1bb7d4,	0xd6a6b9db
1362	.word	0x3fb3f3b0,	0x04140000
1363	.word	0x3cee2474,	0xacdfcec5
1364	.word	0x3fb42edc,	0xbea64000
1365	.word	0x3d1bc0ee,	0xea7c9acd
1366	.word	0x3fb469fb,	0xcebb5000
1367	.word	0x3d26cc78,	0x9e4ae327
1368	.word	0x3fb4a50d,	0x3aa1b000
1369	.word	0x3cd003d9,	0xeed183bb
1370	.word	0x3fb4e011,	0x08a35000
1371	.word	0x3d25cb9f,	0xbe58b5c9
1372	.word	0x3fb51b07,	0x3f061000
1373	.word	0x3d207ed2,	0x4f1cd0d4
1374	.word	0x3fb555ef,	0xe40b5000
1375	.word	0x3ce692f1,	0x90d1c46b
1376	.word	0x3fb590ca,	0xfdf01000
1377	.word	0x3d28509e,	0xae455754
1378	.word	0x3fb5cb98,	0x92ed4000
1379	.word	0x3d17be44,	0xa64fc52f
1380	.word	0x3fb60658,	0xa9375000
1381	.word	0x3ce8763b,	0xdd389ef2
1382	.word	0x3fb6410b,	0x46fe7000
1383	.word	0x3d256038,	0x61a13976
1384	.word	0x3fb67bb0,	0x726ec000
1385	.word	0x3cef724b,	0x69ef5912
1386	.word	0x3fb6b648,	0x31afe000
1387	.word	0x3d1033d7,	0xb22085b8
1388	.word	0x3fb6f0d2,	0x8ae56000
1389	.word	0x3d269737,	0xc93373da
1390	.word	0x3fb72b4f,	0x842ea000
1391	.word	0x3d21f666,	0x7fe6c45a
1392	.word	0x3fb765bf,	0x23a6b000
1393	.word	0x3d2c2687,	0xf9477b53
1394	.word	0x3fb7a021,	0x6f649000
1395	.word	0x3d2c2499,	0x430831ff
1396	.word	0x3fb7da76,	0x6d7b1000
1397	.word	0x3d066422,	0x240644d8
1398	.word	0x3fb814be,	0x23f8c000
1399	.word	0x3ccb2381,	0xda82fdfd
1400	.word	0x3fb84ef8,	0x98e82000
1401	.word	0x3d205465,	0xb72d106e
1402	.word	0x3fb88925,	0xd24fa000
1403	.word	0x3d2c55f5,	0x76088ff3
1404	.word	0x3fb8c345,	0xd6319000
1405	.word	0x3d2641eb,	0x596854cc
1406	.word	0x3fb8fd58,	0xaa8c2000
1407	.word	0x3cf136fe,	0x4348da4e
1408	.word	0x3fb9375e,	0x55595000
1409	.word	0x3d2dbb86,	0xe70186c9
1410	.word	0x3fb97156,	0xdc8f6000
1411	.word	0x3d0f01f3,	0x28123425
1412	.word	0x3fb9ab42,	0x46203000
1413	.word	0x3d0d66df,	0x661e3e7b
1414	.word	0x3fb9e520,	0x97f9c000
1415	.word	0x3d235fac,	0xb52dd050
1416	.word	0x3fba1ef1,	0xd8061000
1417	.word	0x3d29a82e,	0xdbf2f796
1418	.word	0x3fba58b6,	0x0c2b2000
1419	.word	0x3d091c65,	0x1d1b06b1
1420	.word	0x3fba926d,	0x3a4ad000
1421	.word	0x3d158d94,	0x2f48aa71
1422	.word	0x3fbacc17,	0x68433000
1423	.word	0x3d0561f1,	0x7d2016d1
1424	.word	0x3fbb05b4,	0x9bee4000
1425	.word	0x3d0ff22c,	0x18f84a5e
1426	.word	0x3fbb3f44,	0xdb221000
1427	.word	0x3d2fa2a7,	0xb1bc135d
1428	.word	0x3fbb78c8,	0x2bb0e000
1429	.word	0x3d2b4210,	0x878cf032
1430	.word	0x3fbbb23e,	0x9368e000
1431	.word	0x3d22e9cf,	0x954c48ea
1432	.word	0x3fbbeba8,	0x18146000
1433	.word	0x3d1d921d,	0x248382a6
1434	.word	0x3fbc2504,	0xbf79d000
1435	.word	0x3d1c5f13,	0x43bd2b70
1436	.word	0x3fbc5e54,	0x8f5bc000
1437	.word	0x3d1d0c57,	0x585fbe06
1438	.word	0x3fbc9797,	0x8d78e000
1439	.word	0x3d223fde,	0xd105cef9
1440	.word	0x3fbcd0cd,	0xbf8c1000
1441	.word	0x3d0f0a6d,	0xa86eba18
1442	.word	0x3fbd09f7,	0x2b4c4000
1443	.word	0x3d2048c0,	0x00354e33
1444	.word	0x3fbd4313,	0xd66cb000
1445	.word	0x3d0aeaf2,	0x1bb2a3b2
1446	.word	0x3fbd7c23,	0xc69cb000
1447	.word	0x3d0a046c,	0x8b35e23e
1448	.word	0x3fbdb527,	0x0187d000
1449	.word	0x3d224ef0,	0xad5c303f
1450	.word	0x3fbdee1d,	0x8cd5e000
1451	.word	0x3d2ae4bf,	0x1ac200ee
1452	.word	0x3fbe2707,	0x6e2af000
1453	.word	0x3d072f4f,	0x543fff10
1454	.word	0x3fbe5fe4,	0xab272000
1455	.word	0x3d240a2c,	0x11600366
1456	.word	0x3fbe98b5,	0x49671000
1457	.word	0x3d119dd2,	0x27143a5b
1458	.word	0x3fbed179,	0x4e837000
1459	.word	0x3d20175e,	0x45b17dbe
1460	.word	0x3fbf0a30,	0xc0116000
1461	.word	0x3d05330b,	0xe64b8b77
1462	.word	0x3fbf42db,	0xa3a22000
1463	.word	0x3d29da91,	0x9a4127e6
1464	.word	0x3fbf7b79,	0xfec37000
1465	.word	0x3d2bbd9e,	0x05da04c0
1466	.word	0x3fbfb40b,	0xd6ff4000
1467	.word	0x3d2c0bec,	0xb7b53b5b
1468	.word	0x3fbfec91,	0x31dbe000
1469	.word	0x3d257554,	0x5ca333f2
1470	.word	0x3fc01285,	0x0a6df000
1471	.word	0x3d395e79,	0xadfe901b
1472	.word	0x3fc02ebb,	0x42bf3000
1473	.word	0x3d3a95c1,	0x68c7fc69
1474	.word	0x3fc04aeb,	0x449f6000
1475	.word	0x3d2afa90,	0x65ccd35c
1476	.word	0x3fc06715,	0x12ca5000
1477	.word	0x3d32dc54,	0x3191fae2
1478	.word	0x3fc08338,	0xaffa2000
1479	.word	0x3d30533c,	0xac823e27
1480	.word	0x3fc09f56,	0x1ee71000
1481	.word	0x3d33867d,	0x4754172c
1482	.word	0x3fc0bb6d,	0x6247a000
1483	.word	0x3d35464f,	0x3ccd04b3
1484	.word	0x3fc0d77e,	0x7cd08000
1485	.word	0x3d3cb2cd,	0x2ee2f482
1486	.word	0x3fc0f389,	0x7134b000
1487	.word	0x3d02e530,	0xbb6149cf
1488	.word	0x3fc10f8e,	0x42253000
1489	.word	0x3d336263,	0xde634e7c
1490	.word	0x3fc12b8c,	0xf2518000
1491	.word	0x3d348a4a,	0x13c0a0fc
1492	.word	0x3fc14785,	0x84674000
1493	.word	0x3d156345,	0x1027c750
1494	.word	0x3fc16377,	0xfb124000
1495	.word	0x3d091e1a,	0xbf41763e
1496	.word	0x3fc17f64,	0x58fca000
1497	.word	0x3d2843fa,	0xd093c8dc
1498	.word	0x3fc19b4a,	0xa0ced000
1499	.word	0x3d03bedb,	0x4ef663a7
1500	.word	0x3fc1b72a,	0xd52f6000
1501	.word	0x3d2e80a4,	0x1811a396
1502	.word	0x3fc1d304,	0xf8c35000
1503	.word	0x3d164aec,	0x82ebbef7
1504	.word	0x3fc1eed9,	0x0e2dc000
1505	.word	0x3d161563,	0x7097648f
1506	.word	0x3fc20aa7,	0x18102000
1507	.word	0x3d3f2c94,	0x348552fe
1508	.word	0x3fc2266f,	0x190a5000
1509	.word	0x3d3596fa,	0xa3df8c05
1510	.word	0x3fc24231,	0x13ba5000
1511	.word	0x3cfc5ff8,	0x71162641
1512	.word	0x3fc25ded,	0x0abc6000
1513	.word	0x3d35a385,	0x4f176449
1514	.word	0x3fc279a3,	0x00ab4000
1515	.word	0x3d3ef432,	0xb3235108
1516	.word	0x3fc29552,	0xf81ff000
1517	.word	0x3d248d30,	0x1771c408
1518	.word	0x3fc2b0fc,	0xf3b1a000
1519	.word	0x3d177ca3,	0xe30a59ea
1520	.word	0x3fc2cca0,	0xf5f5f000
1521	.word	0x3d128439,	0xb9403b82
1522	.word	0x3fc2e83f,	0x0180d000
1523	.word	0x3cee7aa7,	0xaf63c632
1524	.word	0x3fc303d7,	0x18e47000
1525	.word	0x3d3fa5fd,	0x28c704d4
1526	.word	0x3fc31f69,	0x3eb19000
1527	.word	0x3d32cc6c,	0x8d2e3482
1528	.word	0x3fc33af5,	0x75770000
1529	.word	0x3d3c9ecc,	0xa2fe72a5
1530	.word	0x3fc3567b,	0xbfc22000
1531	.word	0x3d3250d2,	0x53991a1f
1532	.word	0x3fc371fc,	0x201e8000
1533	.word	0x3d3ee877,	0x9b2d8abc
1534	.word	0x3fc38d76,	0x99164000
1535	.word	0x3d1844a5,	0x9e39bb70
1536	.word	0x3fc3a8eb,	0x2d31a000
1537	.word	0x3d1bafb7,	0x7d5d503e
1538	.word	0x3fc3c459,	0xdef76000
1539	.word	0x3d3edc86,	0xf6b70d33
1540	.word	0x3fc3dfc2,	0xb0ecc000
1541	.word	0x3d28a72a,	0x62b8c13f
1542	.word	0x3fc3fb25,	0xa5952000
1543	.word	0x3d3195be,	0x6b358ff7
1544	.word	0x3fc41682,	0xbf727000
1545	.word	0x3d377fdc,	0x7bf03db2
1546	.word	0x3fc431da,	0x01050000
1547	.word	0x3d304837,	0x836e0391
1548	.word	0x3fc44d2b,	0x6ccb7000
1549	.word	0x3d3a3ccf,	0xa7b2a1f1
1550	.word	0x3fc46877,	0x0542f000
1551	.word	0x3d03f5d0,	0x3957bc10
1552	.word	0x3fc483bc,	0xcce6e000
1553	.word	0x3d1eea52,	0x723f6369
1554	.word	0x3fc49efc,	0xc6313000
1555	.word	0x3d3cde14,	0xcc15551b
1556	.word	0x3fc4ba36,	0xf39a5000
1557	.word	0x3d279568,	0x981bcc36
1558	.word	0x3fc4d56b,	0x5798e000
1559	.word	0x3d380580,	0x15a96555
1560	.word	0x3fc4f099,	0xf4a23000
1561	.word	0x3cf640d0,	0x50150d92
1562	.word	0x3fc50bc2,	0xcd29c000
1563	.word	0x3d1ada57,	0x28db8d4f
1564	.word	0x3fc526e5,	0xe3a1b000
1565	.word	0x3d20de8b,	0x90075b8f
1566	.word	0x3fc54203,	0x3a7a8000
1567	.word	0x3d268d68,	0xed855f0e
1568	.word	0x3fc55d1a,	0xd4232000
1569	.word	0x3d3add94,	0xdda647e8
1570	.word	0x3fc5782c,	0xb3091000
1571	.word	0x3d28b739,	0x5d0d777d
1572	.word	0x3fc59338,	0xd9982000
1573	.word	0x3cf0ba68,	0xb7555d4a
1574	.word	0x3fc5ae3f,	0x4a3aa000
1575	.word	0x3d21ea25,	0xf012a8b9
1576	.word	0x3fc5c940,	0x07597000
1577	.word	0x3d15c9ad,	0xccb7337a
1578	.word	0x3fc5e43b,	0x135bd000
1579	.word	0x3d278a96,	0x6224c79e
1580	.word	0x3fc5ff30,	0x70a79000
1581	.word	0x3d1e9e43,	0x9f105039
1582	.word	0x3fc61a20,	0x21a0e000
1583	.word	0x3d3dd9dd,	0x1bdf3cdd
1584	.word	0x3fc6350a,	0x28aaa000
1585	.word	0x3d2d5ec0,	0xab8163af
1586	.word	0x3fc64fee,	0x8825f000
1587	.word	0x3d3896fc,	0xa298884b
1588	.word	0x3fc66acd,	0x4272a000
1589	.word	0x3d3aa1bd,	0xbfc6c785
1590	.word	0x3fc685a6,	0x59eef000
1591	.word	0x3d3706ab,	0x49f7e6f6
1592	.word	0x3fc6a079,	0xd0f7a000
1593	.word	0x3d35a3f8,	0x448d14f5
1594	.word	0x3fc6bb47,	0xa9e80000
1595	.word	0x3d19f64d,	0x23ea3296
1596	.word	0x3fc6d60f,	0xe719d000
1597	.word	0x3d10e46a,	0xa3b2e266
1598	.word	0x3fc6f0d2,	0x8ae56000
1599	.word	0x3d369737,	0xc93373da
1600	.word	0x3fc70b8f,	0x97a1a000
1601	.word	0x3d34ea64,	0xf6a95bef
1602	.word	0x3fc72647,	0x0fa3f000
1603	.word	0x3d211641,	0xe3178b76
1604	.word	0x3fc740f8,	0xf5403000
1605	.word	0x3d2e9326,	0xcdfceabe
1606	.word	0x3fc75ba5,	0x4ac8e000
1607	.word	0x3d3ddca5,	0x8bc4a7c0
1608	.word	0x3fc7764c,	0x128f2000
1609	.word	0x3d027490,	0x3479e3d1
1610	.word	0x3fc790ed,	0x4ee26000
1611	.word	0x3d199bbd,	0x4e7746f6
1612	.word	0x3fc7ab89,	0x0210d000
1613	.word	0x3d321237,	0xc6d65ad4
1614	.word	0x3fc7c61f,	0x2e673000
1615	.word	0x3d2b8da4,	0x99c82e40
1616	.word	0x3fc7e0af,	0xd630c000
1617	.word	0x3d139e7c,	0x1d8f1034
1618	.word	0x3fc7fb3a,	0xfbb75000
1619	.word	0x3d204815,	0xb73ec551
1620	.word	0x3fc815c0,	0xa1435000
1621	.word	0x3d2fab5a,	0x0dbfc630
1622	.word	0x3fc83040,	0xc91bc000
1623	.word	0x3d3e5b71,	0xc6e66f32
1624	.word	0x3fc84abb,	0x75865000
1625	.word	0x3d0392a9,	0x058ea173
1626	.word	0x3fc86530,	0xa8c70000
1627	.word	0x3d398bb0,	0xcb4ea3e3
1628	.word	0x3fc87fa0,	0x6520c000
1629	.word	0x3d322120,	0x401202fc
1630	.word	0x3fc89a0a,	0xacd4e000
1631	.word	0x3d2c0bfb,	0xda8f5a72
1632	.word	0x3fc8b46f,	0x82236000
1633	.word	0x3d12d9f2,	0x102dd7c9
1634	.word	0x3fc8cece,	0xe74ad000
1635	.word	0x3d16917d,	0x56f5912d
1636	.word	0x3fc8e928,	0xde886000
1637	.word	0x3d3a8154,	0xb13d72d5
1638	.word	0x3fc9037d,	0x6a180000
1639	.word	0x3d230dea,	0x57c1c8d9
1640	.word	0x3fc91dcc,	0x8c340000
1641	.word	0x3d37bc6a,	0xbddeff46
1642	.word	0x3fc93816,	0x47159000
1643	.word	0x3d267385,	0x2b8b8c4f
1644	.word	0x3fc9525a,	0x9cf45000
1645	.word	0x3d2ad1d9,	0x04c1d4e3
1646	.word	0x3fc96c99,	0x9006a000
1647	.word	0x3d2a88d5,	0x9cbb452c
1648	.word	0x3fc986d3,	0x22818000
1649	.word	0x3cf93b56,	0x4dd44000
1650	.word	0x3fc9a107,	0x56988000
1651	.word	0x3d264aa6,	0x242cd098
1652	.word	0x3fc9bb36,	0x2e7df000
1653	.word	0x3d3706ab,	0xaf18f802
1654	.word	0x3fc9d55f,	0xac62d000
1655	.word	0x3ce732c0,	0x789487af
1656	.word	0x3fc9ef83,	0xd2769000
1657	.word	0x3d3467a4,	0x26031900
1658	.word	0x3fca09a2,	0xa2e79000
1659	.word	0x3d311331,	0x195f76e6
1660	.word	0x3fca23bc,	0x1fe2b000
1661	.word	0x3d258c64,	0xdc46c1ea
1662	.word	0x3fca3dd0,	0x4b938000
1663	.word	0x3d297da1,	0x366e2c5a
1664	.word	0x3fca57df,	0x28244000
1665	.word	0x3d3b99c8,	0xca1d9abb
1666	.word	0x3fca71e8,	0xb7bdf000
1667	.word	0x3d377a9a,	0xc887d66f
1668	.word	0x3fca8bec,	0xfc882000
1669	.word	0x3d3e3185,	0xcf21b9cf
1670	.word	0x3fcaa5eb,	0xf8a93000
1671	.word	0x3d2abead,	0x92d5cae2
1672	.word	0x3fcabfe5,	0xae461000
1673	.word	0x3d125c2b,	0x1a83b18e
1674	.word	0x3fcad9da,	0x1f827000
1675	.word	0x3d1df520,	0xdff03ebe
1676	.word	0x3fcaf3c9,	0x4e80b000
1677	.word	0x3d3fe5b1,	0x9cc03270
1678	.word	0x3fcb0db3,	0x3d620000
1679	.word	0x3d3fee14,	0x38eab906
1680	.word	0x3fcb2797,	0xee463000
1681	.word	0x3d105dd5,	0xbe4bfd5c
1682	.word	0x3fcb4177,	0x634ba000
1683	.word	0x3d355d01,	0x5666069f
1684	.word	0x3fcb5b51,	0x9e8fb000
1685	.word	0x3d2691ba,	0x27fdc19e
1686	.word	0x3fcb7526,	0xa22e4000
1687	.word	0x3d2c0dbf,	0x2e785490
1688	.word	0x3fcb8ef6,	0x70420000
1689	.word	0x3d387533,	0x321788e0
1690	.word	0x3fcba8c1,	0x0ae46000
1691	.word	0x3d3a32e2,	0x9eee9d85
1692	.word	0x3fcbc286,	0x742d8000
1693	.word	0x3d39ac53,	0xf39d121c
1694	.word	0x3fcbdc46,	0xae344000
1695	.word	0x3d3625b4,	0x023d6505
1696	.word	0x3fcbf601,	0xbb0e4000
1697	.word	0x3d2386a9,	0x47c378b5
1698	.word	0x3fcc0fb7,	0x9ccfd000
1699	.word	0x3d272000,	0xcc2eb551
1700	.word	0x3fcc2968,	0x558c1000
1701	.word	0x3d318146,	0x108e3ae0
1702	.word	0x3fcc4313,	0xe754e000
1703	.word	0x3d3279be,	0x74cad7d6
1704	.word	0x3fcc5cba,	0x543ae000
1705	.word	0x3d20929d,	0xecb454fc
1706	.word	0x3fcc765b,	0x9e4d6000
1707	.word	0x3d31ab6b,	0x36976f6c
1708	.word	0x3fcc8ff7,	0xc79a9000
1709	.word	0x3d344358,	0x4bb03de6
1710	.word	0x3fcca98e,	0xd22f5000
1711	.word	0x3d3e9673,	0xe735df63
1712	.word	0x3fccc320,	0xc0176000
1713	.word	0x3d240903,	0x9a653794
1714	.word	0x3fccdcad,	0x935d1000
1715	.word	0x3d3cbe01,	0xf966cb77
1716	.word	0x3fccf635,	0x4e09c000
1717	.word	0x3d277123,	0x9a07d55b
1718	.word	0x3fcd0fb7,	0xf2255000
1719	.word	0x3d3ca15a,	0x9bf3989b
1720	.word	0x3fcd2935,	0x81b6b000
1721	.word	0x3d1f363f,	0xb5d55685
1722	.word	0x3fcd42ad,	0xfec35000
1723	.word	0x3d3a28ff,	0xc09fef63
1724	.word	0x3fcd5c21,	0x6b4fb000
1725	.word	0x3d3722b7,	0x221acbf2
1726	.word	0x3fcd758f,	0xc95ef000
1727	.word	0x3d3a97bd,	0x5d2fa755
1728	.word	0x3fcd8ef9,	0x1af31000
1729	.word	0x3d3abbe8,	0x0f26ce1f
1730	.word	0x3fcda85d,	0x620ce000
1731	.word	0x3d240194,	0xc16cc7ec
1732	.word	0x3fcdc1bc,	0xa0abe000
1733	.word	0x3d38fac1,	0xa628ccc6
1734	.word	0x3fcddb16,	0xd8ce9000
1735	.word	0x3d384421,	0xa3bed1d1
1736	.word	0x3fcdf46c,	0x0c722000
1737	.word	0x3d3a5e82,	0xb0b79039
1738	.word	0x3fce0dbc,	0x3d92a000
1739	.word	0x3d359233,	0xf0529bf1
1740	.word	0x3fce2707,	0x6e2af000
1741	.word	0x3d172f4f,	0x543fff10
1742	.word	0x3fce404d,	0xa034b000
1743	.word	0x3d2cf022,	0x3ecbb0ce
1744	.word	0x3fce598e,	0xd5a87000
1745	.word	0x3d3c5d96,	0x861c2cec
1746	.word	0x3fce72cb,	0x107da000
1747	.word	0x3d1dd48c,	0xcdf5471c
1748	.word	0x3fce8c02,	0x52aa5000
1749	.word	0x3d34bfd2,	0x3f8b8c80
1750	.word	0x3fcea534,	0x9e23a000
1751	.word	0x3d381b93,	0x4c73ccb5
1752	.word	0x3fcebe61,	0xf4dd7000
1753	.word	0x3d3615d6,	0x67811ada
1754	.word	0x3fced78a,	0x58ca8000
1755	.word	0x3d16f1b5,	0x3793387e
1756	.word	0x3fcef0ad,	0xcbdc5000
1757	.word	0x3d326ca4,	0x31bca86e
1758	.word	0x3fcf09cc,	0x50036000
1759	.word	0x3d3da094,	0x18d999db
1760	.word	0x3fcf22e5,	0xe72f1000
1761	.word	0x3ce7561d,	0x7d037c19
1762	.word	0x3fcf3bfa,	0x934d6000
1763	.word	0x3d2d9f2a,	0x937b903b
1764	.word	0x3fcf550a,	0x564b7000
1765	.word	0x3d366e0e,	0x2fb6fe81
1766	.word	0x3fcf6e15,	0x32153000
1767	.word	0x3d0b2b44,	0x29d89c5c
1768	.word	0x3fcf871b,	0x28955000
1769	.word	0x3ce14052,	0xb5b2204b
1770	.word	0x3fcfa01c,	0x3bb57000
1771	.word	0x3d397823,	0x81478a1f
1772	.word	0x3fcfb918,	0x6d5e3000
1773	.word	0x3d3c551a,	0xaa8cd86f
1774	.word	0x3fcfd20f,	0xbf76f000
1775	.word	0x3d3b8ea9,	0x234e4064
1776	.word	0x3fcfeb02,	0x33e60000
1777	.word	0x3d2f316e,	0x32d5e8c7
1778	.word	0x3fd001f7,	0xe6484000
1779	.word	0x3d38a957,	0x40c9abbc
1780	.word	0x3fd00e6c,	0x45ad5000
1781	.word	0x3cdcc68d,	0x52e01203
1782	.word	0x3fd01ade,	0x39139000
1783	.word	0x3d4deed9,	0xe6647d5c
1784	.word	0x3fd0274d,	0xc16c2000
1785	.word	0x3d2979e8,	0x9cf835c2
1786	.word	0x3fd033ba,	0xdfa74000
1787	.word	0x3d0c30bc,	0x1485bdff
1788	.word	0x3fd04025,	0x94b4d000
1789	.word	0x3cf036b8,	0x9ef42d7f
1790	.word	0x3fd04c8d,	0xe1841000
1791	.word	0x3d4c0328,	0xb5da628f
1792	.word	0x3fd058f3,	0xc703e000
1793	.word	0x3d478bcc,	0xa196e4a9
1794	.word	0x3fd06557,	0x46227000
1795	.word	0x3d0131df,	0xb4868d6a
1796	.word	0x3fd071b8,	0x5fcd5000
1797	.word	0x3d421a3a,	0x2e0ff2f8
1798	.word	0x3fd07e17,	0x14f1c000
1799	.word	0x3d40819c,	0xd863da16
1800	.word	0x3fd08a73,	0x667c5000
1801	.word	0x3d3ebc1d,	0x40c5a329
1802	.word	0x3fd096cd,	0x55591000
1803	.word	0x3d3f998d,	0x20550a31
1804	.word	0x3fd0a324,	0xe2739000
1805	.word	0x3d0c6bee,	0x7ef4030e
1806	.word	0x3fd0af7a,	0x0eb6c000
1807	.word	0x3d23ccf9,	0x4945adad
1808	.word	0x3fd0bbcc,	0xdb0d2000
1809	.word	0x3d32f32c,	0xcc5dcdfb
1810	.word	0x3fd0c81d,	0x4860a000
1811	.word	0x3d40d218,	0x5ff17467
1812	.word	0x3fd0d46b,	0x579ab000
1813	.word	0x3d3d2c81,	0xf640e1e6
1814	.word	0x3fd0e0b7,	0x09a43000
1815	.word	0x3d32a038,	0xa7862f2a
1816	.word	0x3fd0ed00,	0x5f657000
1817	.word	0x3d4b48e2,	0xb5e955ff
1818	.word	0x3fd0f947,	0x59c66000
1819	.word	0x3d4356cf,	0x407bf3a5
1820	.word	0x3fd1058b,	0xf9ae4000
1821	.word	0x3d45aa31,	0x3f415699
1822	.word	0x3fd111ce,	0x4003e000
1823	.word	0x3d4c99b9,	0x1ed29693
1824	.word	0x3fd11e0e,	0x2dad9000
1825	.word	0x3d496e01,	0xdc0cc691
1826	.word	0x3fd12a4b,	0xc3911000
1827	.word	0x3d452c57,	0xcf5c66d4
1828	.word	0x3fd13687,	0x0293a000
1829	.word	0x3d4160bd,	0xb314c76f
1830	.word	0x3fd142bf,	0xeb9a0000
1831	.word	0x3d31ce61,	0x85b58a9e
1832	.word	0x3fd14ef6,	0x7f886000
1833	.word	0x3d40b42c,	0xd101b436
1834	.word	0x3fd15b2a,	0xbf428000
1835	.word	0x3d489c71,	0x2d927594
1836	.word	0x3fd1675c,	0xababa000
1837	.word	0x3d38380e,	0x731f55c4
1838	.word	0x3fd1738c,	0x45a66000
1839	.word	0x3d431c8b,	0x7fe69f45
1840	.word	0x3fd17fb9,	0x8e150000
1841	.word	0x3d42baba,	0x2c5aecbe
1842	.word	0x3fd18be4,	0x85d93000
1843	.word	0x3d3c167f,	0x6f3604ab
1844	.word	0x3fd1980d,	0x2dd42000
1845	.word	0x3d2b7b3a,	0x7a361c9a
1846	.word	0x3fd1a433,	0x86e67000
1847	.word	0x3d4e857a,	0xf9cb1f55
1848	.word	0x3fd1b057,	0x91f07000
1849	.word	0x3d46915c,	0xc91d50e9
1850	.word	0x3fd1bc79,	0x4fd1c000
1851	.word	0x3d419879,	0xc5c22c21
1852	.word	0x3fd1c898,	0xc1699000
1853	.word	0x3d43f5f7,	0x8d1cea80
1854	.word	0x3fd1d4b5,	0xe796a000
1855	.word	0x3d222a5b,	0xd197bac2
1856	.word	0x3fd1e0d0,	0xc3371000
1857	.word	0x3d3af8f2,	0xa9b0d4a0
1858	.word	0x3fd1ece9,	0x5528a000
1859	.word	0x3d4cf630,	0x9ec96b89
1860	.word	0x3fd1f8ff,	0x9e48a000
1861	.word	0x3d27946c,	0x040cbe77
1862	.word	0x3fd20513,	0x9f73b000
1863	.word	0x3cf6e15e,	0x1609e0a4
1864	.word	0x3fd21125,	0x59861000
1865	.word	0x3d382e78,	0xba2950c4
1866	.word	0x3fd21d34,	0xcd5b9000
1867	.word	0x3d3b552f,	0xb28badaa
1868	.word	0x3fd22941,	0xfbcf7000
1869	.word	0x3d42cb44,	0x850a7b4f
1870	.word	0x3fd2354c,	0xe5bc8000
1871	.word	0x3d414389,	0x7cfeacce
1872	.word	0x3fd24155,	0x8bfd1000
1873	.word	0x3d300fff,	0x3228fcad
1874	.word	0x3fd24d5b,	0xef6ae000
1875	.word	0x3d4ff114,	0x3f81b02a
1876	.word	0x3fd25960,	0x10df7000
1877	.word	0x3d38e7bc,	0x224ea3e3
1878	.word	0x3fd26561,	0xf1338000
1879	.word	0x3d38b488,	0x66faa45f
1880	.word	0x3fd27161,	0x913f8000
1881	.word	0x3d34f4f1,	0xf61564b4
1882	.word	0x3fd27d5e,	0xf1db5000
1883	.word	0x3d4e6dc8,	0xb8735361
1884	.word	0x3fd2895a,	0x13de8000
1885	.word	0x3d3a8d7a,	0xd24c13f0
1886	.word	0x3fd29552,	0xf81ff000
1887	.word	0x3d348d30,	0x1771c408
1888	.word	0x3fd2a149,	0x9f762000
1889	.word	0x3d479220,	0x57062a92
1890	.word	0x3fd2ad3e,	0x0ab73000
1891	.word	0x3d2b972e,	0x488c359f
1892	.word	0x3fd2b930,	0x3ab89000
1893	.word	0x3d4a493b,	0x4a5013d7
1894	.word	0x3fd2c520,	0x304f8000
1895	.word	0x3d230852,	0x8c342f39
1896	.word	0x3fd2d10d,	0xec508000
1897	.word	0x3d360c61,	0xf7088353
1898	.word	0x3fd2dcf9,	0x6f8fd000
1899	.word	0x3d20b4a2,	0x8e33c9ce
1900	.word	0x3fd2e8e2,	0xbae11000
1901	.word	0x3d4a6138,	0x5992350a
1902	.word	0x3fd2f4c9,	0xcf17a000
1903	.word	0x3d371f04,	0x9374b87b
1904	.word	0x3fd300ae,	0xad063000
1905	.word	0x3d342f56,	0x8b75fcac
1906	.word	0x3fd30c91,	0x557f1000
1907	.word	0x3d4d7ad4,	0xebd75d15
1908	.word	0x3fd31871,	0xc9544000
1909	.word	0x3d184fab,	0x94cecfd9
1910	.word	0x3fd32450,	0x09570000
1911	.word	0x3d3d271b,	0x9bdae59d
1912	.word	0x3fd3302c,	0x16586000
1913	.word	0x3d36217d,	0xc2a3e08b
1914	.word	0x3fd33c05,	0xf128d000
1915	.word	0x3d4b51be,	0x71fc7961
1916	.word	0x3fd347dd,	0x9a987000
1917	.word	0x3d4aa9ac,	0x8ace9fdc
1918	.word	0x3fd353b3,	0x1376d000
1919	.word	0x3d4d99ca,	0x0327b24d
1920	.word	0x3fd35f86,	0x5c932000
1921	.word	0x3d427c10,	0xd8af2d5b
1922	.word	0x3fd36b57,	0x76bc1000
1923	.word	0x3d116978,	0x5a9c223f
1924	.word	0x3fd37726,	0x62bfd000
1925	.word	0x3d40b5e4,	0xa9d627ef
1926	.word	0x3fd382f3,	0x216c4000
1927	.word	0x3d4df3c5,	0xbc5cb012
1928	.word	0x3fd38ebd,	0xb38ed000
1929	.word	0x3d290582,	0xe67d4ca0
1930	.word	0x3fd39a86,	0x19f45000
1931	.word	0x3d18ee51,	0x937354f5
1932	.word	0x3fd3a64c,	0x55694000
1933	.word	0x3d37a71c,	0xbcd735d0
1934	.word	0x3fd3b210,	0x66b9b000
1935	.word	0x3d461f09,	0x33f754f9
1936	.word	0x3fd3bdd2,	0x4eb14000
1937	.word	0x3d46d425,	0xb478c893
1938	.word	0x3fd3c992,	0x0e1b2000
1939	.word	0x3d141c28,	0xaa680b76
1940	.word	0x3fd3d54f,	0xa5c1f000
1941	.word	0x3d3c3e1c,	0xd9a395e3
1942	.word	0x3fd3e10b,	0x16701000
1943	.word	0x3d3f3bcf,	0x145429c7
1944	.word	0x3fd3ecc4,	0x60ef5000
1945	.word	0x3d4e9fd7,	0x9d83ecff
1946	.word	0x3fd3f87b,	0x86093000
1947	.word	0x3d451014,	0x55d3b3bc
1948	.word	0x3fd40430,	0x8686a000
1949	.word	0x3d3f8ef4,	0x3049f7d3
1950	.word	0x3fd40fe3,	0x63303000
1951	.word	0x3d3e5c5f,	0xe79f05c6
1952	.word	0x3fd41b94,	0x1cce0000
1953	.word	0x3d47dcb7,	0xf60de01c
1954	.word	0x3fd42742,	0xb427d000
1955	.word	0x3d433c6c,	0x7ea3ecc5
1956	.word	0x3fd432ef,	0x2a04e000
1957	.word	0x3d40276b,	0x3674752a
1958	.word	0x3fd43e99,	0x7f2c1000
1959	.word	0x3d1c3f72,	0x40c41a04
1960	.word	0x3fd44a41,	0xb463c000
1961	.word	0x3d31ee28,	0xf37cf612
1962	.word	0x3fd455e7,	0xca720000
1963	.word	0x3d1ad8c6,	0x36629aed
1964	.word	0x3fd4618b,	0xc21c5000
1965	.word	0x3d4d84fa,	0x16f66f66
1966	.word	0x3fd46d2d,	0x9c280000
1967	.word	0x3d359b27,	0x5f67f75a
1968	.word	0x3fd478cd,	0x5959b000
1969	.word	0x3d2ec89b,	0xf0c8d098
1970	.word	0x3fd4846a,	0xfa75b000
1971	.word	0x3d4a7057,	0x47219c8d
1972	.word	0x3fd49006,	0x80400000
1973	.word	0x3d43a198,	0x00f2f83a
1974	.word	0x3fd49b9f,	0xeb7c1000
1975	.word	0x3d3dac1c,	0x58ab60d7
1976	.word	0x3fd4a737,	0x3cecf000
1977	.word	0x3d432ee5,	0x8a0655db
1978	.word	0x3fd4b2cc,	0x75555000
1979	.word	0x3d43f81a,	0x1c3a02db
1980	.word	0x3fd4be5f,	0x95777000
1981	.word	0x3d4141b6,	0x993293ee
1982	.word	0x3fd4c9f0,	0x9e152000
1983	.word	0x3d487888,	0x63c7f488
1984	.word	0x3fd4d57f,	0x8fefe000
1985	.word	0x3d23f926,	0x7fd06868
1986	.word	0x3fd4e10c,	0x6bc8a000
1987	.word	0x3cf8283f,	0x1636f061
1988	.word	0x3fd4ec97,	0x32600000
1989	.word	0x3d234d7a,	0xaf04d104
1990	.word	0x3fd4f81f,	0xe4763000
1991	.word	0x3d4a00c2,	0x6f2c03dd
1992	.word	0x3fd503a6,	0x82cb1000
1993	.word	0x3d4965cd,	0xc3a41929
1994	.word	0x3fd50f2b,	0x0e1e0000
1995	.word	0x3d3a0940,	0x8c47b8d8
1996	.word	0x3fd51aad,	0x872df000
1997	.word	0x3d405a13,	0x927ac19f
1998	.word	0x3fd5262d,	0xeeb98000
1999	.word	0x3d40f230,	0x47bb5b00
2000	.word	0x3fd531ac,	0x457ee000
2001	.word	0x3d3df83b,	0x7d931501
2002	.word	0x3fd53d28,	0x8c3bd000
2003	.word	0x3d4ddd8d,	0x029240a7
2004	.word	0x3fd548a2,	0xc3add000
2005	.word	0x3d23167e,	0x63081cf7
2006	.word	0x3fd5541a,	0xec91b000
2007	.word	0x3d4f3f4a,	0xa91c688a
2008	.word	0x3fd55f91,	0x07a43000
2009	.word	0x3d4dc337,	0x10e416b4
2010	.word	0x3fd56b05,	0x15a18000
2011	.word	0x3d29247b,	0xbc4a23fc
2012	.word	0x3fd57677,	0x17455000
2013	.word	0x3d44d8a9,	0x356d941b
2014	.word	0x3fd581e7,	0x0d4b2000
2015	.word	0x3d4c19c3,	0xc9da4e1c
2016	.word	0x3fd58d54,	0xf86e0000
2017	.word	0x3d2791f3,	0x0a795215
2018	.word	0x3fd598c0,	0xd9687000
2019	.word	0x3d43d05b,	0x4793492e
2020	.word	0x3fd5a42a,	0xb0f4c000
2021	.word	0x3d4fc338,	0xa1a4108b
2022	.word	0x3fd5af92,	0x7fccd000
2023	.word	0x3d4c7f9a,	0x01400711
2024	.word	0x3fd5baf8,	0x46aa1000
2025	.word	0x3d46328b,	0x83c602e0
2026	.word	0x3fd5c65c,	0x06459000
2027	.word	0x3d4300fc,	0xff3f88cd
2028	.word	0x3fd5d1bd,	0xbf580000
2029	.word	0x3d4394a1,	0x1b1c1ee4
2030	.word	0x3fd5dd1d,	0x7299b000
2031	.word	0x3d43a84f,	0x3bf518f5
2032	.word	0x3fd5e87b,	0x20c29000
2033	.word	0x3d3527d1,	0x8f7738fa
2034	.word	0x3fd5f3d6,	0xca8a2000
2035	.word	0x3d37af84,	0x8e19cc75
2036	.word	0x3fd5ff30,	0x70a79000
2037	.word	0x3d2e9e43,	0x9f105039
2038	.word	0x3fd60a88,	0x13d1a000
2039	.word	0x3d36e9b9,	0xc879af55
2040	.word	0x3fd615dd,	0xb4bec000
2041	.word	0x3d13c7ca,	0x90bc04b2
2042	.word	0x3fd62131,	0x5424e000
2043	.word	0x3d463e81,	0xdaacbccc
2044	.word	0x3fd62c82,	0xf2b9c000
2045	.word	0x3d3e54bd,	0xbd7c8a98
2046	.word	0x3fd637d2,	0x91329000
2047	.word	0x3d450450,	0x865165ea
2048	.word	0x3fd64320,	0x30444000
2049	.word	0x3d3efe02,	0x7a01d7df
2050	.word	0x3fd64e6b,	0xd0a35000
2051	.word	0x3d2afe80,	0x69d61295
2052	.word	0x3fd659b5,	0x7303e000
2053	.word	0x3d1f281d,	0xb0af8efc
2054	.word	0x3fd664fd,	0x1819b000
2055	.word	0x3d418e55,	0xe463b5fe
2056	.word	0x3fd67042,	0xc0983000
2057	.word	0x3d4c6148,	0xdbdcf10d
2058	.word	0x3fd67b86,	0x6d327000
2059	.word	0x3d438fd6,	0x3ea11c64
2060	.word	0x3fd686c8,	0x1e9b1000
2061	.word	0x3d32bb11,	0x0af84054
2062	.word	0x3fd69207,	0xd5845000
2063	.word	0x3d43a44f,	0x4861e4ab
2064	.word	0x3fd69d45,	0x92a03000
2065	.word	0x3d38b1bd,	0xbf97ffa6
2066	.word	0x3fd6a881,	0x56a03000
2067	.word	0x3d420e9b,	0xd9d37351
2068	.word	0x3fd6b3bb,	0x22359000
2069	.word	0x3d30f625,	0x7a933268
2070	.word	0x3fd6bef2,	0xf6111000
2071	.word	0x3d48f8fc,	0x947d5965
2072	.word	0x3fd6ca28,	0xd2e34000
2073	.word	0x3d430ad0,	0xb8c49166
2074	.word	0x3fd6d55c,	0xb95c3000
2075	.word	0x3d39b9c8,	0xae9a6ee2
2076	.word	0x3fd6e08e,	0xaa2ba000
2077	.word	0x3d1e38c1,	0x39318d71
2078	.word	0x3fd6ebbe,	0xa600e000
2079	.word	0x3d4cce14,	0xc7dd17dd
2080	.word	0x3fd6f6ec,	0xad8b2000
2081	.word	0x3d249058,	0xfdf08376
2082	.word	0x3fd70218,	0xc178e000
2083	.word	0x3d42a947,	0x0e225428
2084	.word	0x3fd70d42,	0xe2789000
2085	.word	0x3d21aead,	0x337ee287
2086	.word	0x3fd7186b,	0x11381000
2087	.word	0x3d1934e2,	0x677d272b
2088	.word	0x3fd72391,	0x4e650000
2089	.word	0x3d0c1d52,	0xbdc87d8a
2090	.word	0x3fd72eb5,	0x9aac9000
2091	.word	0x3d4dd010,	0xd08a7a15
2092!! TBL - end
2093
2094! constants:
2095	.align 64
2096CONSTANTS:
2097	.word	0x40000000,0x00000000
2098	.word	0x3fe55555,0x555571da
2099	.word	0x3fd99999,0x8702be3a
2100	.word	0x3fd24af7,0x3f4569b1
2101	.word	0x3ea62e42,0xfee00000	! scaled by 2**-20
2102	.word	0x3caa39ef,0x35793c76	! scaled by 2**-20
2103	.word	0xfffffc00,0x00000000	! ELEVENBIT
2104	.word	0x43200000
2105	.word	0xfff00000
2106	.word	0xc0190200		! ELEVENBIT
2107	.word	0x0200			! ELEVENBIT
2108
2109#define two		0x00
2110#define A1		0x08
2111#define A2		0x10
2112#define A3		0x18
2113#define ln2hi		0x20
2114#define ln2lo		0x28
2115#define mask		0x30
2116#define ox43200000	0x38
2117#define oxfff00000	0x3c
2118#define oxc0194000	0x40
2119#define ox4000		0x44
2120
2121
2122! local storage indices
2123
2124#define jnk		STACK_BIAS-0x8
2125#define tmp2		STACK_BIAS-0x10
2126#define tmp1		STACK_BIAS-0x18
2127#define tmp0		STACK_BIAS-0x20
2128#define tmp3		STACK_BIAS-0x28
2129#define tmp4		STACK_BIAS-0x30
2130#define tmp5		STACK_BIAS-0x38
2131#define tmp6		STACK_BIAS-0x40
2132! sizeof temp storage - must be a multiple of 16 for V9
2133#define tmps		0x40
2134
2135! register use
2136
2137! i0  n
2138! i1  x
2139! i2  stridex
2140! i3  y
2141! i4  stridey
2142! i5
2143
2144! g1  TBL
2145
2146! l0  j0
2147! l1  j1
2148! l2  j2
2149! l3
2150! l4  0x94000
2151! l5  CONSTANTS
2152! l6  0x000fffff
2153! l7  0x7ff00000
2154
2155! o0  py0
2156! o1  py1
2157! o2  py2
2158! o3  		used in primary range bounds check
2159! o4  		used in primary range bounds check
2160! o5  		used in .rangeI check section as temporary
2161! o7  		NOT USED
2162
2163! f0  u0,q0
2164! f2  v0,(two-v0)-u0,z0
2165! f4  n0,f0,q0
2166! f6  s0
2167! f8  q
2168! f10 u1,q1
2169! f12 v1,(two-v1)-u1,z1
2170! f14 n1,f1,q1
2171! f16 s1
2172! f18 t	! now tmp0 storage
2173! f20 u2,q2
2174! f22 v2,(two-v2)-u2,q2
2175! f24 n2,f2,q2
2176! f26 s2
2177! f28 0xfff00000
2178! f29 0x43200000
2179! f30 0x4000
2180! f31 0xc0194000
2181! f32 t0
2182! f34 h0,f0-(c0-h0)
2183! f36 c0
2184! f38 A1
2185! f40 two
2186! f42 t1
2187! f44 h1,f1-(c1-h1)
2188! f46 c1
2189! f48 A2
2190! f50 0xffff8000... or 0xfffffc00 for 6 or 11 bit tbl resp
2191! f52 t2
2192! f54 h2,f2-(c2-h2)
2193! f56 c2
2194! f58 A3	now tmp1 storage
2195! f60 ln2hi
2196! f62 ln2lo
2197!--------------------------------------------------------------------
2198!--------------------------------------------------------------------
2199! PREFETCH info
2200#define PREFETCH_MULT_READS 0
2201!--------------------------------------------------------------------
2202!--------------------------------------------------------------------
2203! define pipes for easier reading
2204
2205#define ICNT		%i0
2206
2207#define XPTR		%i1
2208#define XSTR		%i2
2209#define YPTR		%i3
2210#define YSTR		%i4
2211
2212#define RANGE_LO	%l6
2213#define RANGE_HI	%l7
2214
2215#define P0_X1		%f0
2216#define P0_f1		%f1
2217#define P0_f2		%f2
2218#define P0_f3		%f3
2219#define P0_f4		%f4
2220#define P0_f5		%f5
2221#define P0_f6		%f6
2222#define P0_f7		%f7
2223!#define P0_f8		%f8
2224#define T0_f8		%f8
2225#define P0_f9		%f9
2226
2227#define P1_X2		%f10
2228#define P1_f11		%f11
2229#define P1_f12		%f12
2230#define P1_f13		%f13
2231#define P1_f14		%f14
2232#define P1_f15		%f15
2233#define P1_f16		%f16
2234#define P1_f17		%f17
2235
2236!#define P1_f18		%f18
2237#define T1_f18		%f18
2238
2239#define P1_f19		%f19
2240
2241#define P2_X3		%f20
2242#define P2_f21		%f21
2243#define P2_f22		%f22
2244#define P2_f23		%f23
2245#define P2_f24		%f24
2246#define P2_f25		%f25
2247#define P2_f26		%f26
2248#define P2_f27		%f27
2249#define INF_f28		%f28
2250#define CONSTE432_f29	%f29
2251
2252#define CONST_f30	%f30
2253
2254#define TTOPMSK		%f31
2255
2256#define P0_f32		%f32
2257#define P0_f34		%f34
2258#define P0_f36		%f36
2259
2260#define P1_f42		%f42
2261#define P1_f44		%f44
2262#define P1_f46		%f46
2263
2264#define P2_f52		%f52
2265#define P2_f54		%f54
2266#define P2_f56		%f56
2267
2268#define G1_TBL		%g1
2269#define L5_CONSTANTS	%l5
2270#define FP40_TWO	%f40
2271#define FP38_A1		%f38
2272#define FP48_A2		%f48
2273#define FP50_MASK	%f50
2274!!!#define FP58_A3		%f58
2275#define T2_f58		%f58
2276#define FP60_LN2HI	%f60
2277#define FP62_LN2LO	%f62
2278
2279
2280!--------------------------------------------------------------------
2281
2282	ENTRY(__vlog_ultra3)
2283	save	%sp,-SA(MINFRAME)-tmps,%sp
2284	PIC_SETUP(l7)
2285	PIC_SET(l7,CONSTANTS,l5)
2286	PIC_SET(l7,TBL,o0)
2287	mov	%o0,%g1
2288	wr	%g0,0x82,%asi		! set %asi for non-faulting loads
2289
2290	ld	[XPTR],%l0		! quickly			!X1
2291
2292	sethi	%hi(0x90200),%l4		! ELEVENBIT
2293	or	%l4,%lo(0x90200),%l4		! ELEVENBIT
2294	ldd	[XPTR],P0_X1		! u.l[0] = *x			!X1
2295	sethi	%hi(0x000fffff),RANGE_LO
2296	or	RANGE_LO,%lo(0x000fffff),RANGE_LO
2297	sethi	%hi(0x7ff00000),RANGE_HI
2298	ldd	[L5_CONSTANTS+two],FP40_TWO
2299	fzero	P1_X2
2300	fzero	P2_X3
2301	ldd	[L5_CONSTANTS+A1],FP38_A1
2302	ldd	[L5_CONSTANTS+A2],FP48_A2
2303	ldd	[L5_CONSTANTS+ln2hi],FP60_LN2HI
2304	ldd	[L5_CONSTANTS+ln2lo],FP62_LN2LO
2305	ldd	[L5_CONSTANTS+mask],FP50_MASK
2306	ld	[L5_CONSTANTS+ox43200000],CONSTE432_f29
2307	ld	[L5_CONSTANTS+oxfff00000],INF_f28
2308	ld	[L5_CONSTANTS+oxc0194000],TTOPMSK
2309	fpadd32s P0_X1,TTOPMSK,P0_f2	! X+TTOP !X1 START
2310	ld	[L5_CONSTANTS+ox4000],CONST_f30
2311	sll	XSTR,3,XSTR		! scale strides
2312	sll	YSTR,3,YSTR
2313	add	%fp,jnk,%o0		! precondition loop
2314	fands	P0_f2,INF_f28,P0_f2	! (X+TTOP)&INF->n		X1
2315!	st	P0_X1,[%fp+tmp0]	!BYPASS in
2316	fzero	P0_f4
2317	fzero	P0_f6
2318!	ld	[%fp+tmp0],%l0		!BYPASS out ix			X1
2319	add	%fp,jnk,%o1
2320	add	%fp,jnk,%o2
2321	fzero	P0_f32
2322	fzero	P0_f34
2323	fzero	P0_f36
2324	fzero	P1_f12
2325	sub	%l0,RANGE_HI,%o3		! bounds for X1
2326	sub	RANGE_LO,%l0,%o4		! bounds for X1
2327	fzero	P1_f14
2328	fzero	P1_f16
2329	sub	YPTR,YSTR,YPTR
2330	fzero	P1_f42
2331	mov	%g0,%l1				! zero out for first pass
2332	mov	%g0,%l2				! zero out for first pass
2333	fzero	P1_f44
2334	fzero	P1_f46
2335	fzero	T0_f8
2336	fzero	T1_f18
2337	fzero	T2_f58
2338	fzero	P2_f24
2339	fzero	P2_f26
2340	fzero	P2_f52
2341	fzero	P2_f54
2342	fzero	P2_f56
2343	ba	.loop0
2344	std	P2_f26,[%fp+tmp2]
2345
2346	.align	16
2347! -- 16 byte aligned
2348.loop0:
2349!############################# AREA 1 (0-19) ###################################!
2350!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.1 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2351!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 0
2352
2353	fmuld	P1_f44,FP48_A2,P1_f46			! s^2,A2	!	X2-2
2354	andcc	%o3,%o4,%o4					!	X1
2355	bge,pn	%icc,.range0	! ix<=0x000fffff or >=0x7ff00000 !	X1
2356! delay slot
2357	nop
2358	! x , n , reduction
2359
2360!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 1
2361	fpsub32s P0_X1,P0_f2,P0_X1		! X - n -> x	!	X1
2362	add	XPTR,XSTR,XPTR		! x += stridex
2363	add	YPTR,YSTR,YPTR		! y += stridey	!
2364
2365!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 2
2366.cont0:
2367	! n*l2lo , lylo
2368	faddd	P0_f4,P0_f34,P0_f34	!n*l2lo,lylo		!	X1-2
2369	! TBL calc
2370	add     %l0,%l4,%l0             ! j = ix + 0x94000              X1
2371!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 3
2372	fsubd	FP40_TWO,P2_f24,P2_f24	! two - xT		!	X3-2
2373
2374
2375!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.2 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2376!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 4
2377	! round up redunction
2378	fpadd32s P0_X1,CONST_f30,P0_f4	! x round up	 		X1
2379!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 5
2380	! s ( poly + ( 2-xT-x)), n*l2lo+lylo
2381	faddd	P0_f36,P0_f34,P0_f36	! + n*l2lo+lylo			X1-2
2382	! n*l2hi
2383	fmuld	T0_f8,FP60_LN2HI,T0_f8 ! n*l2hi			!	X1-2
2384
2385!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 6
2386	fmuld	T1_f18,FP62_LN2LO,P1_f12 ! n*l2lo			!	X2
2387	faddd	P1_f46,FP38_A1,P1_f46	! (s^2*A2), A1				X2-2
2388	! TBL calc
2389	srl     %l0,10,%l0              ! j=(j>>11)&0x1f0 !ELEVENBIT !  X1
2390
2391!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 7
2392	fsubd	P2_f24,P2_X3,P2_f24	! (two - xT) - x	!	!X3-2
2393
2394!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.3 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2395!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 8
2396	ldda	[XPTR]%asi,P1_X2				!	X2-nextX START
2397	! x-roundedup & 0xffff8000  -> xT  i.e 11bit value of x
2398	fand	P0_f4,FP50_MASK,P0_f4	! xT			!	X1
2399
2400
2401
2402!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 9
2403	faddd	P0_f36,P0_f32,P0_f36	! + (x-xT)			X1-2
2404	and     %l0,0x3ff,%l0           ! ELEVENBIT             !       X1
2405	st	P1_X2,[%fp+tmp0]	!BYPASS in		!	X2
2406
2407!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 10
2408	fmuld   P1_f46,P1_f44,P1_f46       ! s^2*A2+A1 , s^2       		X2-2
2409	ldd	[G1_TBL+%l1],P1_f44		!lylo		!	X2-2
2410	sub	%l1,8,%l1			! get back ptr to lyhi	X2-2
2411	faddd	P1_f12,P1_f44,P1_f44	!n*l2lo,lylo		!	X2-2
2412
2413!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 11
2414
2415!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.4 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2416!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 12
2417	faddd	P0_f36,P0_f6,P0_f36		! + lyhi		X1-2
2418
2419!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 13
2420	! x+xT
2421	faddd	P0_X1,P0_f4,P0_f6	 ! x + xT		!	X1
2422	! TBL calc
2423	sll     %l0,4,%l0               ! ELEVENBIT             !       X1
2424
2425
2426!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 14
2427	faddd	P1_f46,P1_f14,P1_f46	! (s^2*A2+A1)s^2 + (2-xT-x)		X2-2
2428
2429
2430!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 15
2431	fpadd32s P1_X2,TTOPMSK,P1_f12 ! X + TTOP			 !	X2
2432	ld	[%fp+tmp0],%l3			!BYPASS out	!	X2
2433
2434!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.5 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2435!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 16
2436	! x-xT
2437	fsubd	P0_X1,P0_f4,P0_f32		! x-xT		!	X1
2438
2439!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 17
2440	faddd	P0_f36,T0_f8,P0_f36	! + n*l2hi			X1-2
2441	! TBL+1
2442	add     %l0,8,%l0                                       !       X1
2443
2444
2445!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 18
2446	fmuld	P1_f16,P1_f46,P1_f46		! s*(POLY)	!	X2-2
2447
2448!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 19
2449	fands	P1_f12,INF_f28,P1_f12				!	X2
2450	fmuld	P2_f26,P2_f26,P2_f54		! z = s * s	!	!X3-2
2451
2452!############################# AREA 2 (20#39) ###################################!
2453!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.1 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2454!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 20
2455	! (x-xT) / (x+xT) => s
2456	fdivd	P0_f32,P0_f6,P0_f6	! -> s			!	X1
2457	faddd	P1_f46,P1_f44,P1_f46	! + n*l2lo+lylo			X2-2
2458	ldd	[G1_TBL+%l1],P1_f44	! ld lyhi		!	X2-2
2459	mov	%l3,%l1			! BYPASS temp		!	X2
2460	! wrap !!! done for X0
2461	std	P0_f36,[%o0]					!	X1-2 FINI
2462	mov	YPTR,%o0					!	X1-2 INC
2463
2464	addcc	ICNT,-1,ICNT		!
2465	ble,pn	%icc,.endloop0		!
2466! delay slot
2467	nop
2468
2469!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 21
2470! -- 16 byte aligned
2471.loop1:
2472	sub	%l1,RANGE_HI,%o3		! bounds for 		X2
2473	sub	RANGE_LO,%l1,%o4		! bounds for 		X2
2474	andcc	%o3,%o4,%o4					!	X2
2475	bge,pn	%icc,.range1	! ix<=0x000fffff or >=0x7ff00000 !	X2
2476! delay slot
2477	nop
2478
2479!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 22
2480	fpsub32s P1_X2,P1_f12,P1_X2		! X - n -> x	!	X2
2481	add	XPTR,XSTR,XPTR		! x += stridex
2482	add	YPTR,YSTR,YPTR		! y += stridey	!
2483.cont1:
2484
2485!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 23
2486	fmuld	P2_f54,FP48_A2,P2_f56			! s^2,A2!	X3-2
2487
2488!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.2 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2489!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 24
2490	! n to double
2491	fitod	P0_f2,T0_f8		! (double) n		!	X1
2492
2493!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 25
2494
2495!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 26
2496	faddd	P1_f46,P1_f42,P1_f46	! + (x-xT)			X2-2
2497
2498!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 27
2499	fpadd32s P1_X2,CONST_f30,P1_f14	! x round up	 		X2
2500	faddd	P2_f56,FP38_A1,P2_f56	! (s^2*A2), A1			X3-2
2501
2502!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.3 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2503!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 28
2504	! 2 , xT
2505	fsubd	FP40_TWO,P0_f4,P0_f4	! two - xT		!	X1
2506	fmuld	T1_f18,FP60_LN2HI,T1_f18 ! n*l2hi			!	X2-2
2507	ldda	[XPTR]%asi,P2_X3				!	X3-nextX START
2508
2509!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 29
2510
2511!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 30
2512	faddd	P1_f46,P1_f44,P1_f46		! + lyhi		X2-2
2513	st	P2_X3,[%fp+tmp0]	!BYPASS in		!	X3
2514
2515
2516!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 31
2517	fand	P1_f14,FP50_MASK,P1_f14	! xT			!	X2
2518	fmuld   P2_f56,P2_f54,P2_f56       ! s^2*A2+A1 , s^2       	X3-2
2519	ldd	[G1_TBL+%l2],P2_f54		!lylo		!	X3
2520	sub     %l2,8,%l2  		! back to TBL hi        !       X3
2521	add     %l1,%l4,%l1             ! j = ix + 0x94000              X2
2522
2523!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.4 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2524!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 32
2525	! 2-xT , x
2526	fsubd	P0_f4,P0_X1,P0_f4	! (two - xT) - x	!	!X1
2527
2528!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 33
2529	fpadd32s P2_X3,TTOPMSK,P2_f22 ! X + TTOP		 !	X3
2530
2531
2532!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 34
2533	faddd	P1_f46,T1_f18,P1_f46	! + n*l2hi			X2-2
2534
2535!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 35
2536	faddd	P1_X2,P1_f14,P1_f16	 ! x + xT		!	X2
2537	srl     %l1,10,%l1              ! j=(j>>11)&0x1f0 !ELEVENBIT !  X2
2538	faddd	P2_f56,P2_f24,P2_f56	! + 2-xT-x			X3-2
2539
2540
2541!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.5 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2542!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 36
2543	fitod	P1_f12,T1_f18		! (double) n		!	X2
2544	fmuld	T2_f58,FP62_LN2LO,P2_f24 ! n*l2lo		!	X3-2
2545
2546
2547!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 37
2548	fands	P2_f22,INF_f28,P2_f22				!	X3
2549	ld	[%fp+tmp0],%l3			!BYPASS out	!	X3
2550
2551!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 38
2552	std	P1_f46,[%o1]					!	X2-2 FINI
2553	mov	YPTR,%o1					!	X2-2 INC
2554
2555!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 39
2556	fsubd	P1_X2,P1_f14,P1_f42		! x-xT		!	X2
2557	fmuld	P2_f26,P2_f56,P2_f56		! s*(POLY)	!	X3-2
2558	ldd	[G1_TBL+%l2],P2_f26	! ld lyhi		!	X3
2559	mov	%l3,%l2			! BYPASS for X3		!	X3
2560	and     %l1,0x3ff,%l1           ! ELEVENBIT             !       X2
2561
2562!############################# AREA 3 (40#59) ###################################!
2563!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.1 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2564!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 40
2565	faddd	P2_f24,P2_f54,P2_f54	!n*l2lo,lylo		!	X3-2
2566	! s , s
2567	fmuld	P0_f6,P0_f6,P0_f34		! z = s * s	!	!X1
2568
2569!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 41
2570	fdivd	P1_f42,P1_f16,P1_f16	! -> s			!	X2
2571! -- 16 byte aligned
2572	addcc	ICNT,-1,ICNT		!
2573	ble,pn	%icc,.endloop1		!
2574	nop
2575.loop2:
2576
2577	sub	%l2,RANGE_HI,%o3		! bounds for 		X3
2578	sub	RANGE_LO,%l2,%o4		! bounds for 		X3
2579	andcc	%o3,%o4,%o4					!	X3
2580	bge,pn	%icc,.range2	! ix<=0x000fffff or >=0x7ff00000 !	X3
2581!	delay slot
2582	nop
2583!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 42
2584	fpsub32s P2_X3,P2_f22,P2_X3		! X - n -> x	!	X3
2585	add	XPTR,XSTR,XPTR		! x += stridex
2586	add	YPTR,YSTR,YPTR		! y += stridey	!
2587.cont2:
2588
2589!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 43
2590	sll     %l1,4,%l1               ! ELEVENBIT             !       X2
2591	fmuld	T2_f58,FP60_LN2HI,T2_f58 ! n*l2hi		!	X3-2
2592	faddd	P2_f56,P2_f54,P2_f56	! + n*l2lo+lylo			X3-2
2593
2594
2595!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.2 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2596!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 44
2597	! s^ , A2
2598	fmuld	P0_f34,FP48_A2,P0_f36			! s^2,A2	!	X1
2599	fsubd	FP40_TWO,P1_f14,P1_f14	! two - xT		!	X2
2600	add     %l2,%l4,%l2             ! j = ix + 0x94000              X3
2601	srl     %l2,10,%l2              ! j=(j>>11)&0x1f0 !ELEVENBIT !  X3
2602	ldda	[XPTR]%asi,P0_X1				!	X1-nextX START
2603
2604!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 45
2605	st	P0_X1,[%fp+tmp0]	!BYPASS in		!	X1-nextX
2606
2607!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 46
2608	fpadd32s P2_X3,CONST_f30,P2_f24	! x round up	 		X3
2609
2610!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 47
2611	add     %l1,8,%l1                                       !       X2
2612	faddd	P2_f56,P2_f52,P2_f56	! + (x-xT)			X3-2
2613
2614!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.3 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2615!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 48
2616	! s^2*A2 , A1
2617	faddd	P0_f36,FP38_A1,P0_f36	! (s^2*A2), A1				X1
2618
2619	and     %l2,0x3ff,%l2           ! ELEVENBIT             !       X3
2620
2621
2622!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 49
2623	fsubd	P1_f14,P1_X2,P1_f14	! (two - xT) - x	!	!X2
2624
2625
2626!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 50
2627	fand	P2_f24,FP50_MASK,P2_f24	! xT			!	X3
2628
2629!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 51
2630	faddd	P2_f56,P2_f26,P2_f56		! + lyhi		X3-2
2631
2632!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.4 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2633!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 52
2634	! s^2*A2+A1 , s^2
2635	fmuld   P0_f36,P0_f34,P0_f36       ! s^2*A2+A1 , s^2       		X1
2636	fpadd32s P0_X1,TTOPMSK,P0_f2 ! X + TTOP			 !	X1-nextX
2637	sll     %l2,4,%l2               ! ELEVENBIT             !       X3
2638
2639
2640!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 53
2641	! lylo
2642	ldd	[G1_TBL+%l0],P0_f34		!lylo		!	X1
2643	add	%l0,-8,%l0			!lyhi pointer	!	X1
2644
2645!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 54
2646	faddd	P2_X3,P2_f24,P2_f26	 ! x + xT		!	X3
2647
2648!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 55
2649	faddd	P2_f56,T2_f58,P2_f56	! + n*l2hi			X3-2
2650
2651!>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.5 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<!
2652!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 56
2653	! s^2(s^2*A1+A1) + (2-xT-x)
2654	faddd	P0_f36,P0_f4,P0_f36	!					X1
2655	add     %l2,8,%l2               ! TBL+8 is TBL lo       !       X3
2656
2657!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 57
2658	! X+TTOP & INF -> n
2659	fands	P0_f2,INF_f28,P0_f2				!	X1-nextX
2660	! n * l2lo
2661	fmuld	T0_f8,FP62_LN2LO,P0_f4 ! n*l2lo			!	X1
2662
2663!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 58
2664	fsubd	P2_X3,P2_f24,P2_f52		! x-xT		!	X3
2665!BEST	ld	[%fp+tmp0],%l3		!BYPASS out		!	X1-nextX
2666	ld	[%fp+tmp0],%l3		!BYPASS out		!	X1-nextX
2667
2668
2669!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 59
2670	fitod	P2_f22,T2_f58		! (double) n		!	X3
2671	std	P2_f56,[%o2]					!	X3 FINI
2672	mov	YPTR,%o2					!	X3 INC
2673
2674!############################# AREA 4 (OVERFLOW) ###################################!
2675!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 60
2676	! s * (s^2(s^2*A1+A1) + (2-xT-x))
2677	fmuld	P0_f6,P0_f36,P0_f36		! s*(POLY)	!	X1
2678
2679!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 61
2680	fmuld	P1_f16,P1_f16,P1_f44		! z = s * s	!	!X2
2681	! lyhi
2682	ldd	[G1_TBL+%l0],P0_f6	! ld lyhi		!	X1
2683	mov	%l3,%l0			! BYPASS tmp for X1	!	X1
2684	sub	%l0,RANGE_HI,%o3		! bounds for 		X1
2685	sub	RANGE_LO,%l0,%o4		! bounds for 		X1
2686
2687!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 62
2688	addcc	ICNT,-1,ICNT		!
2689! FALL THROUGH if running out of X array here
2690	bg,pt	%icc,.loop0		!62
2691! delay slot
2692	fdivd	P2_f52,P2_f26,P2_f26	! -> s			!	X3
2693
2694!!!!!!!!!!!!!!!!!!!!!!!!!!!!CYCLE 63
2695!LOSTC
2696
2697
2698
2699
2700
2701	! Once we get to the last element, we loop three more times to finish
2702	! the computations in progress.  This means we will load past the end
2703	! of the argument vector, but since we use non-faulting loads and never
2704	! use the data, the only potential problem is cache miss.  (Strictly
2705	! speaking, since we pad the argument vector with twos, we incorrectly
2706	! raise inexact if the actual argument vector is all ones.)
2707	.endloop2:
2708		sethi	%hi(0x40000000),%l0	! "next argument" = two
2709		sub	%l0,RANGE_HI,%o3		! bnds chk x1  		!54
2710		sub	RANGE_LO,%l0,%o4		! bounds chk x1 	!54
2711		fmovd	FP40_TWO,P0_X1
2712		cmp	ICNT,-3
2713		bg,a,pt	%icc,.loop0
2714	! delay slot
2715		fpadd32s P0_X1,TTOPMSK,P0_f2	! n=(ix+0xc0194000)&0xfff00000
2716		ret
2717		restore
2718
2719		.align	16
2720	.endloop0:
2721		sethi	%hi(0x40000000),%l1	! "next argument" = two
2722		fmovd	FP40_TWO,P1_X2
2723		cmp	ICNT,-3
2724		bg,a,pt	%icc,.loop1
2725	! delay slot
2726		fpadd32s P1_X2,TTOPMSK,P1_f12	! n=(ix+0xc0194000)&0xfff00000
2727		ret
2728		restore
2729
2730		.align	16
2731	.endloop1:
2732		sethi	%hi(0x40000000),%l2	! "next argument" = two
2733		fmovd	FP40_TWO,P2_X3
2734		cmp	ICNT,-3
2735		bg,a,pt	%icc,.loop2
2736	! delay slot
2737		fpadd32s P2_X3,TTOPMSK,P2_f22	! n=(ix+0xc0194000)&0xfff00000
2738		ret
2739		restore
2740
2741
2742		.align	16
2743	.range0:
2744		cmp	%l0,RANGE_HI
2745		bgeu,pn	%icc,2f			! if (unsigned) ix >= 0x7ff00000
2746	! delay slot
2747		ld	[XPTR+4],%o5
2748		!THERE
2749		fxtod	P0_X1,P0_X1		! scale by 2**1074 w/o trapping
2750		st	P0_X1,[%fp+tmp0]	!BYPASS in
2751		add	XPTR,XSTR,XPTR		! x += stridex
2752		orcc	%l0,%o5,%g0
2753		be,pn	%icc,1f			! if x == 0
2754	! delay slot
2755		add	YPTR,YSTR,YPTR		! y += stridey
2756		! HERE
2757		fpadd32s P0_X1,TTOPMSK,P0_f2		! n = (ix + 0xc0194000) & 0xfff00000
2758		fands	P0_f2,INF_f28,P0_f2
2759		fpsub32s P0_X1,P0_f2,P0_X1		! u.l[0] -= n
2760		ld	[%fp+tmp0],%l0		!BYPASS out
2761		ba,pt	%icc,.cont0
2762	! delay slot
2763		fpsub32s P0_f2,CONSTE432_f29,P0_f2		! n -= 0x43200000
2764	1:
2765		fdivs	CONSTE432_f29,P0_f1,P0_f2		! raise div-by-zero
2766		ba,pt	%icc,3f
2767	! delay slot
2768		st	INF_f28,[YPTR]		! store -inf
2769	2:
2770		sll	%l0,1,%l0		! lop off sign bit
2771		add	XPTR,XSTR,XPTR		! x += stridex
2772		orcc	%l0,%o5,%g0
2773		be,pn	%icc,1b			! if x == -0
2774	! delay slot
2775		add	YPTR,YSTR,YPTR		! y += stridey
2776		fzero	P0_f2			! *y = (x < 0.0? 0.0 : x) * inf
2777		fcmpd	%fcc0,P0_X1,P0_f2
2778		fmovdl	%fcc0,P0_f2,P0_X1
2779		fand	INF_f28,FP50_MASK,P0_f2
2780		fnegd	P0_f2,P0_f2
2781		fmuld	P0_X1,P0_f2,P0_X1
2782		st	P0_X1,[YPTR]
2783	3:
2784		addcc	ICNT,-1,ICNT
2785		ble,pn	%icc,.endloop2
2786	! delay slot
2787		st	P0_f1,[YPTR+4]
2788		ld	[XPTR],%l0		! get next argument
2789		sub	%l0,RANGE_HI,%o3		! bnds chk x1  		!54
2790		sub	RANGE_LO,%l0,%o4		! bounds chk x1 	!54
2791		ldd	[XPTR],P0_X1
2792		fpadd32s P0_X1,TTOPMSK,P0_f2	! n=(ix+0xc0194000)&0xfff00000
2793		ba,pt	%icc,.loop0
2794	! delay slot
2795		fands	P0_f2,INF_f28,P0_f2				!58
2796
2797
2798		.align	16
2799	.range1:
2800		cmp	%l1,RANGE_HI
2801		bgeu,pn	%icc,2f			! if (unsigned) ix >= 0x7ff00000
2802	! delay slot
2803		ld	[XPTR+4],%o5
2804		fxtod	P1_X2,P1_X2		! scale by 2**1074 w/o trapping
2805		st	P1_X2,[%fp+tmp1]
2806		add	XPTR,XSTR,XPTR		! x += stridex
2807		orcc	%l1,%o5,%g0
2808		be,pn	%icc,1f			! if x == 0
2809	! delay slot
2810		add	YPTR,YSTR,YPTR		! y += stridey
2811		fpadd32s P1_X2,TTOPMSK,P1_f12		! n = (ix + 0xc0194000) & 0xfff00000
2812		fands	P1_f12,INF_f28,P1_f12
2813		fpsub32s P1_X2,P1_f12,P1_X2		! u.l[0] -= n
2814		ld	[%fp+tmp1],%l1
2815		ba,pt	%icc,.cont1
2816	! delay slot
2817		fpsub32s P1_f12,CONSTE432_f29,P1_f12		! n -= 0x43200000
2818	1:
2819		fdivs	CONSTE432_f29,P1_f11,P1_f12		! raise div-by-zero
2820		ba,pt	%icc,3f
2821	! delay slot
2822		st	INF_f28,[YPTR]		! store -inf
2823	2:
2824		sll	%l1,1,%l1		! lop off sign bit
2825		add	XPTR,XSTR,XPTR		! x += stridex
2826		orcc	%l1,%o5,%g0
2827		be,pn	%icc,1b			! if x == -0
2828	! delay slot
2829		add	YPTR,YSTR,YPTR		! y += stridey
2830		fzero	P1_f12			! *y = (x < 0.0? 0.0 : x) * inf
2831		fcmpd	%fcc0,P1_X2,P1_f12
2832		fmovdl	%fcc0,P1_f12,P1_X2
2833		fand	INF_f28,FP50_MASK,P1_f12
2834		fnegd	P1_f12,P1_f12
2835		fmuld	P1_X2,P1_f12,P1_X2
2836		st	P1_X2,[YPTR]
2837	3:
2838		addcc	ICNT,-1,ICNT
2839		ble,pn	%icc,.endloop0
2840	! delay slot
2841		st	P1_f11,[YPTR+4]
2842		ld	[XPTR],%l1		! get next argument
2843		ldd	[XPTR],P1_X2
2844		fpadd32s P1_X2,TTOPMSK,P1_f12 		! X + TTOP
2845		ba,pt	%icc,.loop1
2846	! delay slot
2847		fands	P1_f12,INF_f28,P1_f12		! & INF
2848
2849
2850	.align	16
2851.range2:
2852	cmp	%l2,RANGE_HI
2853	bgeu,pn	%icc,2f			! if (unsigned) ix >= 0x7ff00000
2854! delay slot
2855	ld	[XPTR+4],%o5
2856	fxtod	P2_X3,P2_X3		! scale by 2**1074 w/o trapping
2857	st	P2_X3,[%fp+tmp2]
2858	add	XPTR,XSTR,XPTR		! x += stridex
2859	orcc	%l2,%o5,%g0
2860	be,pn	%icc,1f			! if x == 0
2861! delay slot
2862	add	YPTR,YSTR,YPTR		! y += stridey
2863	fpadd32s P2_X3,TTOPMSK,P2_f22		! n = (ix + 0xc0194000) & 0xfff00000
2864	fands	P2_f22,INF_f28,P2_f22
2865	fpsub32s P2_X3,P2_f22,P2_X3		! u.l[0] -= n
2866	ld	[%fp+tmp2],%l2
2867	ba,pt	%icc,.cont2
2868! delay slot
2869	fpsub32s P2_f22,CONSTE432_f29,P2_f22		! n -= 0x43200000
28701:
2871	fdivs	CONSTE432_f29,P2_f21,P2_f22		! raise div-by-zero
2872	ba,pt	%icc,3f
2873! delay slot
2874	st	INF_f28,[YPTR]		! store -inf
28752:
2876	sll	%l2,1,%l2		! lop off sign bit
2877	add	XPTR,XSTR,XPTR		! x += stridex
2878	orcc	%l2,%o5,%g0
2879	be,pn	%icc,1b			! if x == -0
2880! delay slot
2881	add	YPTR,YSTR,YPTR		! y += stridey
2882	fzero	P2_f22			! *y = (x < 0.0? 0.0 : x) * inf
2883	fcmpd	%fcc0,P2_X3,P2_f22
2884	fmovdl	%fcc0,P2_f22,P2_X3
2885	fand	INF_f28,FP50_MASK,P2_f22
2886	fnegd	P2_f22,P2_f22
2887	fmuld	P2_X3,P2_f22,P2_X3
2888	st	P2_X3,[YPTR]
28893:
2890	addcc	ICNT,-1,ICNT
2891	ble,pn	%icc,.endloop1
2892! delay slot
2893	st	P2_f21,[YPTR+4]
2894	ld	[XPTR],%l2		! get next argument
2895	ldd	[XPTR],P2_X3
2896	fpadd32s P2_X3,TTOPMSK,P2_f22 ! X + TTOP
2897	ba,pt	%icc,.loop2
2898! delay slot
2899	fands	P2_f22,INF_f28,P2_f22				!	X3
2900	nop !ld	[XPTR+4],P2_f21
2901
2902	SET_SIZE(__vlog_ultra3)
2903
2904