1*25c28e83SPiotr Jasiukajtis/*
2*25c28e83SPiotr Jasiukajtis * CDDL HEADER START
3*25c28e83SPiotr Jasiukajtis *
4*25c28e83SPiotr Jasiukajtis * The contents of this file are subject to the terms of the
5*25c28e83SPiotr Jasiukajtis * Common Development and Distribution License (the "License").
6*25c28e83SPiotr Jasiukajtis * You may not use this file except in compliance with the License.
7*25c28e83SPiotr Jasiukajtis *
8*25c28e83SPiotr Jasiukajtis * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*25c28e83SPiotr Jasiukajtis * or http://www.opensolaris.org/os/licensing.
10*25c28e83SPiotr Jasiukajtis * See the License for the specific language governing permissions
11*25c28e83SPiotr Jasiukajtis * and limitations under the License.
12*25c28e83SPiotr Jasiukajtis *
13*25c28e83SPiotr Jasiukajtis * When distributing Covered Code, include this CDDL HEADER in each
14*25c28e83SPiotr Jasiukajtis * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*25c28e83SPiotr Jasiukajtis * If applicable, add the following below this CDDL HEADER, with the
16*25c28e83SPiotr Jasiukajtis * fields enclosed by brackets "[]" replaced with your own identifying
17*25c28e83SPiotr Jasiukajtis * information: Portions Copyright [yyyy] [name of copyright owner]
18*25c28e83SPiotr Jasiukajtis *
19*25c28e83SPiotr Jasiukajtis * CDDL HEADER END
20*25c28e83SPiotr Jasiukajtis */
21*25c28e83SPiotr Jasiukajtis/*
22*25c28e83SPiotr Jasiukajtis * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
23*25c28e83SPiotr Jasiukajtis */
24*25c28e83SPiotr Jasiukajtis/*
25*25c28e83SPiotr Jasiukajtis * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
26*25c28e83SPiotr Jasiukajtis * Use is subject to license terms.
27*25c28e83SPiotr Jasiukajtis */
28*25c28e83SPiotr Jasiukajtis
29*25c28e83SPiotr Jasiukajtis	.file	"__vsqrt.S"
30*25c28e83SPiotr Jasiukajtis
31*25c28e83SPiotr Jasiukajtis#include "libm.h"
32*25c28e83SPiotr Jasiukajtis
33*25c28e83SPiotr Jasiukajtis	RO_DATA
34*25c28e83SPiotr Jasiukajtis	.align	64
35*25c28e83SPiotr Jasiukajtis
36*25c28e83SPiotr Jasiukajtis.CONST_TBL:
37*25c28e83SPiotr Jasiukajtis	.word	0x3fe00000, 0x00000000	! A1  =  5.00000000000000001789e-01
38*25c28e83SPiotr Jasiukajtis	.word	0xbfbfffff, 0xfffd0bfd	! A2  = -1.24999999997314110667e-01
39*25c28e83SPiotr Jasiukajtis	.word	0x3fafffff, 0xfffb5bfb	! A3  =  6.24999999978896565817e-02
40*25c28e83SPiotr Jasiukajtis	.word	0xbfa4000f, 0xc00b4fc8	! A4  = -3.90629693917215481458e-02
41*25c28e83SPiotr Jasiukajtis	.word	0x3f9c0018, 0xc012da4e	! A5  =  2.73441188080261677282e-02
42*25c28e83SPiotr Jasiukajtis	.word	0x000fffff, 0xffffffff	! DC0 =  0x000fffffffffffff
43*25c28e83SPiotr Jasiukajtis	.word	0x00001000, 0x00000000	! DC2 =  0x0000100000000000
44*25c28e83SPiotr Jasiukajtis	.word	0x7fffe000, 0x00000000	! DC3 =  0x7fffe00000000000
45*25c28e83SPiotr Jasiukajtis
46*25c28e83SPiotr Jasiukajtis! i = [0,128]
47*25c28e83SPiotr Jasiukajtis! TBL[8*i+0] = 1.0 / (*(double*)&(0x3fe0000000000000LL + (i << 45)));
48*25c28e83SPiotr Jasiukajtis! TBL[8*i+1] = (double)(2.0 * sqrtl(*(double*)&(0x3fe0000000000000LL + (i << 45))));
49*25c28e83SPiotr Jasiukajtis! TBL[8*i+2] = (double)(2.0 * sqrtl(*(double*)&(0x3fe0000000000000LL + (i << 45))) - TBL[8*i+1]);
50*25c28e83SPiotr Jasiukajtis! TBL[8*i+3] = 0
51*25c28e83SPiotr Jasiukajtis! TBL[8*i+4] = 1.0 / (*(double*)&(0x3fe0000000000000LL + (i << 45)));
52*25c28e83SPiotr Jasiukajtis! TBL[8*i+5] = (double)(2.0 * sqrtl(2.0) * sqrtl(*(double*)&(0x3fe0000000000000LL + (i << 45))));
53*25c28e83SPiotr Jasiukajtis! TBL[8*i+6] = (double)(2.0 * sqrtl(2.0) * sqrtl(*(double*)&(0x3fe0000000000000LL + (i << 45))) - TBL[8*i+5]);
54*25c28e83SPiotr Jasiukajtis! TBL[8*i+7] = 0
55*25c28e83SPiotr Jasiukajtis
56*25c28e83SPiotr Jasiukajtis	.word	0x40000000, 0x00000000, 0x3ff6a09e, 0x667f3bcd
57*25c28e83SPiotr Jasiukajtis	.word	0xbc9bdd34, 0x13b26456, 0x00000000, 0x00000000
58*25c28e83SPiotr Jasiukajtis	.word	0x40000000, 0x00000000, 0x40000000, 0x00000000
59*25c28e83SPiotr Jasiukajtis	.word	0xb8f00000, 0x00000000, 0x00000000, 0x00000000
60*25c28e83SPiotr Jasiukajtis	.word	0x3fffc07f, 0x01fc07f0, 0x3ff6b733, 0xbfd8c648
61*25c28e83SPiotr Jasiukajtis	.word	0x3c53b629, 0x05629048, 0x00000000, 0x00000000
62*25c28e83SPiotr Jasiukajtis	.word	0x3fffc07f, 0x01fc07f0, 0x40000ff8, 0x07f60deb
63*25c28e83SPiotr Jasiukajtis	.word	0x3c90655c, 0x648a53f1, 0x00000000, 0x00000000
64*25c28e83SPiotr Jasiukajtis	.word	0x3fff81f8, 0x1f81f820, 0x3ff6cdb2, 0xbbb212eb
65*25c28e83SPiotr Jasiukajtis	.word	0x3c960332, 0xcdbaba2d, 0x00000000, 0x00000000
66*25c28e83SPiotr Jasiukajtis	.word	0x3fff81f8, 0x1f81f820, 0x40001fe0, 0x3f61bad0
67*25c28e83SPiotr Jasiukajtis	.word	0x3ca2c41a, 0x15cbfaf2, 0x00000000, 0x00000000
68*25c28e83SPiotr Jasiukajtis	.word	0x3fff4465, 0x9e4a4271, 0x3ff6e41b, 0x9bfb3b75
69*25c28e83SPiotr Jasiukajtis	.word	0xbc925d8c, 0xfd6d5c87, 0x00000000, 0x00000000
70*25c28e83SPiotr Jasiukajtis	.word	0x3fff4465, 0x9e4a4271, 0x40002fb8, 0xd4e30f48
71*25c28e83SPiotr Jasiukajtis	.word	0xbca64203, 0xab1ba910, 0x00000000, 0x00000000
72*25c28e83SPiotr Jasiukajtis	.word	0x3fff07c1, 0xf07c1f08, 0x3ff6fa6e, 0xa162d0f0
73*25c28e83SPiotr Jasiukajtis	.word	0x3c691a24, 0x3d6297e9, 0x00000000, 0x00000000
74*25c28e83SPiotr Jasiukajtis	.word	0x3fff07c1, 0xf07c1f08, 0x40003f81, 0xf636b80c
75*25c28e83SPiotr Jasiukajtis	.word	0xbca0efc8, 0xba812a8c, 0x00000000, 0x00000000
76*25c28e83SPiotr Jasiukajtis	.word	0x3ffecc07, 0xb301ecc0, 0x3ff710ac, 0x0b5e5e32
77*25c28e83SPiotr Jasiukajtis	.word	0xbc991218, 0xb8d2850d, 0x00000000, 0x00000000
78*25c28e83SPiotr Jasiukajtis	.word	0x3ffecc07, 0xb301ecc0, 0x40004f3b, 0xd03c0a64
79*25c28e83SPiotr Jasiukajtis	.word	0x3c9ee2cf, 0x2d8ae22b, 0x00000000, 0x00000000
80*25c28e83SPiotr Jasiukajtis	.word	0x3ffe9131, 0xabf0b767, 0x3ff726d4, 0x1832a0be
81*25c28e83SPiotr Jasiukajtis	.word	0xbc2d9b1a, 0xa8ecb058, 0x00000000, 0x00000000
82*25c28e83SPiotr Jasiukajtis	.word	0x3ffe9131, 0xabf0b767, 0x40005ee6, 0x8efad48b
83*25c28e83SPiotr Jasiukajtis	.word	0xbc9c35f4, 0x8f4b89f7, 0x00000000, 0x00000000
84*25c28e83SPiotr Jasiukajtis	.word	0x3ffe573a, 0xc901e574, 0x3ff73ce7, 0x04fb7b23
85*25c28e83SPiotr Jasiukajtis	.word	0x3c91470b, 0x816b17a6, 0x00000000, 0x00000000
86*25c28e83SPiotr Jasiukajtis	.word	0x3ffe573a, 0xc901e574, 0x40006e82, 0x5da8fc2b
87*25c28e83SPiotr Jasiukajtis	.word	0x3c9a315a, 0x8bd8a03b, 0x00000000, 0x00000000
88*25c28e83SPiotr Jasiukajtis	.word	0x3ffe1e1e, 0x1e1e1e1e, 0x3ff752e5, 0x0db3a3a2
89*25c28e83SPiotr Jasiukajtis	.word	0xbc939331, 0x3eea4381, 0x00000000, 0x00000000
90*25c28e83SPiotr Jasiukajtis	.word	0x3ffe1e1e, 0x1e1e1e1e, 0x40007e0f, 0x66afed07
91*25c28e83SPiotr Jasiukajtis	.word	0xbc74a6e1, 0xdcd59eaf, 0x00000000, 0x00000000
92*25c28e83SPiotr Jasiukajtis	.word	0x3ffde5d6, 0xe3f8868a, 0x3ff768ce, 0x6d3c11e0
93*25c28e83SPiotr Jasiukajtis	.word	0xbc9478b8, 0xab33074d, 0x00000000, 0x00000000
94*25c28e83SPiotr Jasiukajtis	.word	0x3ffde5d6, 0xe3f8868a, 0x40008d8d, 0xd3b1d9aa
95*25c28e83SPiotr Jasiukajtis	.word	0x3c81d533, 0x85fe2b96, 0x00000000, 0x00000000
96*25c28e83SPiotr Jasiukajtis	.word	0x3ffdae60, 0x76b981db, 0x3ff77ea3, 0x5d632e43
97*25c28e83SPiotr Jasiukajtis	.word	0x3c92f714, 0x9a22fa4f, 0x00000000, 0x00000000
98*25c28e83SPiotr Jasiukajtis	.word	0x3ffdae60, 0x76b981db, 0x40009cfd, 0xcd8ed009
99*25c28e83SPiotr Jasiukajtis	.word	0xbc4862a9, 0xbcf7f372, 0x00000000, 0x00000000
100*25c28e83SPiotr Jasiukajtis	.word	0x3ffd77b6, 0x54b82c34, 0x3ff79464, 0x16ebc56c
101*25c28e83SPiotr Jasiukajtis	.word	0x3c9a7cd5, 0x224c7375, 0x00000000, 0x00000000
102*25c28e83SPiotr Jasiukajtis	.word	0x3ffd77b6, 0x54b82c34, 0x4000ac5f, 0x7c69a3c8
103*25c28e83SPiotr Jasiukajtis	.word	0x3ca94dff, 0x7bfa2757, 0x00000000, 0x00000000
104*25c28e83SPiotr Jasiukajtis	.word	0x3ffd41d4, 0x1d41d41d, 0x3ff7aa10, 0xd193c22d
105*25c28e83SPiotr Jasiukajtis	.word	0xbc790ed9, 0x403afe85, 0x00000000, 0x00000000
106*25c28e83SPiotr Jasiukajtis	.word	0x3ffd41d4, 0x1d41d41d, 0x4000bbb3, 0x07acafdb
107*25c28e83SPiotr Jasiukajtis	.word	0xbc852a97, 0x686f9d2e, 0x00000000, 0x00000000
108*25c28e83SPiotr Jasiukajtis	.word	0x3ffd0cb5, 0x8f6ec074, 0x3ff7bfa9, 0xc41ab040
109*25c28e83SPiotr Jasiukajtis	.word	0x3c8d6bc3, 0x02ae758f, 0x00000000, 0x00000000
110*25c28e83SPiotr Jasiukajtis	.word	0x3ffd0cb5, 0x8f6ec074, 0x4000caf8, 0x960e710d
111*25c28e83SPiotr Jasiukajtis	.word	0x3c9caa6b, 0xe2366171, 0x00000000, 0x00000000
112*25c28e83SPiotr Jasiukajtis	.word	0x3ffcd856, 0x89039b0b, 0x3ff7d52f, 0x244809e9
113*25c28e83SPiotr Jasiukajtis	.word	0x3c9081f6, 0xf3b99d5f, 0x00000000, 0x00000000
114*25c28e83SPiotr Jasiukajtis	.word	0x3ffcd856, 0x89039b0b, 0x4000da30, 0x4d95fb06
115*25c28e83SPiotr Jasiukajtis	.word	0xbc9e1269, 0x76855586, 0x00000000, 0x00000000
116*25c28e83SPiotr Jasiukajtis	.word	0x3ffca4b3, 0x055ee191, 0x3ff7eaa1, 0x26f15284
117*25c28e83SPiotr Jasiukajtis	.word	0xbc846ce4, 0x68c1882b, 0x00000000, 0x00000000
118*25c28e83SPiotr Jasiukajtis	.word	0x3ffca4b3, 0x055ee191, 0x4000e95a, 0x539f492c
119*25c28e83SPiotr Jasiukajtis	.word	0xbc80c73f, 0xc38a2184, 0x00000000, 0x00000000
120*25c28e83SPiotr Jasiukajtis	.word	0x3ffc71c7, 0x1c71c71c, 0x3ff80000, 0x00000000
121*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
122*25c28e83SPiotr Jasiukajtis	.word	0x3ffc71c7, 0x1c71c71c, 0x4000f876, 0xccdf6cd9
123*25c28e83SPiotr Jasiukajtis	.word	0x3cab1a18, 0xf13a34c0, 0x00000000, 0x00000000
124*25c28e83SPiotr Jasiukajtis	.word	0x3ffc3f8f, 0x01c3f8f0, 0x3ff8154b, 0xe2773526
125*25c28e83SPiotr Jasiukajtis	.word	0xbc857147, 0xe067d0ee, 0x00000000, 0x00000000
126*25c28e83SPiotr Jasiukajtis	.word	0x3ffc3f8f, 0x01c3f8f0, 0x40010785, 0xdd689a29
127*25c28e83SPiotr Jasiukajtis	.word	0xbcaaabbe, 0x9e4d810a, 0x00000000, 0x00000000
128*25c28e83SPiotr Jasiukajtis	.word	0x3ffc0e07, 0x0381c0e0, 0x3ff82a85, 0x00794e6c
129*25c28e83SPiotr Jasiukajtis	.word	0xbc82edaa, 0x75e6ac5f, 0x00000000, 0x00000000
130*25c28e83SPiotr Jasiukajtis	.word	0x3ffc0e07, 0x0381c0e0, 0x40011687, 0xa8ae14a3
131*25c28e83SPiotr Jasiukajtis	.word	0x3cac9b43, 0xbcf06106, 0x00000000, 0x00000000
132*25c28e83SPiotr Jasiukajtis	.word	0x3ffbdd2b, 0x899406f7, 0x3ff83fab, 0x8b4d4315
133*25c28e83SPiotr Jasiukajtis	.word	0x3c829e06, 0x2d3e134d, 0x00000000, 0x00000000
134*25c28e83SPiotr Jasiukajtis	.word	0x3ffbdd2b, 0x899406f7, 0x4001257c, 0x5187fd09
135*25c28e83SPiotr Jasiukajtis	.word	0xbca4a750, 0xa83950a4, 0x00000000, 0x00000000
136*25c28e83SPiotr Jasiukajtis	.word	0x3ffbacf9, 0x14c1bad0, 0x3ff854bf, 0xb363dc39
137*25c28e83SPiotr Jasiukajtis	.word	0x3c99399f, 0xca38787e, 0x00000000, 0x00000000
138*25c28e83SPiotr Jasiukajtis	.word	0x3ffbacf9, 0x14c1bad0, 0x40013463, 0xfa37014e
139*25c28e83SPiotr Jasiukajtis	.word	0x3c7b295b, 0xaa698cd3, 0x00000000, 0x00000000
140*25c28e83SPiotr Jasiukajtis	.word	0x3ffb7d6c, 0x3dda338b, 0x3ff869c1, 0xa85cc346
141*25c28e83SPiotr Jasiukajtis	.word	0x3c9fcc99, 0xde11b1d1, 0x00000000, 0x00000000
142*25c28e83SPiotr Jasiukajtis	.word	0x3ffb7d6c, 0x3dda338b, 0x4001433e, 0xc467effb
143*25c28e83SPiotr Jasiukajtis	.word	0x3c92c031, 0x3b7278c8, 0x00000000, 0x00000000
144*25c28e83SPiotr Jasiukajtis	.word	0x3ffb4e81, 0xb4e81b4f, 0x3ff87eb1, 0x990b697a
145*25c28e83SPiotr Jasiukajtis	.word	0x3c7c43e9, 0xf593ea0f, 0x00000000, 0x00000000
146*25c28e83SPiotr Jasiukajtis	.word	0x3ffb4e81, 0xb4e81b4f, 0x4001520c, 0xd1372feb
147*25c28e83SPiotr Jasiukajtis	.word	0xbcadec22, 0x5d8e66d2, 0x00000000, 0x00000000
148*25c28e83SPiotr Jasiukajtis	.word	0x3ffb2036, 0x406c80d9, 0x3ff8938f, 0xb37bc9c1
149*25c28e83SPiotr Jasiukajtis	.word	0xbc7c115f, 0x9f5c8d6f, 0x00000000, 0x00000000
150*25c28e83SPiotr Jasiukajtis	.word	0x3ffb2036, 0x406c80d9, 0x400160ce, 0x41341d74
151*25c28e83SPiotr Jasiukajtis	.word	0x3c967036, 0x863a1bb2, 0x00000000, 0x00000000
152*25c28e83SPiotr Jasiukajtis	.word	0x3ffaf286, 0xbca1af28, 0x3ff8a85c, 0x24f70659
153*25c28e83SPiotr Jasiukajtis	.word	0x3c9f6e07, 0x6b588a50, 0x00000000, 0x00000000
154*25c28e83SPiotr Jasiukajtis	.word	0x3ffaf286, 0xbca1af28, 0x40016f83, 0x34644df9
155*25c28e83SPiotr Jasiukajtis	.word	0xbcae8679, 0x80a1c48e, 0x00000000, 0x00000000
156*25c28e83SPiotr Jasiukajtis	.word	0x3ffac570, 0x1ac5701b, 0x3ff8bd17, 0x1a07e38a
157*25c28e83SPiotr Jasiukajtis	.word	0x3c9c20b5, 0xa697f23f, 0x00000000, 0x00000000
158*25c28e83SPiotr Jasiukajtis	.word	0x3ffac570, 0x1ac5701b, 0x40017e2b, 0xca46bab9
159*25c28e83SPiotr Jasiukajtis	.word	0x3ca1519b, 0x10d04d5f, 0x00000000, 0x00000000
160*25c28e83SPiotr Jasiukajtis	.word	0x3ffa98ef, 0x606a63be, 0x3ff8d1c0, 0xbe7f20ac
161*25c28e83SPiotr Jasiukajtis	.word	0xbc8bdb8a, 0x6df021f3, 0x00000000, 0x00000000
162*25c28e83SPiotr Jasiukajtis	.word	0x3ffa98ef, 0x606a63be, 0x40018cc8, 0x21d6d3e3
163*25c28e83SPiotr Jasiukajtis	.word	0xbca30af1, 0xd725cc5b, 0x00000000, 0x00000000
164*25c28e83SPiotr Jasiukajtis	.word	0x3ffa6d01, 0xa6d01a6d, 0x3ff8e659, 0x3d77b0b8
165*25c28e83SPiotr Jasiukajtis	.word	0xbc7d99d7, 0x64769954, 0x00000000, 0x00000000
166*25c28e83SPiotr Jasiukajtis	.word	0x3ffa6d01, 0xa6d01a6d, 0x40019b58, 0x598f7c9f
167*25c28e83SPiotr Jasiukajtis	.word	0xbc72e0d8, 0x51c0e011, 0x00000000, 0x00000000
168*25c28e83SPiotr Jasiukajtis	.word	0x3ffa41a4, 0x1a41a41a, 0x3ff8fae0, 0xc15ad38a
169*25c28e83SPiotr Jasiukajtis	.word	0xbc7db7ad, 0xb6817f6d, 0x00000000, 0x00000000
170*25c28e83SPiotr Jasiukajtis	.word	0x3ffa41a4, 0x1a41a41a, 0x4001a9dc, 0x8f6df104
171*25c28e83SPiotr Jasiukajtis	.word	0xbcafc519, 0xc18dc1d5, 0x00000000, 0x00000000
172*25c28e83SPiotr Jasiukajtis	.word	0x3ffa16d3, 0xf97a4b02, 0x3ff90f57, 0x73e410e4
173*25c28e83SPiotr Jasiukajtis	.word	0x3c6fb605, 0xcee75482, 0x00000000, 0x00000000
174*25c28e83SPiotr Jasiukajtis	.word	0x3ffa16d3, 0xf97a4b02, 0x4001b854, 0xe0f496a0
175*25c28e83SPiotr Jasiukajtis	.word	0x3ca27006, 0x899b7c3a, 0x00000000, 0x00000000
176*25c28e83SPiotr Jasiukajtis	.word	0x3ff9ec8e, 0x951033d9, 0x3ff923bd, 0x7e25164d
177*25c28e83SPiotr Jasiukajtis	.word	0xbc9278d1, 0x901d3b40, 0x00000000, 0x00000000
178*25c28e83SPiotr Jasiukajtis	.word	0x3ff9ec8e, 0x951033d9, 0x4001c6c1, 0x6b2db870
179*25c28e83SPiotr Jasiukajtis	.word	0x3c887e1d, 0x8335fb28, 0x00000000, 0x00000000
180*25c28e83SPiotr Jasiukajtis	.word	0x3ff9c2d1, 0x4ee4a102, 0x3ff93813, 0x088978c5
181*25c28e83SPiotr Jasiukajtis	.word	0xbc54312c, 0x627e5c52, 0x00000000, 0x00000000
182*25c28e83SPiotr Jasiukajtis	.word	0x3ff9c2d1, 0x4ee4a102, 0x4001d522, 0x4aae2ee1
183*25c28e83SPiotr Jasiukajtis	.word	0x3ca91222, 0xf6aebdc9, 0x00000000, 0x00000000
184*25c28e83SPiotr Jasiukajtis	.word	0x3ff99999, 0x9999999a, 0x3ff94c58, 0x3ada5b53
185*25c28e83SPiotr Jasiukajtis	.word	0xbc9b7ed7, 0x50df3cca, 0x00000000, 0x00000000
186*25c28e83SPiotr Jasiukajtis	.word	0x3ff99999, 0x9999999a, 0x4001e377, 0x9b97f4a8
187*25c28e83SPiotr Jasiukajtis	.word	0xbc9f5063, 0x19fcfd19, 0x00000000, 0x00000000
188*25c28e83SPiotr Jasiukajtis	.word	0x3ff970e4, 0xf80cb872, 0x3ff9608d, 0x3c41fb4b
189*25c28e83SPiotr Jasiukajtis	.word	0x3c73df32, 0xeaa86b83, 0x00000000, 0x00000000
190*25c28e83SPiotr Jasiukajtis	.word	0x3ff970e4, 0xf80cb872, 0x4001f1c1, 0x799ca8ff
191*25c28e83SPiotr Jasiukajtis	.word	0xbca28b52, 0xeb725e0a, 0x00000000, 0x00000000
192*25c28e83SPiotr Jasiukajtis	.word	0x3ff948b0, 0xfcd6e9e0, 0x3ff974b2, 0x334f2346
193*25c28e83SPiotr Jasiukajtis	.word	0x3c814e4a, 0xd3ae9e3f, 0x00000000, 0x00000000
194*25c28e83SPiotr Jasiukajtis	.word	0x3ff948b0, 0xfcd6e9e0, 0x40020000, 0x00000000
195*25c28e83SPiotr Jasiukajtis	.word	0xb9000000, 0x00000000, 0x00000000, 0x00000000
196*25c28e83SPiotr Jasiukajtis	.word	0x3ff920fb, 0x49d0e229, 0x3ff988c7, 0x45f88592
197*25c28e83SPiotr Jasiukajtis	.word	0x3c95af70, 0x1a56047b, 0x00000000, 0x00000000
198*25c28e83SPiotr Jasiukajtis	.word	0x3ff920fb, 0x49d0e229, 0x40020e33, 0x499a21a9
199*25c28e83SPiotr Jasiukajtis	.word	0xbc924ba2, 0x74fea9a1, 0x00000000, 0x00000000
200*25c28e83SPiotr Jasiukajtis	.word	0x3ff8f9c1, 0x8f9c18fa, 0x3ff99ccc, 0x999fff00
201*25c28e83SPiotr Jasiukajtis	.word	0x3c866234, 0x063b88ee, 0x00000000, 0x00000000
202*25c28e83SPiotr Jasiukajtis	.word	0x3ff8f9c1, 0x8f9c18fa, 0x40021c5b, 0x70d9f824
203*25c28e83SPiotr Jasiukajtis	.word	0xbca844f9, 0x9eee6fc3, 0x00000000, 0x00000000
204*25c28e83SPiotr Jasiukajtis	.word	0x3ff8d301, 0x8d3018d3, 0x3ff9b0c2, 0x5315c2ce
205*25c28e83SPiotr Jasiukajtis	.word	0xbc87f64a, 0x65cc6887, 0x00000000, 0x00000000
206*25c28e83SPiotr Jasiukajtis	.word	0x3ff8d301, 0x8d3018d3, 0x40022a78, 0x8fc76de5
207*25c28e83SPiotr Jasiukajtis	.word	0x3c931e32, 0xd4e07a48, 0x00000000, 0x00000000
208*25c28e83SPiotr Jasiukajtis	.word	0x3ff8acb9, 0x0f6bf3aa, 0x3ff9c4a8, 0x969b7077
209*25c28e83SPiotr Jasiukajtis	.word	0xbc96ca9e, 0x5cd4517a, 0x00000000, 0x00000000
210*25c28e83SPiotr Jasiukajtis	.word	0x3ff8acb9, 0x0f6bf3aa, 0x4002388a, 0xc0059c28
211*25c28e83SPiotr Jasiukajtis	.word	0xbc96072f, 0xbe0e5da3, 0x00000000, 0x00000000
212*25c28e83SPiotr Jasiukajtis	.word	0x3ff886e5, 0xf0abb04a, 0x3ff9d87f, 0x87e71422
213*25c28e83SPiotr Jasiukajtis	.word	0xbc85fdd8, 0xb11b7b1d, 0x00000000, 0x00000000
214*25c28e83SPiotr Jasiukajtis	.word	0x3ff886e5, 0xf0abb04a, 0x40024692, 0x1ad4ea49
215*25c28e83SPiotr Jasiukajtis	.word	0xbcaa6d9b, 0x268ef62d, 0x00000000, 0x00000000
216*25c28e83SPiotr Jasiukajtis	.word	0x3ff86186, 0x18618618, 0x3ff9ec47, 0x4a261264
217*25c28e83SPiotr Jasiukajtis	.word	0xbc8540c4, 0x89ba5074, 0x00000000, 0x00000000
218*25c28e83SPiotr Jasiukajtis	.word	0x3ff86186, 0x18618618, 0x4002548e, 0xb9151e85
219*25c28e83SPiotr Jasiukajtis	.word	0x3c999820, 0x0a774879, 0x00000000, 0x00000000
220*25c28e83SPiotr Jasiukajtis	.word	0x3ff83c97, 0x7ab2bedd, 0x3ffa0000, 0x00000000
221*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
222*25c28e83SPiotr Jasiukajtis	.word	0x3ff83c97, 0x7ab2bedd, 0x40026280, 0xb3476096
223*25c28e83SPiotr Jasiukajtis	.word	0x3c9ab88b, 0x5ffe1cf5, 0x00000000, 0x00000000
224*25c28e83SPiotr Jasiukajtis	.word	0x3ff81818, 0x18181818, 0x3ffa13a9, 0xcb996651
225*25c28e83SPiotr Jasiukajtis	.word	0xbc9f9ab9, 0x0e4e85c3, 0x00000000, 0x00000000
226*25c28e83SPiotr Jasiukajtis	.word	0x3ff81818, 0x18181818, 0x40027068, 0x21902e9a
227*25c28e83SPiotr Jasiukajtis	.word	0x3c90ff4c, 0x20f541f6, 0x00000000, 0x00000000
228*25c28e83SPiotr Jasiukajtis	.word	0x3ff7f405, 0xfd017f40, 0x3ffa2744, 0xce9674f5
229*25c28e83SPiotr Jasiukajtis	.word	0xbc8b936c, 0x81e54daa, 0x00000000, 0x00000000
230*25c28e83SPiotr Jasiukajtis	.word	0x3ff7f405, 0xfd017f40, 0x40027e45, 0x1bb944c3
231*25c28e83SPiotr Jasiukajtis	.word	0x3c8e4a16, 0x42099ef0, 0x00000000, 0x00000000
232*25c28e83SPiotr Jasiukajtis	.word	0x3ff7d05f, 0x417d05f4, 0x3ffa3ad1, 0x2a1da160
233*25c28e83SPiotr Jasiukajtis	.word	0x3c951168, 0xf4be5984, 0x00000000, 0x00000000
234*25c28e83SPiotr Jasiukajtis	.word	0x3ff7d05f, 0x417d05f4, 0x40028c17, 0xb9337834
235*25c28e83SPiotr Jasiukajtis	.word	0xbc8af150, 0xa0e88972, 0x00000000, 0x00000000
236*25c28e83SPiotr Jasiukajtis	.word	0x3ff7ad22, 0x08e0ecc3, 0x3ffa4e4e, 0xfeda34de
237*25c28e83SPiotr Jasiukajtis	.word	0x3c6afbb4, 0xdbdadd0d, 0x00000000, 0x00000000
238*25c28e83SPiotr Jasiukajtis	.word	0x3ff7ad22, 0x08e0ecc3, 0x400299e0, 0x11188575
239*25c28e83SPiotr Jasiukajtis	.word	0xbc9a6169, 0x3fb250e5, 0x00000000, 0x00000000
240*25c28e83SPiotr Jasiukajtis	.word	0x3ff78a4c, 0x8178a4c8, 0x3ffa61be, 0x6cfec997
241*25c28e83SPiotr Jasiukajtis	.word	0xbc8c37ea, 0xb2bb5ca0, 0x00000000, 0x00000000
242*25c28e83SPiotr Jasiukajtis	.word	0x3ff78a4c, 0x8178a4c8, 0x4002a79e, 0x3a2cd2e6
243*25c28e83SPiotr Jasiukajtis	.word	0xbca5ddd4, 0x9cc9ad59, 0x00000000, 0x00000000
244*25c28e83SPiotr Jasiukajtis	.word	0x3ff767dc, 0xe434a9b1, 0x3ffa751f, 0x9447b724
245*25c28e83SPiotr Jasiukajtis	.word	0x3c82b909, 0x477e9ed1, 0x00000000, 0x00000000
246*25c28e83SPiotr Jasiukajtis	.word	0x3ff767dc, 0xe434a9b1, 0x4002b552, 0x4ae1278e
247*25c28e83SPiotr Jasiukajtis	.word	0xbca2f2a9, 0x8841b934, 0x00000000, 0x00000000
248*25c28e83SPiotr Jasiukajtis	.word	0x3ff745d1, 0x745d1746, 0x3ffa8872, 0x93fd6f34
249*25c28e83SPiotr Jasiukajtis	.word	0x3c768ef2, 0x4f198721, 0x00000000, 0x00000000
250*25c28e83SPiotr Jasiukajtis	.word	0x3ff745d1, 0x745d1746, 0x4002c2fc, 0x595456a7
251*25c28e83SPiotr Jasiukajtis	.word	0xbc996f60, 0xb0fc7e96, 0x00000000, 0x00000000
252*25c28e83SPiotr Jasiukajtis	.word	0x3ff72428, 0x7f46debc, 0x3ffa9bb7, 0x8af6cabc
253*25c28e83SPiotr Jasiukajtis	.word	0x3c8ba60d, 0xc999aba7, 0x00000000, 0x00000000
254*25c28e83SPiotr Jasiukajtis	.word	0x3ff72428, 0x7f46debc, 0x4002d09c, 0x7b54e03e
255*25c28e83SPiotr Jasiukajtis	.word	0x3c98c747, 0xfdeda6de, 0x00000000, 0x00000000
256*25c28e83SPiotr Jasiukajtis	.word	0x3ff702e0, 0x5c0b8170, 0x3ffaaeee, 0x979b4838
257*25c28e83SPiotr Jasiukajtis	.word	0xbc91f08a, 0xef9ef6c0, 0x00000000, 0x00000000
258*25c28e83SPiotr Jasiukajtis	.word	0x3ff702e0, 0x5c0b8170, 0x4002de32, 0xc6628741
259*25c28e83SPiotr Jasiukajtis	.word	0x3ca78746, 0xc499a4f7, 0x00000000, 0x00000000
260*25c28e83SPiotr Jasiukajtis	.word	0x3ff6e1f7, 0x6b4337c7, 0x3ffac217, 0xd7e53b66
261*25c28e83SPiotr Jasiukajtis	.word	0xbc64282a, 0xaa967e4f, 0x00000000, 0x00000000
262*25c28e83SPiotr Jasiukajtis	.word	0x3ff6e1f7, 0x6b4337c7, 0x4002ebbf, 0x4fafdd4b
263*25c28e83SPiotr Jasiukajtis	.word	0xbca78a73, 0xb72d5c41, 0x00000000, 0x00000000
264*25c28e83SPiotr Jasiukajtis	.word	0x3ff6c16c, 0x16c16c17, 0x3ffad533, 0x6963eefc
265*25c28e83SPiotr Jasiukajtis	.word	0xbc977c4a, 0x537dbdd2, 0x00000000, 0x00000000
266*25c28e83SPiotr Jasiukajtis	.word	0x3ff6c16c, 0x16c16c17, 0x4002f942, 0x2c23c47e
267*25c28e83SPiotr Jasiukajtis	.word	0xbc827c85, 0xf29db65d, 0x00000000, 0x00000000
268*25c28e83SPiotr Jasiukajtis	.word	0x3ff6a13c, 0xd1537290, 0x3ffae841, 0x693db8b4
269*25c28e83SPiotr Jasiukajtis	.word	0x3c90f773, 0xcd7a0713, 0x00000000, 0x00000000
270*25c28e83SPiotr Jasiukajtis	.word	0x3ff6a13c, 0xd1537290, 0x400306bb, 0x705ae7c3
271*25c28e83SPiotr Jasiukajtis	.word	0x3caf4933, 0x907af47a, 0x00000000, 0x00000000
272*25c28e83SPiotr Jasiukajtis	.word	0x3ff68168, 0x16816817, 0x3ffafb41, 0xf432002e
273*25c28e83SPiotr Jasiukajtis	.word	0xbc7ac94a, 0xfdfe8c5b, 0x00000000, 0x00000000
274*25c28e83SPiotr Jasiukajtis	.word	0x3ff68168, 0x16816817, 0x4003142b, 0x30a929ab
275*25c28e83SPiotr Jasiukajtis	.word	0x3c98dc01, 0x081a6c5c, 0x00000000, 0x00000000
276*25c28e83SPiotr Jasiukajtis	.word	0x3ff661ec, 0x6a5122f9, 0x3ffb0e35, 0x269b38f5
277*25c28e83SPiotr Jasiukajtis	.word	0xbc4f69a8, 0x05c3271a, 0x00000000, 0x00000000
278*25c28e83SPiotr Jasiukajtis	.word	0x3ff661ec, 0x6a5122f9, 0x40032191, 0x811b0a41
279*25c28e83SPiotr Jasiukajtis	.word	0xbc9ce3f0, 0xb38c0bf7, 0x00000000, 0x00000000
280*25c28e83SPiotr Jasiukajtis	.word	0x3ff642c8, 0x590b2164, 0x3ffb211b, 0x1c70d023
281*25c28e83SPiotr Jasiukajtis	.word	0x3c2e4c5e, 0x66eae2f0, 0x00000000, 0x00000000
282*25c28e83SPiotr Jasiukajtis	.word	0x3ff642c8, 0x590b2164, 0x40032eee, 0x75770416
283*25c28e83SPiotr Jasiukajtis	.word	0x3caed8e7, 0x730eaff2, 0x00000000, 0x00000000
284*25c28e83SPiotr Jasiukajtis	.word	0x3ff623fa, 0x77016240, 0x3ffb33f3, 0xf1490def
285*25c28e83SPiotr Jasiukajtis	.word	0xbc95894b, 0xcb02373b, 0x00000000, 0x00000000
286*25c28e83SPiotr Jasiukajtis	.word	0x3ff623fa, 0x77016240, 0x40033c42, 0x213ee0c9
287*25c28e83SPiotr Jasiukajtis	.word	0x3ca84c24, 0x4ba98124, 0x00000000, 0x00000000
288*25c28e83SPiotr Jasiukajtis	.word	0x3ff60581, 0x60581606, 0x3ffb46bf, 0xc05aeb89
289*25c28e83SPiotr Jasiukajtis	.word	0x3c9b1c7c, 0xc39adc9f, 0x00000000, 0x00000000
290*25c28e83SPiotr Jasiukajtis	.word	0x3ff60581, 0x60581606, 0x4003498c, 0x97b10540
291*25c28e83SPiotr Jasiukajtis	.word	0x3c734193, 0xbc8543b4, 0x00000000, 0x00000000
292*25c28e83SPiotr Jasiukajtis	.word	0x3ff5e75b, 0xb8d015e7, 0x3ffb597e, 0xa47fdda3
293*25c28e83SPiotr Jasiukajtis	.word	0xbc923cc8, 0x9d1e4635, 0x00000000, 0x00000000
294*25c28e83SPiotr Jasiukajtis	.word	0x3ff5e75b, 0xb8d015e7, 0x400356cd, 0xebc9b5e2
295*25c28e83SPiotr Jasiukajtis	.word	0x3c96dee1, 0x46bb1571, 0x00000000, 0x00000000
296*25c28e83SPiotr Jasiukajtis	.word	0x3ff5c988, 0x2b931057, 0x3ffb6c30, 0xb83593e6
297*25c28e83SPiotr Jasiukajtis	.word	0x3c8f4e3f, 0xd28d84bc, 0x00000000, 0x00000000
298*25c28e83SPiotr Jasiukajtis	.word	0x3ff5c988, 0x2b931057, 0x40036406, 0x30445306
299*25c28e83SPiotr Jasiukajtis	.word	0xbca78d86, 0x2327430a, 0x00000000, 0x00000000
300*25c28e83SPiotr Jasiukajtis	.word	0x3ff5ac05, 0x6b015ac0, 0x3ffb7ed6, 0x159fadc8
301*25c28e83SPiotr Jasiukajtis	.word	0xbc899bcf, 0xf04d134b, 0x00000000, 0x00000000
302*25c28e83SPiotr Jasiukajtis	.word	0x3ff5ac05, 0x6b015ac0, 0x40037135, 0x779c8dcb
303*25c28e83SPiotr Jasiukajtis	.word	0xbc8fe126, 0xce9778ae, 0x00000000, 0x00000000
304*25c28e83SPiotr Jasiukajtis	.word	0x3ff58ed2, 0x308158ed, 0x3ffb916e, 0xd68964ec
305*25c28e83SPiotr Jasiukajtis	.word	0x3c826a5d, 0x5dbaae29, 0x00000000, 0x00000000
306*25c28e83SPiotr Jasiukajtis	.word	0x3ff58ed2, 0x308158ed, 0x40037e5b, 0xd40f95a1
307*25c28e83SPiotr Jasiukajtis	.word	0x3cac6ff5, 0xeca5d122, 0x00000000, 0x00000000
308*25c28e83SPiotr Jasiukajtis	.word	0x3ff571ed, 0x3c506b3a, 0x3ffba3fb, 0x14672d7c
309*25c28e83SPiotr Jasiukajtis	.word	0xbc8117d3, 0x97dcefc9, 0x00000000, 0x00000000
310*25c28e83SPiotr Jasiukajtis	.word	0x3ff571ed, 0x3c506b3a, 0x40038b79, 0x579d3eab
311*25c28e83SPiotr Jasiukajtis	.word	0xbcac254f, 0xc0db598e, 0x00000000, 0x00000000
312*25c28e83SPiotr Jasiukajtis	.word	0x3ff55555, 0x55555555, 0x3ffbb67a, 0xe8584caa
313*25c28e83SPiotr Jasiukajtis	.word	0x3c9cec95, 0xd0b5c1e3, 0x00000000, 0x00000000
314*25c28e83SPiotr Jasiukajtis	.word	0x3ff55555, 0x55555555, 0x4003988e, 0x1409212e
315*25c28e83SPiotr Jasiukajtis	.word	0x3caf40c8, 0x6450c869, 0x00000000, 0x00000000
316*25c28e83SPiotr Jasiukajtis	.word	0x3ff53909, 0x48f40feb, 0x3ffbc8ee, 0x6b2865b9
317*25c28e83SPiotr Jasiukajtis	.word	0x3c9394eb, 0x90f645c8, 0x00000000, 0x00000000
318*25c28e83SPiotr Jasiukajtis	.word	0x3ff53909, 0x48f40feb, 0x4003a59a, 0x1adbb257
319*25c28e83SPiotr Jasiukajtis	.word	0x3ca6adce, 0x020a308d, 0x00000000, 0x00000000
320*25c28e83SPiotr Jasiukajtis	.word	0x3ff51d07, 0xeae2f815, 0x3ffbdb55, 0xb550fdbc
321*25c28e83SPiotr Jasiukajtis	.word	0x3c7365e9, 0x6aa5fae3, 0x00000000, 0x00000000
322*25c28e83SPiotr Jasiukajtis	.word	0x3ff51d07, 0xeae2f815, 0x4003b29d, 0x7d635662
323*25c28e83SPiotr Jasiukajtis	.word	0x3cac99b0, 0x5e282129, 0x00000000, 0x00000000
324*25c28e83SPiotr Jasiukajtis	.word	0x3ff50150, 0x15015015, 0x3ffbedb0, 0xdefaf661
325*25c28e83SPiotr Jasiukajtis	.word	0x3c91a627, 0xb279170d, 0x00000000, 0x00000000
326*25c28e83SPiotr Jasiukajtis	.word	0x3ff50150, 0x15015015, 0x4003bf98, 0x4cb56c77
327*25c28e83SPiotr Jasiukajtis	.word	0x3ca8f653, 0xbcc0c4a1, 0x00000000, 0x00000000
328*25c28e83SPiotr Jasiukajtis	.word	0x3ff4e5e0, 0xa72f0539, 0x3ffc0000, 0x00000000
329*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
330*25c28e83SPiotr Jasiukajtis	.word	0x3ff4e5e0, 0xa72f0539, 0x4003cc8a, 0x99af5453
331*25c28e83SPiotr Jasiukajtis	.word	0xbc486364, 0x4f05f2be, 0x00000000, 0x00000000
332*25c28e83SPiotr Jasiukajtis	.word	0x3ff4cab8, 0x8725af6e, 0x3ffc1243, 0x2fec0329
333*25c28e83SPiotr Jasiukajtis	.word	0x3c96e0d7, 0x8dd23a7d, 0x00000000, 0x00000000
334*25c28e83SPiotr Jasiukajtis	.word	0x3ff4cab8, 0x8725af6e, 0x4003d974, 0x74f76df2
335*25c28e83SPiotr Jasiukajtis	.word	0x3c82e3c9, 0xfdbbbdc2, 0x00000000, 0x00000000
336*25c28e83SPiotr Jasiukajtis	.word	0x3ff4afd6, 0xa052bf5b, 0x3ffc247a, 0x85fe81fa
337*25c28e83SPiotr Jasiukajtis	.word	0x3c89d8ee, 0xf6854220, 0x00000000, 0x00000000
338*25c28e83SPiotr Jasiukajtis	.word	0x3ff4afd6, 0xa052bf5b, 0x4003e655, 0xeefe1367
339*25c28e83SPiotr Jasiukajtis	.word	0x3c80eb35, 0xbb532559, 0x00000000, 0x00000000
340*25c28e83SPiotr Jasiukajtis	.word	0x3ff49539, 0xe3b2d067, 0x3ffc36a6, 0x192bf168
341*25c28e83SPiotr Jasiukajtis	.word	0xbc9083d8, 0x1a423b11, 0x00000000, 0x00000000
342*25c28e83SPiotr Jasiukajtis	.word	0x3ff49539, 0xe3b2d067, 0x4003f32f, 0x17fe8d04
343*25c28e83SPiotr Jasiukajtis	.word	0xbc905d6c, 0x1c437de0, 0x00000000, 0x00000000
344*25c28e83SPiotr Jasiukajtis	.word	0x3ff47ae1, 0x47ae147b, 0x3ffc48c6, 0x001f0ac0
345*25c28e83SPiotr Jasiukajtis	.word	0xbc92d481, 0x189efd6b, 0x00000000, 0x00000000
346*25c28e83SPiotr Jasiukajtis	.word	0x3ff47ae1, 0x47ae147b, 0x40040000, 0x00000000
347*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
348*25c28e83SPiotr Jasiukajtis	.word	0x3ff460cb, 0xc7f5cf9a, 0x3ffc5ada, 0x513a1593
349*25c28e83SPiotr Jasiukajtis	.word	0xbc7aaedd, 0x014f5f03, 0x00000000, 0x00000000
350*25c28e83SPiotr Jasiukajtis	.word	0x3ff460cb, 0xc7f5cf9a, 0x40040cc8, 0xb6d657c2
351*25c28e83SPiotr Jasiukajtis	.word	0xbc9c05ab, 0xf480ce19, 0x00000000, 0x00000000
352*25c28e83SPiotr Jasiukajtis	.word	0x3ff446f8, 0x6562d9fb, 0x3ffc6ce3, 0x22982a3f
353*25c28e83SPiotr Jasiukajtis	.word	0x3c891b2d, 0xf3e15f29, 0x00000000, 0x00000000
354*25c28e83SPiotr Jasiukajtis	.word	0x3ff446f8, 0x6562d9fb, 0x40041989, 0x4c2329f0
355*25c28e83SPiotr Jasiukajtis	.word	0x3c976037, 0x46da0ea6, 0x00000000, 0x00000000
356*25c28e83SPiotr Jasiukajtis	.word	0x3ff42d66, 0x25d51f87, 0x3ffc7ee0, 0x8a0e6d4c
357*25c28e83SPiotr Jasiukajtis	.word	0x3c991c54, 0xc53e75c8, 0x00000000, 0x00000000
358*25c28e83SPiotr Jasiukajtis	.word	0x3ff42d66, 0x25d51f87, 0x40042641, 0xcf569572
359*25c28e83SPiotr Jasiukajtis	.word	0xbcadf80b, 0x1442c029, 0x00000000, 0x00000000
360*25c28e83SPiotr Jasiukajtis	.word	0x3ff41414, 0x14141414, 0x3ffc90d2, 0x9d2d43ce
361*25c28e83SPiotr Jasiukajtis	.word	0xbc9edadb, 0x07f1137a, 0x00000000, 0x00000000
362*25c28e83SPiotr Jasiukajtis	.word	0x3ff41414, 0x14141414, 0x400432f2, 0x4fb01c7a
363*25c28e83SPiotr Jasiukajtis	.word	0x3ca38bfe, 0x0e012c1c, 0x00000000, 0x00000000
364*25c28e83SPiotr Jasiukajtis	.word	0x3ff3fb01, 0x3fb013fb, 0x3ffca2b9, 0x714180f7
365*25c28e83SPiotr Jasiukajtis	.word	0xbc81a63d, 0x6750c57c, 0x00000000, 0x00000000
366*25c28e83SPiotr Jasiukajtis	.word	0x3ff3fb01, 0x3fb013fb, 0x40043f9a, 0xdc3f79ce
367*25c28e83SPiotr Jasiukajtis	.word	0x3c66d2b1, 0x767ae30a, 0x00000000, 0x00000000
368*25c28e83SPiotr Jasiukajtis	.word	0x3ff3e22c, 0xbce4a902, 0x3ffcb495, 0x1b558d17
369*25c28e83SPiotr Jasiukajtis	.word	0x3c8fcbcb, 0x357f2308, 0x00000000, 0x00000000
370*25c28e83SPiotr Jasiukajtis	.word	0x3ff3e22c, 0xbce4a902, 0x40044c3b, 0x83e57153
371*25c28e83SPiotr Jasiukajtis	.word	0x3c98c853, 0xc6be5ee1, 0x00000000, 0x00000000
372*25c28e83SPiotr Jasiukajtis	.word	0x3ff3c995, 0xa47babe7, 0x3ffcc665, 0xb0328622
373*25c28e83SPiotr Jasiukajtis	.word	0xbc91baa4, 0xd369f814, 0x00000000, 0x00000000
374*25c28e83SPiotr Jasiukajtis	.word	0x3ff3c995, 0xa47babe7, 0x400458d4, 0x55549c1a
375*25c28e83SPiotr Jasiukajtis	.word	0x3ca02d72, 0x8d9a6054, 0x00000000, 0x00000000
376*25c28e83SPiotr Jasiukajtis	.word	0x3ff3b13b, 0x13b13b14, 0x3ffcd82b, 0x446159f3
377*25c28e83SPiotr Jasiukajtis	.word	0x3c983fb7, 0xb33cdfe8, 0x00000000, 0x00000000
378*25c28e83SPiotr Jasiukajtis	.word	0x3ff3b13b, 0x13b13b14, 0x40046565, 0x5f122ff6
379*25c28e83SPiotr Jasiukajtis	.word	0x3ca862c5, 0xd2f0ca4c, 0x00000000, 0x00000000
380*25c28e83SPiotr Jasiukajtis	.word	0x3ff3991c, 0x2c187f63, 0x3ffce9e5, 0xec2bda80
381*25c28e83SPiotr Jasiukajtis	.word	0xbc94ccf3, 0xd8e249ab, 0x00000000, 0x00000000
382*25c28e83SPiotr Jasiukajtis	.word	0x3ff3991c, 0x2c187f63, 0x400471ee, 0xaf76c2c6
383*25c28e83SPiotr Jasiukajtis	.word	0x3c975c62, 0xeff26e8e, 0x00000000, 0x00000000
384*25c28e83SPiotr Jasiukajtis	.word	0x3ff38138, 0x13813814, 0x3ffcfb95, 0xbb9dcc0c
385*25c28e83SPiotr Jasiukajtis	.word	0x3c92cea2, 0x0857ae03, 0x00000000, 0x00000000
386*25c28e83SPiotr Jasiukajtis	.word	0x3ff38138, 0x13813814, 0x40047e70, 0x54af0989
387*25c28e83SPiotr Jasiukajtis	.word	0x3c9d8c33, 0xc0054830, 0x00000000, 0x00000000
388*25c28e83SPiotr Jasiukajtis	.word	0x3ff3698d, 0xf3de0748, 0x3ffd0d3a, 0xc685eda4
389*25c28e83SPiotr Jasiukajtis	.word	0x3c94115a, 0x0ff4cf9e, 0x00000000, 0x00000000
390*25c28e83SPiotr Jasiukajtis	.word	0x3ff3698d, 0xf3de0748, 0x40048aea, 0x5cbc935f
391*25c28e83SPiotr Jasiukajtis	.word	0xbca8cb00, 0x12d14ff5, 0x00000000, 0x00000000
392*25c28e83SPiotr Jasiukajtis	.word	0x3ff3521c, 0xfb2b78c1, 0x3ffd1ed5, 0x2076fbe9
393*25c28e83SPiotr Jasiukajtis	.word	0x3c8f48a8, 0x6b72875f, 0x00000000, 0x00000000
394*25c28e83SPiotr Jasiukajtis	.word	0x3ff3521c, 0xfb2b78c1, 0x4004975c, 0xd5768088
395*25c28e83SPiotr Jasiukajtis	.word	0xbca1731e, 0xbc02f748, 0x00000000, 0x00000000
396*25c28e83SPiotr Jasiukajtis	.word	0x3ff33ae4, 0x5b57bcb2, 0x3ffd3064, 0xdcc8ae67
397*25c28e83SPiotr Jasiukajtis	.word	0x3c93480e, 0x805158ba, 0x00000000, 0x00000000
398*25c28e83SPiotr Jasiukajtis	.word	0x3ff33ae4, 0x5b57bcb2, 0x4004a3c7, 0xcc8a358a
399*25c28e83SPiotr Jasiukajtis	.word	0xbc9d8f7f, 0xd2726ffa, 0x00000000, 0x00000000
400*25c28e83SPiotr Jasiukajtis	.word	0x3ff323e3, 0x4a2b10bf, 0x3ffd41ea, 0x0e98af91
401*25c28e83SPiotr Jasiukajtis	.word	0x3c824640, 0x0309962f, 0x00000000, 0x00000000
402*25c28e83SPiotr Jasiukajtis	.word	0x3ff323e3, 0x4a2b10bf, 0x4004b02b, 0x4f7c0a88
403*25c28e83SPiotr Jasiukajtis	.word	0xbcaf71e1, 0xf6cafde2, 0x00000000, 0x00000000
404*25c28e83SPiotr Jasiukajtis	.word	0x3ff30d19, 0x0130d190, 0x3ffd5364, 0xc8cb8f86
405*25c28e83SPiotr Jasiukajtis	.word	0x3c8ad003, 0xc00630e1, 0x00000000, 0x00000000
406*25c28e83SPiotr Jasiukajtis	.word	0x3ff30d19, 0x0130d190, 0x4004bc87, 0x6ba7f6ec
407*25c28e83SPiotr Jasiukajtis	.word	0x3c9c1edb, 0x2be943b8, 0x00000000, 0x00000000
408*25c28e83SPiotr Jasiukajtis	.word	0x3ff2f684, 0xbda12f68, 0x3ffd64d5, 0x1e0db1c6
409*25c28e83SPiotr Jasiukajtis	.word	0xbc911ed3, 0x6986d362, 0x00000000, 0x00000000
410*25c28e83SPiotr Jasiukajtis	.word	0x3ff2f684, 0xbda12f68, 0x4004c8dc, 0x2e423980
411*25c28e83SPiotr Jasiukajtis	.word	0xbc949d1f, 0x46ef5d2c, 0x00000000, 0x00000000
412*25c28e83SPiotr Jasiukajtis	.word	0x3ff2e025, 0xc04b8097, 0x3ffd763b, 0x20d435ef
413*25c28e83SPiotr Jasiukajtis	.word	0x3c9d6780, 0xf76cb258, 0x00000000, 0x00000000
414*25c28e83SPiotr Jasiukajtis	.word	0x3ff2e025, 0xc04b8097, 0x4004d529, 0xa457fcfc
415*25c28e83SPiotr Jasiukajtis	.word	0xbca1404a, 0x46484e3d, 0x00000000, 0x00000000
416*25c28e83SPiotr Jasiukajtis	.word	0x3ff2c9fb, 0x4d812ca0, 0x3ffd8796, 0xe35ddbb2
417*25c28e83SPiotr Jasiukajtis	.word	0x3c83fdd9, 0x1aeb637a, 0x00000000, 0x00000000
418*25c28e83SPiotr Jasiukajtis	.word	0x3ff2c9fb, 0x4d812ca0, 0x4004e16f, 0xdacff937
419*25c28e83SPiotr Jasiukajtis	.word	0xbca1deb9, 0xd3815ad2, 0x00000000, 0x00000000
420*25c28e83SPiotr Jasiukajtis	.word	0x3ff2b404, 0xad012b40, 0x3ffd98e8, 0x77b3e207
421*25c28e83SPiotr Jasiukajtis	.word	0xbc48c301, 0xee02dee8, 0x00000000, 0x00000000
422*25c28e83SPiotr Jasiukajtis	.word	0x3ff2b404, 0xad012b40, 0x4004edae, 0xde6b10fe
423*25c28e83SPiotr Jasiukajtis	.word	0x3ca99709, 0x4a91a780, 0x00000000, 0x00000000
424*25c28e83SPiotr Jasiukajtis	.word	0x3ff29e41, 0x29e4129e, 0x3ffdaa2f, 0xefaae1d8
425*25c28e83SPiotr Jasiukajtis	.word	0xbc63fe0e, 0x03f44594, 0x00000000, 0x00000000
426*25c28e83SPiotr Jasiukajtis	.word	0x3ff29e41, 0x29e4129e, 0x4004f9e6, 0xbbc4ecb3
427*25c28e83SPiotr Jasiukajtis	.word	0x3c6ce5a6, 0x018493f1, 0x00000000, 0x00000000
428*25c28e83SPiotr Jasiukajtis	.word	0x3ff288b0, 0x1288b013, 0x3ffdbb6d, 0x5ce3a42f
429*25c28e83SPiotr Jasiukajtis	.word	0xbc922c27, 0xf71c8337, 0x00000000, 0x00000000
430*25c28e83SPiotr Jasiukajtis	.word	0x3ff288b0, 0x1288b013, 0x40050617, 0x7f5491bb
431*25c28e83SPiotr Jasiukajtis	.word	0xbc9e591e, 0x7b2a6d1a, 0x00000000, 0x00000000
432*25c28e83SPiotr Jasiukajtis	.word	0x3ff27350, 0xb8812735, 0x3ffdcca0, 0xd0cbf408
433*25c28e83SPiotr Jasiukajtis	.word	0x3c7a6d16, 0x2310db57, 0x00000000, 0x00000000
434*25c28e83SPiotr Jasiukajtis	.word	0x3ff27350, 0xb8812735, 0x40051241, 0x356cf6e0
435*25c28e83SPiotr Jasiukajtis	.word	0x3ca37dc2, 0x60e8bc2d, 0x00000000, 0x00000000
436*25c28e83SPiotr Jasiukajtis	.word	0x3ff25e22, 0x708092f1, 0x3ffdddca, 0x5c9f6be8
437*25c28e83SPiotr Jasiukajtis	.word	0x3c818520, 0xf0a3f809, 0x00000000, 0x00000000
438*25c28e83SPiotr Jasiukajtis	.word	0x3ff25e22, 0x708092f1, 0x40051e63, 0xea3d95b0
439*25c28e83SPiotr Jasiukajtis	.word	0x3caecf78, 0x2e88d5ce, 0x00000000, 0x00000000
440*25c28e83SPiotr Jasiukajtis	.word	0x3ff24924, 0x92492492, 0x3ffdeeea, 0x11683f49
441*25c28e83SPiotr Jasiukajtis	.word	0x3c802aae, 0x4bfa7c27, 0x00000000, 0x00000000
442*25c28e83SPiotr Jasiukajtis	.word	0x3ff24924, 0x92492492, 0x40052a7f, 0xa9d2f8ea
443*25c28e83SPiotr Jasiukajtis	.word	0xbca21c62, 0xb033c079, 0x00000000, 0x00000000
444*25c28e83SPiotr Jasiukajtis	.word	0x3ff23456, 0x789abcdf, 0x3ffe0000, 0x00000000
445*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
446*25c28e83SPiotr Jasiukajtis	.word	0x3ff23456, 0x789abcdf, 0x40053694, 0x80174810
447*25c28e83SPiotr Jasiukajtis	.word	0xbc9c3ec1, 0xa4ee7c21, 0x00000000, 0x00000000
448*25c28e83SPiotr Jasiukajtis	.word	0x3ff21fb7, 0x8121fb78, 0x3ffe110c, 0x39105faf
449*25c28e83SPiotr Jasiukajtis	.word	0x3c776161, 0x4c513964, 0x00000000, 0x00000000
450*25c28e83SPiotr Jasiukajtis	.word	0x3ff21fb7, 0x8121fb78, 0x400542a2, 0x78d2d036
451*25c28e83SPiotr Jasiukajtis	.word	0xbca495c2, 0x45254df4, 0x00000000, 0x00000000
452*25c28e83SPiotr Jasiukajtis	.word	0x3ff20b47, 0x0c67c0d9, 0x3ffe220e, 0xcd13ed60
453*25c28e83SPiotr Jasiukajtis	.word	0xbc729f01, 0xf18c9dc9, 0x00000000, 0x00000000
454*25c28e83SPiotr Jasiukajtis	.word	0x3ff20b47, 0x0c67c0d9, 0x40054ea9, 0x9fac8a0f
455*25c28e83SPiotr Jasiukajtis	.word	0x3c80cfbb, 0x19353b3d, 0x00000000, 0x00000000
456*25c28e83SPiotr Jasiukajtis	.word	0x3ff1f704, 0x7dc11f70, 0x3ffe3307, 0xcc56cf5c
457*25c28e83SPiotr Jasiukajtis	.word	0xbc81f04e, 0xc3189131, 0x00000000, 0x00000000
458*25c28e83SPiotr Jasiukajtis	.word	0x3ff1f704, 0x7dc11f70, 0x40055aaa, 0x002a9d5a
459*25c28e83SPiotr Jasiukajtis	.word	0xbc4bf504, 0x76241f94, 0x00000000, 0x00000000
460*25c28e83SPiotr Jasiukajtis	.word	0x3ff1e2ef, 0x3b3fb874, 0x3ffe43f7, 0x46f7795b
461*25c28e83SPiotr Jasiukajtis	.word	0xbc931e7f, 0x8af68f8c, 0x00000000, 0x00000000
462*25c28e83SPiotr Jasiukajtis	.word	0x3ff1e2ef, 0x3b3fb874, 0x400566a3, 0xa5b2e1b1
463*25c28e83SPiotr Jasiukajtis	.word	0x3caa1fd2, 0x8cc92e33, 0x00000000, 0x00000000
464*25c28e83SPiotr Jasiukajtis	.word	0x3ff1cf06, 0xada2811d, 0x3ffe54dd, 0x4ce75f1e
465*25c28e83SPiotr Jasiukajtis	.word	0xbc811b19, 0x5dfc62e5, 0x00000000, 0x00000000
466*25c28e83SPiotr Jasiukajtis	.word	0x3ff1cf06, 0xada2811d, 0x40057296, 0x9b8b5cd8
467*25c28e83SPiotr Jasiukajtis	.word	0x3ca30cbf, 0x1c53312e, 0x00000000, 0x00000000
468*25c28e83SPiotr Jasiukajtis	.word	0x3ff1bb4a, 0x4046ed29, 0x3ffe65b9, 0xedeba38e
469*25c28e83SPiotr Jasiukajtis	.word	0xbc7bb732, 0x51e8c364, 0x00000000, 0x00000000
470*25c28e83SPiotr Jasiukajtis	.word	0x3ff1bb4a, 0x4046ed29, 0x40057e82, 0xecdabe8d
471*25c28e83SPiotr Jasiukajtis	.word	0xbc7c2aed, 0xf3c4c4bd, 0x00000000, 0x00000000
472*25c28e83SPiotr Jasiukajtis	.word	0x3ff1a7b9, 0x611a7b96, 0x3ffe768d, 0x399dc470
473*25c28e83SPiotr Jasiukajtis	.word	0xbc9a8c81, 0x3405c01c, 0x00000000, 0x00000000
474*25c28e83SPiotr Jasiukajtis	.word	0x3ff1a7b9, 0x611a7b96, 0x40058a68, 0xa4a8d9f3
475*25c28e83SPiotr Jasiukajtis	.word	0x3ca50798, 0xe67012d9, 0x00000000, 0x00000000
476*25c28e83SPiotr Jasiukajtis	.word	0x3ff19453, 0x808ca29c, 0x3ffe8757, 0x3f6c42c5
477*25c28e83SPiotr Jasiukajtis	.word	0x3c9dbf9c, 0xf7bbcda3, 0x00000000, 0x00000000
478*25c28e83SPiotr Jasiukajtis	.word	0x3ff19453, 0x808ca29c, 0x40059647, 0xcddf1ca5
479*25c28e83SPiotr Jasiukajtis	.word	0x3ca14a95, 0xf35dea0b, 0x00000000, 0x00000000
480*25c28e83SPiotr Jasiukajtis	.word	0x3ff18118, 0x11811812, 0x3ffe9818, 0x0e9b47f2
481*25c28e83SPiotr Jasiukajtis	.word	0xbc9b6bd7, 0x4396d08e, 0x00000000, 0x00000000
482*25c28e83SPiotr Jasiukajtis	.word	0x3ff18118, 0x11811812, 0x4005a220, 0x73490377
483*25c28e83SPiotr Jasiukajtis	.word	0xbcadd036, 0x39925812, 0x00000000, 0x00000000
484*25c28e83SPiotr Jasiukajtis	.word	0x3ff16e06, 0x89427379, 0x3ffea8cf, 0xb64547ab
485*25c28e83SPiotr Jasiukajtis	.word	0x3c8721b2, 0x6374e19f, 0x00000000, 0x00000000
486*25c28e83SPiotr Jasiukajtis	.word	0x3ff16e06, 0x89427379, 0x4005adf2, 0x9f948cfb
487*25c28e83SPiotr Jasiukajtis	.word	0xbca42520, 0xf7716fa6, 0x00000000, 0x00000000
488*25c28e83SPiotr Jasiukajtis	.word	0x3ff15b1e, 0x5f75270d, 0x3ffeb97e, 0x455b9edb
489*25c28e83SPiotr Jasiukajtis	.word	0x3c999b45, 0x40857883, 0x00000000, 0x00000000
490*25c28e83SPiotr Jasiukajtis	.word	0x3ff15b1e, 0x5f75270d, 0x4005b9be, 0x5d52a9da
491*25c28e83SPiotr Jasiukajtis	.word	0x3c9098cd, 0x1b3af777, 0x00000000, 0x00000000
492*25c28e83SPiotr Jasiukajtis	.word	0x3ff1485f, 0x0e0acd3b, 0x3ffeca23, 0xcaa72f73
493*25c28e83SPiotr Jasiukajtis	.word	0x3c7e3ed5, 0x29679959, 0x00000000, 0x00000000
494*25c28e83SPiotr Jasiukajtis	.word	0x3ff1485f, 0x0e0acd3b, 0x4005c583, 0xb6f7ab03
495*25c28e83SPiotr Jasiukajtis	.word	0x3ca963bc, 0x9d795b51, 0x00000000, 0x00000000
496*25c28e83SPiotr Jasiukajtis	.word	0x3ff135c8, 0x1135c811, 0x3ffedac0, 0x54c8f94c
497*25c28e83SPiotr Jasiukajtis	.word	0x3c90b5c1, 0x15a56207, 0x00000000, 0x00000000
498*25c28e83SPiotr Jasiukajtis	.word	0x3ff135c8, 0x1135c811, 0x4005d142, 0xb6dbadc5
499*25c28e83SPiotr Jasiukajtis	.word	0x3ca6f1f5, 0x5323d116, 0x00000000, 0x00000000
500*25c28e83SPiotr Jasiukajtis	.word	0x3ff12358, 0xe75d3033, 0x3ffeeb53, 0xf23ab028
501*25c28e83SPiotr Jasiukajtis	.word	0xbc8617e4, 0xb5384f5d, 0x00000000, 0x00000000
502*25c28e83SPiotr Jasiukajtis	.word	0x3ff12358, 0xe75d3033, 0x4005dcfb, 0x673b05df
503*25c28e83SPiotr Jasiukajtis	.word	0xbca099df, 0xc321634f, 0x00000000, 0x00000000
504*25c28e83SPiotr Jasiukajtis	.word	0x3ff11111, 0x11111111, 0x3ffefbde, 0xb14f4eda
505*25c28e83SPiotr Jasiukajtis	.word	0xbc93a145, 0xfe1be078, 0x00000000, 0x00000000
506*25c28e83SPiotr Jasiukajtis	.word	0x3ff11111, 0x11111111, 0x4005e8ad, 0xd236a58f
507*25c28e83SPiotr Jasiukajtis	.word	0xbc7ef8c7, 0xc0d1fec6, 0x00000000, 0x00000000
508*25c28e83SPiotr Jasiukajtis	.word	0x3ff0fef0, 0x10fef011, 0x3fff0c60, 0xa033a7b3
509*25c28e83SPiotr Jasiukajtis	.word	0xbc91b0fc, 0x15cd89c6, 0x00000000, 0x00000000
510*25c28e83SPiotr Jasiukajtis	.word	0x3ff0fef0, 0x10fef011, 0x4005f45a, 0x01d483b4
511*25c28e83SPiotr Jasiukajtis	.word	0xbc94a237, 0xdc0fa105, 0x00000000, 0x00000000
512*25c28e83SPiotr Jasiukajtis	.word	0x3ff0ecf5, 0x6be69c90, 0x3fff1cd9, 0xcceef239
513*25c28e83SPiotr Jasiukajtis	.word	0x3c91afd8, 0x64eab60a, 0x00000000, 0x00000000
514*25c28e83SPiotr Jasiukajtis	.word	0x3ff0ecf5, 0x6be69c90, 0x40060000, 0x00000000
515*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
516*25c28e83SPiotr Jasiukajtis	.word	0x3ff0db20, 0xa88f4696, 0x3fff2d4a, 0x45635640
517*25c28e83SPiotr Jasiukajtis	.word	0xbc8eebae, 0xea670bc2, 0x00000000, 0x00000000
518*25c28e83SPiotr Jasiukajtis	.word	0x3ff0db20, 0xa88f4696, 0x40060b9f, 0xd68a4554
519*25c28e83SPiotr Jasiukajtis	.word	0x3ca328e1, 0x70dae176, 0x00000000, 0x00000000
520*25c28e83SPiotr Jasiukajtis	.word	0x3ff0c971, 0x4fbcda3b, 0x3fff3db2, 0x174e7468
521*25c28e83SPiotr Jasiukajtis	.word	0x3c9e1513, 0x2d6ac52a, 0x00000000, 0x00000000
522*25c28e83SPiotr Jasiukajtis	.word	0x3ff0c971, 0x4fbcda3b, 0x40061739, 0x8f2aaa48
523*25c28e83SPiotr Jasiukajtis	.word	0xbc9b672b, 0xba260735, 0x00000000, 0x00000000
524*25c28e83SPiotr Jasiukajtis	.word	0x3ff0b7e6, 0xec259dc8, 0x3fff4e11, 0x5049ec26
525*25c28e83SPiotr Jasiukajtis	.word	0xbc9b6656, 0xb6bd5d76, 0x00000000, 0x00000000
526*25c28e83SPiotr Jasiukajtis	.word	0x3ff0b7e6, 0xec259dc8, 0x400622cd, 0x337f0fe8
527*25c28e83SPiotr Jasiukajtis	.word	0x3c9fe207, 0x3279559f, 0x00000000, 0x00000000
528*25c28e83SPiotr Jasiukajtis	.word	0x3ff0a681, 0x0a6810a7, 0x3fff5e67, 0xfdcbdf44
529*25c28e83SPiotr Jasiukajtis	.word	0xbc98af06, 0x1849d6fc, 0x00000000, 0x00000000
530*25c28e83SPiotr Jasiukajtis	.word	0x3ff0a681, 0x0a6810a7, 0x40062e5a, 0xcd0c3ebe
531*25c28e83SPiotr Jasiukajtis	.word	0xbca2c50e, 0x2092203a, 0x00000000, 0x00000000
532*25c28e83SPiotr Jasiukajtis	.word	0x3ff0953f, 0x39010954, 0x3fff6eb6, 0x2d27730d
533*25c28e83SPiotr Jasiukajtis	.word	0xbc9401d9, 0x5ca1ce34, 0x00000000, 0x00000000
534*25c28e83SPiotr Jasiukajtis	.word	0x3ff0953f, 0x39010954, 0x400639e2, 0x653e421b
535*25c28e83SPiotr Jasiukajtis	.word	0xbc9f75e0, 0x5835e4b9, 0x00000000, 0x00000000
536*25c28e83SPiotr Jasiukajtis	.word	0x3ff08421, 0x08421084, 0x3fff7efb, 0xeb8d4f12
537*25c28e83SPiotr Jasiukajtis	.word	0xbc7e84e8, 0xa6ff3256, 0x00000000, 0x00000000
538*25c28e83SPiotr Jasiukajtis	.word	0x3ff08421, 0x08421084, 0x40064564, 0x0568c1c3
539*25c28e83SPiotr Jasiukajtis	.word	0x3cad1778, 0x7e4c8970, 0x00000000, 0x00000000
540*25c28e83SPiotr Jasiukajtis	.word	0x3ff07326, 0x0a47f7c6, 0x3fff8f39, 0x460c19a8
541*25c28e83SPiotr Jasiukajtis	.word	0x3c989b4e, 0x16ee9aaf, 0x00000000, 0x00000000
542*25c28e83SPiotr Jasiukajtis	.word	0x3ff07326, 0x0a47f7c6, 0x400650df, 0xb6c759f4
543*25c28e83SPiotr Jasiukajtis	.word	0x3c99063c, 0x91db4c77, 0x00000000, 0x00000000
544*25c28e83SPiotr Jasiukajtis	.word	0x3ff0624d, 0xd2f1a9fc, 0x3fff9f6e, 0x4990f227
545*25c28e83SPiotr Jasiukajtis	.word	0x3c8b42e5, 0xb5d1e808, 0x00000000, 0x00000000
546*25c28e83SPiotr Jasiukajtis	.word	0x3ff0624d, 0xd2f1a9fc, 0x40065c55, 0x827df1d2
547*25c28e83SPiotr Jasiukajtis	.word	0xbca3923d, 0xf03e1e2f, 0x00000000, 0x00000000
548*25c28e83SPiotr Jasiukajtis	.word	0x3ff05197, 0xf7d73404, 0x3fffaf9b, 0x02e7e8f2
549*25c28e83SPiotr Jasiukajtis	.word	0x3c897a76, 0x8f34e1c2, 0x00000000, 0x00000000
550*25c28e83SPiotr Jasiukajtis	.word	0x3ff05197, 0xf7d73404, 0x400667c5, 0x7199104b
551*25c28e83SPiotr Jasiukajtis	.word	0x3c875b89, 0x6f332e70, 0x00000000, 0x00000000
552*25c28e83SPiotr Jasiukajtis	.word	0x3ff04104, 0x10410410, 0x3fffbfbf, 0x7ebc755f
553*25c28e83SPiotr Jasiukajtis	.word	0xbc9b2a94, 0x084da0b6, 0x00000000, 0x00000000
554*25c28e83SPiotr Jasiukajtis	.word	0x3ff04104, 0x10410410, 0x4006732f, 0x8d0e2f77
555*25c28e83SPiotr Jasiukajtis	.word	0xbc93dffd, 0x470422e3, 0x00000000, 0x00000000
556*25c28e83SPiotr Jasiukajtis	.word	0x3ff03091, 0xb51f5e1a, 0x3fffcfdb, 0xc999e97d
557*25c28e83SPiotr Jasiukajtis	.word	0x3c82be17, 0xecdd3bbc, 0x00000000, 0x00000000
558*25c28e83SPiotr Jasiukajtis	.word	0x3ff03091, 0xb51f5e1a, 0x40067e93, 0xddbc0e73
559*25c28e83SPiotr Jasiukajtis	.word	0xbc86eb9f, 0x32ac1a5c, 0x00000000, 0x00000000
560*25c28e83SPiotr Jasiukajtis	.word	0x3ff02040, 0x81020408, 0x3fffdfef, 0xefebe3d6
561*25c28e83SPiotr Jasiukajtis	.word	0xbc909afc, 0xfc7c1f3b, 0x00000000, 0x00000000
562*25c28e83SPiotr Jasiukajtis	.word	0x3ff02040, 0x81020408, 0x400689f2, 0x6c6b01d0
563*25c28e83SPiotr Jasiukajtis	.word	0x3cae816f, 0x9d2a1032, 0x00000000, 0x00000000
564*25c28e83SPiotr Jasiukajtis	.word	0x3ff01010, 0x10101010, 0x3fffeffb, 0xfdfebf1f
565*25c28e83SPiotr Jasiukajtis	.word	0x3c95dee5, 0x1994f18b, 0x00000000, 0x00000000
566*25c28e83SPiotr Jasiukajtis	.word	0x3ff01010, 0x10101010, 0x4006954b, 0x41cd4293
567*25c28e83SPiotr Jasiukajtis	.word	0x3ca3d5bc, 0xcc443076, 0x00000000, 0x00000000
568*25c28e83SPiotr Jasiukajtis	.word	0x3ff00000, 0x00000000, 0x40000000, 0x00000000
569*25c28e83SPiotr Jasiukajtis	.word	0x00000000, 0x00000000, 0x00000000, 0x00000000
570*25c28e83SPiotr Jasiukajtis	.word	0x3ff00000, 0x00000000, 0x4006a09e, 0x667f3bcd
571*25c28e83SPiotr Jasiukajtis	.word	0xbcabdd34, 0x13b26456, 0x00000000, 0x00000000
572*25c28e83SPiotr Jasiukajtis
573*25c28e83SPiotr Jasiukajtis#define A5		%f32
574*25c28e83SPiotr Jasiukajtis#define A4		%f30
575*25c28e83SPiotr Jasiukajtis#define A3		%f28
576*25c28e83SPiotr Jasiukajtis#define A2		%f26
577*25c28e83SPiotr Jasiukajtis#define A1		%f56
578*25c28e83SPiotr Jasiukajtis
579*25c28e83SPiotr Jasiukajtis#define DC0		%f8
580*25c28e83SPiotr Jasiukajtis#define DC2		%f6
581*25c28e83SPiotr Jasiukajtis#define DC3		%f4
582*25c28e83SPiotr Jasiukajtis
583*25c28e83SPiotr Jasiukajtis#define counter		%l3
584*25c28e83SPiotr Jasiukajtis#define TBL		%l5
585*25c28e83SPiotr Jasiukajtis#define stridex		%l6
586*25c28e83SPiotr Jasiukajtis#define stridey		%l7
587*25c28e83SPiotr Jasiukajtis
588*25c28e83SPiotr Jasiukajtis#define _0x00001ff8	%i0
589*25c28e83SPiotr Jasiukajtis#define _0x7ff00000	%o0
590*25c28e83SPiotr Jasiukajtis#define _0x00100000	%o2
591*25c28e83SPiotr Jasiukajtis
592*25c28e83SPiotr Jasiukajtis#define tmp_counter	STACK_BIAS-0x40
593*25c28e83SPiotr Jasiukajtis#define tmp_px		STACK_BIAS-0x38
594*25c28e83SPiotr Jasiukajtis#define tmp0		STACK_BIAS-0x30
595*25c28e83SPiotr Jasiukajtis#define tmp1		STACK_BIAS-0x28
596*25c28e83SPiotr Jasiukajtis#define tmp2		STACK_BIAS-0x20
597*25c28e83SPiotr Jasiukajtis#define tmp3		STACK_BIAS-0x18
598*25c28e83SPiotr Jasiukajtis#define tmp4		STACK_BIAS-0x10
599*25c28e83SPiotr Jasiukajtis#define tmp5		STACK_BIAS-0x08
600*25c28e83SPiotr Jasiukajtis
601*25c28e83SPiotr Jasiukajtis! sizeof temp storage - must be a multiple of 16 for V9
602*25c28e83SPiotr Jasiukajtis#define tmps		0x40
603*25c28e83SPiotr Jasiukajtis
604*25c28e83SPiotr Jasiukajtis!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
605*25c28e83SPiotr Jasiukajtis!      !!!!!   algorithm   !!!!!
606*25c28e83SPiotr Jasiukajtis!  ((float*)&res)[0] = ((float*)px)[0];
607*25c28e83SPiotr Jasiukajtis!  ((float*)&res)[1] = ((float*)px)[1];
608*25c28e83SPiotr Jasiukajtis!  hx = *(int*)px;
609*25c28e83SPiotr Jasiukajtis!  px += stridex;
610*25c28e83SPiotr Jasiukajtis!
611*25c28e83SPiotr Jasiukajtis!  if ( hx >= 0x7ff00000 )
612*25c28e83SPiotr Jasiukajtis!  {
613*25c28e83SPiotr Jasiukajtis!    res = sqrt(res);
614*25c28e83SPiotr Jasiukajtis!    ((float*)py)[0] = ((float*)&res)[0];
615*25c28e83SPiotr Jasiukajtis!    ((float*)py)[1] = ((float*)&res)[1];
616*25c28e83SPiotr Jasiukajtis!    py += stridey;
617*25c28e83SPiotr Jasiukajtis!    goto next;
618*25c28e83SPiotr Jasiukajtis!  }
619*25c28e83SPiotr Jasiukajtis!  if ( hx < 0x00100000 )
620*25c28e83SPiotr Jasiukajtis!  {
621*25c28e83SPiotr Jasiukajtis!    res = sqrt(res);
622*25c28e83SPiotr Jasiukajtis!    ((float*)py)[0] = ((float*)&res)[0];
623*25c28e83SPiotr Jasiukajtis!    ((float*)py)[1] = ((float*)&res)[1];
624*25c28e83SPiotr Jasiukajtis!    py += stridey;
625*25c28e83SPiotr Jasiukajtis!    goto next;
626*25c28e83SPiotr Jasiukajtis!  }
627*25c28e83SPiotr Jasiukajtis!
628*25c28e83SPiotr Jasiukajtis!  sqrt_exp = hx >> 21;
629*25c28e83SPiotr Jasiukajtis!  sqrt_exp -= 512;
630*25c28e83SPiotr Jasiukajtis!  sqrt_exp <<= 52;
631*25c28e83SPiotr Jasiukajtis!  dsqrt_exp = *(double*)&sqrt_exp;
632*25c28e83SPiotr Jasiukajtis!  bit = hx >> 15;
633*25c28e83SPiotr Jasiukajtis!  bit &= 32;
634*25c28e83SPiotr Jasiukajtis!  ind0 = hx >> 7;
635*25c28e83SPiotr Jasiukajtis!  ind0 &= 0x1ff8;
636*25c28e83SPiotr Jasiukajtis!  ind0 += 32;
637*25c28e83SPiotr Jasiukajtis!  ind0 &= -64;
638*25c28e83SPiotr Jasiukajtis!  ind1 = ind0;
639*25c28e83SPiotr Jasiukajtis!  ind1 += bit;
640*25c28e83SPiotr Jasiukajtis!
641*25c28e83SPiotr Jasiukajtis!  res = vis_fand(res,DC0);      /* DC0 = vis_to_double(0x000fffff, 0xffffffff); */
642*25c28e83SPiotr Jasiukajtis!  res = vis_for(res,A1);        /* A1  = vis_to_double(0x3fe00000, 0x00000000); */
643*25c28e83SPiotr Jasiukajtis!  res_c = vis_fpadd32(res,DC2); /* DC2 = vis_to_double(0x00001000, 0x00000000); */
644*25c28e83SPiotr Jasiukajtis!  res_c = vis_fand(res_c,DC3);  /* DC3 = vis_to_double(0x7fffe000, 0x00000000); */
645*25c28e83SPiotr Jasiukajtis!
646*25c28e83SPiotr Jasiukajtis!  pind = (char*)TBL + ind1;
647*25c28e83SPiotr Jasiukajtis!  dexp_hi = ((double*)pind)[1];
648*25c28e83SPiotr Jasiukajtis!  dexp_lo = ((double*)pind)[2];
649*25c28e83SPiotr Jasiukajtis!
650*25c28e83SPiotr Jasiukajtis!  dtmp0 = ((double*)pind)[0];
651*25c28e83SPiotr Jasiukajtis!  xx = (res - res_c);
652*25c28e83SPiotr Jasiukajtis!  xx *= dtmp0;
653*25c28e83SPiotr Jasiukajtis!
654*25c28e83SPiotr Jasiukajtis!  res = A5 * xx;
655*25c28e83SPiotr Jasiukajtis!  res += A4;
656*25c28e83SPiotr Jasiukajtis!  res *= xx;
657*25c28e83SPiotr Jasiukajtis!  res += A3;
658*25c28e83SPiotr Jasiukajtis!  res *= xx;
659*25c28e83SPiotr Jasiukajtis!  res += A2;
660*25c28e83SPiotr Jasiukajtis!  res *= xx;
661*25c28e83SPiotr Jasiukajtis!  res += A1;
662*25c28e83SPiotr Jasiukajtis!  res *= xx;
663*25c28e83SPiotr Jasiukajtis!
664*25c28e83SPiotr Jasiukajtis!  res = dexp_hi * res;
665*25c28e83SPiotr Jasiukajtis!  res += dexp_lo;
666*25c28e83SPiotr Jasiukajtis!  res += dexp_hi;
667*25c28e83SPiotr Jasiukajtis!
668*25c28e83SPiotr Jasiukajtis!  dtmp0 = vis_fpadd32(dsqrt_exp,res);
669*25c28e83SPiotr Jasiukajtis!  ((float*)py)[0] = ((float*)&dtmp0)[0];
670*25c28e83SPiotr Jasiukajtis!  ((float*)py)[1] = ((float*)&dtmp0)[1];
671*25c28e83SPiotr Jasiukajtis!  py += stridey;
672*25c28e83SPiotr Jasiukajtis!
673*25c28e83SPiotr Jasiukajtis!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
674*25c28e83SPiotr Jasiukajtis
675*25c28e83SPiotr Jasiukajtis	ENTRY(__vsqrt)
676*25c28e83SPiotr Jasiukajtis	save	%sp,-SA(MINFRAME)-tmps,%sp
677*25c28e83SPiotr Jasiukajtis	PIC_SETUP(l7)
678*25c28e83SPiotr Jasiukajtis	PIC_SET(l7,.CONST_TBL,l5)
679*25c28e83SPiotr Jasiukajtis	wr	%g0,0x82,%asi
680*25c28e83SPiotr Jasiukajtis
681*25c28e83SPiotr Jasiukajtis	ldd	[TBL],A1
682*25c28e83SPiotr Jasiukajtis	sll	%i2,3,stridex
683*25c28e83SPiotr Jasiukajtis	or	%g0,%i3,%o4
684*25c28e83SPiotr Jasiukajtis
685*25c28e83SPiotr Jasiukajtis	ldd	[TBL+8],A2
686*25c28e83SPiotr Jasiukajtis	sll	%i4,3,stridey
687*25c28e83SPiotr Jasiukajtis	or	%g0,0x7ff,%o0
688*25c28e83SPiotr Jasiukajtis
689*25c28e83SPiotr Jasiukajtis	ldd	[TBL+16],A3
690*25c28e83SPiotr Jasiukajtis	sll	%o0,20,_0x7ff00000
691*25c28e83SPiotr Jasiukajtis	or	%g0,0x001,%o2
692*25c28e83SPiotr Jasiukajtis
693*25c28e83SPiotr Jasiukajtis	ldd	[TBL+24],A4
694*25c28e83SPiotr Jasiukajtis	sll	%o2,20,_0x00100000
695*25c28e83SPiotr Jasiukajtis
696*25c28e83SPiotr Jasiukajtis	ldd	[TBL+32],A5
697*25c28e83SPiotr Jasiukajtis	ldd	[TBL+40],DC0
698*25c28e83SPiotr Jasiukajtis	ldd	[TBL+48],DC2
699*25c28e83SPiotr Jasiukajtis	ldd	[TBL+56],DC3
700*25c28e83SPiotr Jasiukajtis
701*25c28e83SPiotr Jasiukajtis	add	TBL,64,TBL
702*25c28e83SPiotr Jasiukajtis	add	%g0,1023,%o5
703*25c28e83SPiotr Jasiukajtis	st	%i0,[%fp+tmp_counter]
704*25c28e83SPiotr Jasiukajtis
705*25c28e83SPiotr Jasiukajtis	sll	%o5,3,_0x00001ff8
706*25c28e83SPiotr Jasiukajtis	stx	%i1,[%fp+tmp_px]
707*25c28e83SPiotr Jasiukajtis
708*25c28e83SPiotr Jasiukajtis.begin:
709*25c28e83SPiotr Jasiukajtis	ld	[%fp+tmp_counter],counter
710*25c28e83SPiotr Jasiukajtis	ldx	[%fp+tmp_px],%l2
711*25c28e83SPiotr Jasiukajtis	st	%g0,[%fp+tmp_counter]
712*25c28e83SPiotr Jasiukajtis.begin1:
713*25c28e83SPiotr Jasiukajtis	cmp	counter,0
714*25c28e83SPiotr Jasiukajtis	ble,pn	%icc,.exit
715*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (5_1) hx = *(int*)px;
716*25c28e83SPiotr Jasiukajtis
717*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (5_0) ((float*)&res)[0] = ((float*)px)[0];
718*25c28e83SPiotr Jasiukajtis
719*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (5_0) ((float*)&res)[1] = ((float*)px)[1];
720*25c28e83SPiotr Jasiukajtis
721*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (5_1) hx ? 0x7ff00000
722*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.spec		! (5_1) if ( hx >= 0x7ff00000 )
723*25c28e83SPiotr Jasiukajtis	nop
724*25c28e83SPiotr Jasiukajtis
725*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (5_1) hx ? 0x00100000
726*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.spec		! (5_1) if ( hx < 0x00100000 )
727*25c28e83SPiotr Jasiukajtis	nop
728*25c28e83SPiotr Jasiukajtis
729*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
730*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (5_1) res = vis_fand(res,DC0);
731*25c28e83SPiotr Jasiukajtis
732*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f40		! (5_1) res = vis_for(res,A1);
733*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (5_1) sqrt_exp = hx >> 21;
734*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%i1		! (5_1) bit = hx >> 15;
735*25c28e83SPiotr Jasiukajtis
736*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (5_1) ind0 = hx >> 7;
737*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (5_1) sqrt_exp -= 512;
738*25c28e83SPiotr Jasiukajtis
739*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (5_1) ind0 &= 0x1ff8;
740*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (0_0) ((float*)&res)[0] = ((float*)px)[0];
741*25c28e83SPiotr Jasiukajtis
742*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (5_1) ind0 += 32;
743*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (0_0) ((float*)&res)[1] = ((float*)px)[1];
744*25c28e83SPiotr Jasiukajtis
745*25c28e83SPiotr Jasiukajtis	and	%i1,32,%i4		! (5_1) bit &= 32;
746*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (5_1) ind0 &= -8;
747*25c28e83SPiotr Jasiukajtis
748*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (5_1) ind1 = ind0;
749*25c28e83SPiotr Jasiukajtis
750*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (5_1) sqrt_exp <<= 52;
751*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%l0		! (5_1) ind1 += bit;
752*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (0_0) hx = *(int*)px;
753*25c28e83SPiotr Jasiukajtis
754*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp0]		! (5_1) dsqrt_exp = *(double*)&sqrt_exp;
755*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (0_0) res = vis_fand(res,DC0);
756*25c28e83SPiotr Jasiukajtis
757*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
758*25c28e83SPiotr Jasiukajtis	fpadd32	%f40,DC2,%f54		! (5_1) res_c = vis_fpadd32(res,DC2);
759*25c28e83SPiotr Jasiukajtis
760*25c28e83SPiotr Jasiukajtis	add	%l0,TBL,%o1		! (5_1) pind = (char*)TBL + ind1
761*25c28e83SPiotr Jasiukajtis
762*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (0_0) hx ? 0x7ff00000
763*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update0		! (0_0) if ( hx >= 0x7ff00000 )
764*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f42		! (0_0) res = vis_for(res,A1);
765*25c28e83SPiotr Jasiukajtis.cont0:
766*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (0_0) sqrt_exp = hx >> 21;
767*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%i2		! (0_0) bit = hx >> 15;
768*25c28e83SPiotr Jasiukajtis	ldd	[%o1],%f50		! (5_1) dtmp0 = ((double*)pind)[0];
769*25c28e83SPiotr Jasiukajtis
770*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (0_0) ind0 = hx >> 7;
771*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (0_0) sqrt_exp -= 512;
772*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (5_1) res_c = vis_fand(res_c,DC3);
773*25c28e83SPiotr Jasiukajtis
774*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (0_0) ind0 &= 0x1ff8;
775*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (1_0) ((float*)&res)[0] = ((float*)px)[0];
776*25c28e83SPiotr Jasiukajtis
777*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (0_0) ind0 += 32;
778*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (1_0) ((float*)&res)[1] = ((float*)px)[1];
779*25c28e83SPiotr Jasiukajtis
780*25c28e83SPiotr Jasiukajtis	and	%i2,32,%i4		! (0_0) bit &= 32;
781*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (0_0) ind0 &= -8;
782*25c28e83SPiotr Jasiukajtis	fsubd	%f40,%f54,%f40		! (5_1) xx = (res - res_c);
783*25c28e83SPiotr Jasiukajtis
784*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (0_0) ind1 = ind0;
785*25c28e83SPiotr Jasiukajtis
786*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (0_0) hx ? 0x00100000
787*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update1		! (0_0) if ( hx < 0x00100000 )
788*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (1_0) hx = *(int*)px;
789*25c28e83SPiotr Jasiukajtis.cont1:
790*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (0_0) sqrt_exp <<= 52;
791*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%i1		! (0_0) ind1 += bit;
792*25c28e83SPiotr Jasiukajtis
793*25c28e83SPiotr Jasiukajtis	fmuld	%f40,%f50,%f40		! (5_1) xx *= dtmp0;
794*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp1]		! (0_0) dsqrt_exp = *(double*)&sqrt_exp;
795*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (1_0) res = vis_fand(res,DC0);
796*25c28e83SPiotr Jasiukajtis
797*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
798*25c28e83SPiotr Jasiukajtis	fpadd32	%f42,DC2,%f54		! (0_0) res_c = vis_fpadd32(res,DC2);
799*25c28e83SPiotr Jasiukajtis
800*25c28e83SPiotr Jasiukajtis	add	%i1,TBL,%o1		! (0_0) pind = (char*)TBL + ind1
801*25c28e83SPiotr Jasiukajtis
802*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (1_0) hx ? 0x7ff00000
803*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update2		! (1_0) if ( hx >= 0x7ff00000 )
804*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f14		! (1_0) res = vis_for(res,A1);
805*25c28e83SPiotr Jasiukajtis.cont2:
806*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (1_0) sqrt_exp = hx >> 21;
807*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%g5		! (1_0) bit = hx >> 15;
808*25c28e83SPiotr Jasiukajtis	ldd	[%o1],%f50		! (0_0) dtmp0 = ((double*)pind)[0];
809*25c28e83SPiotr Jasiukajtis
810*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f40,%f52		! (5_1) res = A5 * xx;
811*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (1_0) ind0 = hx >> 7;
812*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (1_0) sqrt_exp -= 512;
813*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (0_0) res_c = vis_fand(res_c,DC3);
814*25c28e83SPiotr Jasiukajtis
815*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (1_0) ind0 &= 0x1ff8;
816*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (2_0) ((float*)&res)[0] = ((float*)px)[0];
817*25c28e83SPiotr Jasiukajtis
818*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (1_0) ind0 += 32;
819*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (2_0) ((float*)&res)[1] = ((float*)px)[1];
820*25c28e83SPiotr Jasiukajtis
821*25c28e83SPiotr Jasiukajtis	and	%g5,32,%i4		! (1_0) bit &= 32;
822*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (1_0) ind0 &= -8;
823*25c28e83SPiotr Jasiukajtis	fsubd	%f42,%f54,%f42		! (0_0) xx = (res - res_c);
824*25c28e83SPiotr Jasiukajtis
825*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (1_0) ind1 = ind0;
826*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (5_1) res += A4;
827*25c28e83SPiotr Jasiukajtis
828*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (1_0) hx ? 0x00100000
829*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update3		! (1_0) if ( hx < 0x00100000 )
830*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (2_0) hx = *(int*)px;
831*25c28e83SPiotr Jasiukajtis.cont3:
832*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (1_0) sqrt_exp <<= 52;
833*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%i2		! (1_0) ind1 += bit;
834*25c28e83SPiotr Jasiukajtis
835*25c28e83SPiotr Jasiukajtis	fmuld	%f42,%f50,%f42		! (0_0) xx *= dtmp0;
836*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp2]		! (1_0) dsqrt_exp = *(double*)&sqrt_exp;
837*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (2_0) res = vis_fand(res,DC0);
838*25c28e83SPiotr Jasiukajtis
839*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f40,%f34		! (5_1) res *= xx;
840*25c28e83SPiotr Jasiukajtis	fpadd32	%f14,DC2,%f54		! (1_0) res_c = vis_fpadd32(res,DC2);
841*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
842*25c28e83SPiotr Jasiukajtis
843*25c28e83SPiotr Jasiukajtis	add	%i2,TBL,%o1		! (1_0) pind = (char*)TBL + ind1
844*25c28e83SPiotr Jasiukajtis
845*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (2_0) hx ? 0x7ff00000
846*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update4		! (2_0) if ( hx >= 0x7ff00000 )
847*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f18		! (2_0) res = vis_for(res,A1);
848*25c28e83SPiotr Jasiukajtis.cont4:
849*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (2_0) sqrt_exp = hx >> 21;
850*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%g1		! (2_0) bit = hx >> 15;
851*25c28e83SPiotr Jasiukajtis	ldd	[%o1],%f50		! (1_0) dtmp0 = ((double*)pind)[0];
852*25c28e83SPiotr Jasiukajtis
853*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f42,%f52		! (0_0) res = A5 * xx;
854*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (2_0) ind0 = hx >> 7;
855*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (2_0) sqrt_exp -= 512;
856*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (1_0) res_c = vis_fand(res_c,DC3);
857*25c28e83SPiotr Jasiukajtis
858*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (2_0) ind0 &= 0x1ff8;
859*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (3_0) ((float*)&res)[0] = ((float*)px)[0];
860*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (5_1) res += A3;
861*25c28e83SPiotr Jasiukajtis
862*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (2_0) ind0 += 32;
863*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (3_0) ((float*)&res)[1] = ((float*)px)[1];
864*25c28e83SPiotr Jasiukajtis
865*25c28e83SPiotr Jasiukajtis	and	%g1,32,%i4		! (2_0) bit &= 32;
866*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (2_0) ind0 &= -8;
867*25c28e83SPiotr Jasiukajtis	fsubd	%f14,%f54,%f14		! (1_0) xx = (res - res_c);
868*25c28e83SPiotr Jasiukajtis
869*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (2_0) ind1 = ind0;
870*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (0_0) res += A4;
871*25c28e83SPiotr Jasiukajtis
872*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f40,%f52		! (5_1) res *= xx;
873*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (2_0) hx ? 0x00100000
874*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update5		! (2_0) if ( hx < 0x00100000 )
875*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (3_0) hx = *(int*)px;
876*25c28e83SPiotr Jasiukajtis.cont5:
877*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (2_0) sqrt_exp <<= 52;
878*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%g5		! (2_0) ind1 += bit;
879*25c28e83SPiotr Jasiukajtis
880*25c28e83SPiotr Jasiukajtis	fmuld	%f14,%f50,%f14		! (1_0) xx *= dtmp0;
881*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp3]		! (2_0) dsqrt_exp = *(double*)&sqrt_exp;
882*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (3_0) res = vis_fand(res,DC0);
883*25c28e83SPiotr Jasiukajtis
884*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f42,%f34		! (0_0) res *= xx;
885*25c28e83SPiotr Jasiukajtis	fpadd32	%f18,DC2,%f54		! (2_0) res_c = vis_fpadd32(res,DC2);
886*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
887*25c28e83SPiotr Jasiukajtis
888*25c28e83SPiotr Jasiukajtis	add	%g5,TBL,%o1		! (2_0) pind = (char*)TBL + ind1
889*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (5_1) res += A2;
890*25c28e83SPiotr Jasiukajtis
891*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (3_0) hx ? 0x7ff00000
892*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update6		! (3_0) if ( hx >= 0x7ff00000 )
893*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f44		! (3_0) res = vis_for(res,A1);
894*25c28e83SPiotr Jasiukajtis.cont6:
895*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (3_0) sqrt_exp = hx >> 21;
896*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%i3		! (3_0) bit = hx >> 15;
897*25c28e83SPiotr Jasiukajtis	ldd	[%o1],%f50		! (2_0) dtmp0 = ((double*)pind)[0];
898*25c28e83SPiotr Jasiukajtis
899*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f14,%f52		! (1_0) res = A5 * xx;
900*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (3_0) ind0 = hx >> 7;
901*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (3_0) sqrt_exp -= 512;
902*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (2_0) res_c = vis_fand(res_c,DC3);
903*25c28e83SPiotr Jasiukajtis
904*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f40,%f20		! (5_1) res *= xx;
905*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (3_0) ind0 &= 0x1ff8;
906*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (4_0) ((float*)&res)[0] = ((float*)px)[0];
907*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (0_0) res += A3;
908*25c28e83SPiotr Jasiukajtis
909*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (3_0) ind0 += 32;
910*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (4_0) ((float*)&res)[1] = ((float*)px)[1];
911*25c28e83SPiotr Jasiukajtis
912*25c28e83SPiotr Jasiukajtis	and	%i3,32,%i4		! (3_0) bit &= 32;
913*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (3_0) ind0 &= -8;
914*25c28e83SPiotr Jasiukajtis	fsubd	%f18,%f54,%f18		! (2_0) xx = (res - res_c);
915*25c28e83SPiotr Jasiukajtis
916*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (3_0) ind1 = ind0;
917*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (1_0) res += A4;
918*25c28e83SPiotr Jasiukajtis
919*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f42,%f52		! (0_0) res *= xx;
920*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (3_0) hx ? 0x00100000
921*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update7		! (3_0) if ( hx < 0x00100000 )
922*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (5_1) res += A1;
923*25c28e83SPiotr Jasiukajtis.cont7:
924*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (4_0) hx = *(int*)px;
925*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (3_0) sqrt_exp <<= 52;
926*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%g1		! (3_0) ind1 += bit;
927*25c28e83SPiotr Jasiukajtis
928*25c28e83SPiotr Jasiukajtis	fmuld	%f18,%f50,%f18		! (2_0) xx *= dtmp0;
929*25c28e83SPiotr Jasiukajtis	add	%l0,TBL,%l0		! (5_1) pind = (char*)TBL + ind1;
930*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp4]		! (3_0) dsqrt_exp = *(double*)&sqrt_exp;
931*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (4_0) res = vis_fand(res,DC0);
932*25c28e83SPiotr Jasiukajtis
933*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f14,%f34		! (1_0) res *= xx;
934*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
935*25c28e83SPiotr Jasiukajtis	ldd	[%l0+16],%f36		! (5_1) dexp_lo = ((double*)pind)[2];
936*25c28e83SPiotr Jasiukajtis	fpadd32	%f44,DC2,%f54		! (3_0) res_c = vis_fpadd32(res,DC2);
937*25c28e83SPiotr Jasiukajtis
938*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f40,%f12		! (5_1) res *= xx;
939*25c28e83SPiotr Jasiukajtis	add	%g1,TBL,%o1		! (3_0) (char*)div_arr+ind0
940*25c28e83SPiotr Jasiukajtis	ldd	[%l0+8],%f40		! (5_1) dexp_hi = ((double*)pind)[1];
941*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (0_0) res += A2;
942*25c28e83SPiotr Jasiukajtis
943*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (4_0) hx ? 0x7ff00000
944*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update8		! (4_0) if ( hx >= 0x7ff00000 )
945*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f24		! (4_0) res = vis_for(res,A1);
946*25c28e83SPiotr Jasiukajtis.cont8:
947*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (4_0) sqrt_exp = hx >> 21;
948*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%l0		! (4_0) bit = hx >> 15;
949*25c28e83SPiotr Jasiukajtis	ldd	[%o1],%f22		! (3_0) dtmp0 = ((double*)pind)[0];
950*25c28e83SPiotr Jasiukajtis
951*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f18,%f52		! (2_0) res = A5 * xx;
952*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (4_0) ind0 = hx >> 7;
953*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (4_0) sqrt_exp -= 512;
954*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (3_0) res_c = vis_fand(res_c,DC3);
955*25c28e83SPiotr Jasiukajtis
956*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f42,%f20		! (0_0) res *= xx;
957*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (4_0) ind0 &= 0x1ff8;
958*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (5_0) ((float*)&res)[0] = ((float*)px)[0];
959*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (1_0) res += A3;
960*25c28e83SPiotr Jasiukajtis
961*25c28e83SPiotr Jasiukajtis	fmuld	%f40,%f12,%f34		! (5_1) res = dexp_hi * res;
962*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (4_0) ind0 += 32;
963*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (5_0) ((float*)&res)[1] = ((float*)px)[1];
964*25c28e83SPiotr Jasiukajtis
965*25c28e83SPiotr Jasiukajtis	and	%l0,32,%i4		! (4_0) bit &= 32;
966*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (4_0) hx ? 0x00100000
967*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update9		! (4_0) if ( hx < 0x00100000 )
968*25c28e83SPiotr Jasiukajtis	fsubd	%f44,%f54,%f44		! (3_0) xx = (res - res_c);
969*25c28e83SPiotr Jasiukajtis.cont9:
970*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (4_0) ind0 &= -8;
971*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (2_0) res += A4;
972*25c28e83SPiotr Jasiukajtis
973*25c28e83SPiotr Jasiukajtis	cmp	counter,6
974*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.tail
975*25c28e83SPiotr Jasiukajtis	or	%g0,%o4,%l0
976*25c28e83SPiotr Jasiukajtis
977*25c28e83SPiotr Jasiukajtis	ba	.main_loop
978*25c28e83SPiotr Jasiukajtis	nop
979*25c28e83SPiotr Jasiukajtis
980*25c28e83SPiotr Jasiukajtis	.align	16
981*25c28e83SPiotr Jasiukajtis.main_loop:
982*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f14,%f52		! (1_1) res *= xx;
983*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%i3		! (4_1) ind1 = ind0;
984*25c28e83SPiotr Jasiukajtis	add	%i1,TBL,%i1		! (0_1) pind = (char*)TBL + ind1;
985*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (0_1) res += A1;
986*25c28e83SPiotr Jasiukajtis
987*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (5_1) hx = *(int*)px;
988*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (4_1) sqrt_exp <<= 52;
989*25c28e83SPiotr Jasiukajtis	add	%i3,%i4,%i3		! (4_1) ind1 += bit;
990*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (5_2) res += dexp_lo;
991*25c28e83SPiotr Jasiukajtis
992*25c28e83SPiotr Jasiukajtis	fmuld	%f44,%f22,%f44		! (3_1) xx *= dtmp0;
993*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
994*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp5]		! (4_1) dsqrt_exp = *(double*)&sqrt_exp;
995*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (5_1) res = vis_fand(res,DC0);
996*25c28e83SPiotr Jasiukajtis
997*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f18,%f34		! (2_1) res *= xx;
998*25c28e83SPiotr Jasiukajtis	nop
999*25c28e83SPiotr Jasiukajtis	ldd	[%i1+16],%f36		! (0_1) dexp_lo = ((double*)pind)[2];
1000*25c28e83SPiotr Jasiukajtis	fpadd32	%f24,DC2,%f54		! (4_1) res_c = vis_fpadd32(res,DC2);
1001*25c28e83SPiotr Jasiukajtis
1002*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f42,%f16		! (0_1) res *= xx;
1003*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (5_1) sqrt_exp = hx >> 21;
1004*25c28e83SPiotr Jasiukajtis	ldd	[%i1+8],%f42		! (0_1) dexp_hi = ((double*)pind)[1];
1005*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (1_1) res += A2;
1006*25c28e83SPiotr Jasiukajtis
1007*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp0],%f48		! (5_2) dsqrt_exp = *(double*)&sqrt_exp;
1008*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (5_1) hx ? 0x7ff00000
1009*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update10		! (5_1) if ( hx >= 0x7ff00000 )
1010*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f40,%f60		! (5_2) res += dexp_hi;
1011*25c28e83SPiotr Jasiukajtis.cont10:
1012*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (0_0) ((float*)&res)[0] = ((float*)px)[0];
1013*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%i1		! (5_1) bit = hx >> 15;
1014*25c28e83SPiotr Jasiukajtis	add	%i3,TBL,%o7		! (4_1) pind = (char*)TBL + ind1
1015*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f40		! (5_1) res = vis_for(res,A1);
1016*25c28e83SPiotr Jasiukajtis
1017*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f44,%f52		! (3_1) res = A5 * xx;
1018*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (5_1) ind0 = hx >> 7;
1019*25c28e83SPiotr Jasiukajtis	ldd	[%o7],%f22		! (4_1) dtmp0 = ((double*)pind)[0];
1020*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (4_1) res_c = vis_fand(res_c,DC3);
1021*25c28e83SPiotr Jasiukajtis
1022*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f14,%f20		! (1_1) res *= xx;
1023*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (5_1) ind0 &= 0x1ff8;
1024*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (5_1) sqrt_exp -= 512;
1025*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (2_1) res += A3;
1026*25c28e83SPiotr Jasiukajtis
1027*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (5_2) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1028*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (5_1) ind0 += 32;
1029*25c28e83SPiotr Jasiukajtis	st	%f12,[%l0]		! (5_2) ((float*)py)[0] = ((float*)&dtmp0)[0];
1030*25c28e83SPiotr Jasiukajtis	fmuld	%f42,%f16,%f34		! (0_1) res = dexp_hi * res;
1031*25c28e83SPiotr Jasiukajtis
1032*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (0_0) ((float*)&res)[1] = ((float*)px)[1];
1033*25c28e83SPiotr Jasiukajtis	and	%i1,32,%i4		! (5_1) bit &= 32;
1034*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (5_1) ind0 &= -8;
1035*25c28e83SPiotr Jasiukajtis	fsubd	%f24,%f54,%f24		! (4_1) xx = (res - res_c);
1036*25c28e83SPiotr Jasiukajtis
1037*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (5_1) ind1 = ind0;
1038*25c28e83SPiotr Jasiukajtis	add	%l0,stridey,%i1		! py += stridey
1039*25c28e83SPiotr Jasiukajtis	st	%f13,[%l0+4]		! (5_2) ((float*)py)[1] = ((float*)&dtmp0)[1];
1040*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (3_1) res += A4;
1041*25c28e83SPiotr Jasiukajtis
1042*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f18,%f52		! (2_1) res *= xx;
1043*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (5_1) hx ? 0x00100000
1044*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update11		! (5_1) if ( hx < 0x00100000 )
1045*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (1_1) res += A1;
1046*25c28e83SPiotr Jasiukajtis.cont11:
1047*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (5_1) sqrt_exp <<= 52;
1048*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%l0		! (5_1) ind1 += bit;
1049*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (0_0) hx = *(int*)px;
1050*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (0_1) res += dexp_lo;
1051*25c28e83SPiotr Jasiukajtis
1052*25c28e83SPiotr Jasiukajtis	fmuld	%f24,%f22,%f24		! (4_1) xx *= dtmp0;
1053*25c28e83SPiotr Jasiukajtis	add	%i2,TBL,%i2		! (1_1) pind = (char*)TBL + ind1;
1054*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp0]		! (5_1) dsqrt_exp = *(double*)&sqrt_exp;
1055*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (0_0) res = vis_fand(res,DC0);
1056*25c28e83SPiotr Jasiukajtis
1057*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f44,%f34		! (3_1) res *= xx;
1058*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1059*25c28e83SPiotr Jasiukajtis	ldd	[%i2+16],%f36		! (1_1) dexp_lo = ((double*)pind)[2];
1060*25c28e83SPiotr Jasiukajtis	fpadd32	%f40,DC2,%f54		! (5_1) res_c = vis_fpadd32(res,DC2);
1061*25c28e83SPiotr Jasiukajtis
1062*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f14,%f16		! (1_1) res *= xx;
1063*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (0_0) sqrt_exp = hx >> 21;
1064*25c28e83SPiotr Jasiukajtis	ldd	[%i2+8],%f14		! (1_1) dexp_hi = ((double*)pind)[1];
1065*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (2_1) res += A2;
1066*25c28e83SPiotr Jasiukajtis
1067*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp1],%f48		! (0_1) dsqrt_exp = *(double*)&sqrt_exp;
1068*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (0_0) hx ? 0x7ff00000
1069*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update12		! (0_0) if ( hx >= 0x7ff00000 )
1070*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f42,%f60		! (0_1) res += dexp_hi;
1071*25c28e83SPiotr Jasiukajtis.cont12:
1072*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (1_0) ((float*)&res)[0] = ((float*)px)[0];
1073*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%i2		! (0_0) bit = hx >> 15;
1074*25c28e83SPiotr Jasiukajtis	add	%l0,TBL,%o7		! (5_1) pind = (char*)TBL + ind1
1075*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f42		! (0_0) res = vis_for(res,A1);
1076*25c28e83SPiotr Jasiukajtis
1077*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f24,%f52		! (4_1) res = A5 * xx;
1078*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (0_0) ind0 = hx >> 7;
1079*25c28e83SPiotr Jasiukajtis	ldd	[%o7],%f22		! (5_1) dtmp0 = ((double*)pind)[0];
1080*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (5_1) res_c = vis_fand(res_c,DC3);
1081*25c28e83SPiotr Jasiukajtis
1082*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f18,%f20		! (2_1) res *= xx;
1083*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (0_0) ind0 &= 0x1ff8;
1084*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (0_0) sqrt_exp -= 512;
1085*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (3_1) res += A3;
1086*25c28e83SPiotr Jasiukajtis
1087*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (0_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1088*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (0_0) ind0 += 32;
1089*25c28e83SPiotr Jasiukajtis	st	%f12,[%i1]		! (0_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1090*25c28e83SPiotr Jasiukajtis	fmuld	%f14,%f16,%f34		! (1_1) res = dexp_hi * res;
1091*25c28e83SPiotr Jasiukajtis
1092*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (1_0) ((float*)&res)[1] = ((float*)px)[1];
1093*25c28e83SPiotr Jasiukajtis	and	%i2,32,%i4		! (0_0) bit &= 32;
1094*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (0_0) ind0 &= -8;
1095*25c28e83SPiotr Jasiukajtis	fsubd	%f40,%f54,%f40		! (5_1) xx = (res - res_c);
1096*25c28e83SPiotr Jasiukajtis
1097*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (0_0) ind1 = ind0;
1098*25c28e83SPiotr Jasiukajtis	add	%i1,stridey,%i2		! py += stridey
1099*25c28e83SPiotr Jasiukajtis	st	%f13,[%i1+4]		! (0_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1100*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (4_1) res += A4;
1101*25c28e83SPiotr Jasiukajtis
1102*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f44,%f52		! (3_1) res *= xx;
1103*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (0_0) hx ? 0x00100000
1104*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update13		! (0_0) if ( hx < 0x00100000 )
1105*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (2_1) res += A1;
1106*25c28e83SPiotr Jasiukajtis.cont13:
1107*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (1_0) hx = *(int*)px;
1108*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (0_0) sqrt_exp <<= 52;
1109*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%i1		! (0_0) ind1 += bit;
1110*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (1_1) res += dexp_lo;
1111*25c28e83SPiotr Jasiukajtis
1112*25c28e83SPiotr Jasiukajtis	fmuld	%f40,%f22,%f40		! (5_1) xx *= dtmp0;
1113*25c28e83SPiotr Jasiukajtis	add	%g5,TBL,%g5		! (2_1) pind = (char*)TBL + ind1;
1114*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp1]		! (0_0) dsqrt_exp = *(double*)&sqrt_exp;
1115*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (1_0) res = vis_fand(res,DC0);
1116*25c28e83SPiotr Jasiukajtis
1117*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f24,%f34		! (4_1) res *= xx;
1118*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1119*25c28e83SPiotr Jasiukajtis	ldd	[%g5+16],%f36		! (2_1) dexp_lo = ((double*)pind)[2];
1120*25c28e83SPiotr Jasiukajtis	fpadd32	%f42,DC2,%f54		! (0_0) res_c = vis_fpadd32(res,DC2);
1121*25c28e83SPiotr Jasiukajtis
1122*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f18,%f16		! (2_1) res *= xx;
1123*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (1_0) sqrt_exp = hx >> 21;
1124*25c28e83SPiotr Jasiukajtis	ldd	[%g5+8],%f18		! (2_1) dexp_hi = ((double*)pind)[1];
1125*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (3_1) res += A2;
1126*25c28e83SPiotr Jasiukajtis
1127*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp2],%f48		! (1_1) dsqrt_exp = *(double*)&sqrt_exp;
1128*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (1_0) hx ? 0x7ff00000
1129*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update14		! (1_0) if ( hx >= 0x7ff00000 )
1130*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f14,%f60		! (1_1) res += dexp_hi;
1131*25c28e83SPiotr Jasiukajtis.cont14:
1132*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (2_0) ((float*)&res)[0] = ((float*)px)[0];
1133*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%g5		! (1_0) bit = hx >> 15;
1134*25c28e83SPiotr Jasiukajtis	add	%i1,TBL,%o7		! (0_0) pind = (char*)TBL + ind1
1135*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f14		! (1_0) res = vis_for(res,A1);
1136*25c28e83SPiotr Jasiukajtis
1137*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f40,%f52		! (5_1) res = A5 * xx;
1138*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (1_0) ind0 = hx >> 7;
1139*25c28e83SPiotr Jasiukajtis	ldd	[%o7],%f22		! (0_0) dtmp0 = ((double*)pind)[0];
1140*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (0_0) res_c = vis_fand(res_c,DC3);
1141*25c28e83SPiotr Jasiukajtis
1142*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f44,%f20		! (3_1) res *= xx;
1143*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (1_0) ind0 &= 0x1ff8;
1144*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (1_0) sqrt_exp -= 512;
1145*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (4_1) res += A3;
1146*25c28e83SPiotr Jasiukajtis
1147*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (1_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1148*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (1_0) ind0 += 32;
1149*25c28e83SPiotr Jasiukajtis	st	%f12,[%i2]		! (1_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1150*25c28e83SPiotr Jasiukajtis	fmuld	%f18,%f16,%f34		! (2_1) res = dexp_hi * res;
1151*25c28e83SPiotr Jasiukajtis
1152*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (2_0) ((float*)&res)[1] = ((float*)px)[1];
1153*25c28e83SPiotr Jasiukajtis	and	%g5,32,%i4		! (1_0) bit &= 32;
1154*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (1_0) ind0 &= -8;
1155*25c28e83SPiotr Jasiukajtis	fsubd	%f42,%f54,%f42		! (0_0) xx = (res - res_c);
1156*25c28e83SPiotr Jasiukajtis
1157*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (1_0) ind1 = ind0;
1158*25c28e83SPiotr Jasiukajtis	add	%i2,stridey,%g5		! py += stridey
1159*25c28e83SPiotr Jasiukajtis	st	%f13,[%i2+4]		! (1_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1160*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (5_1) res += A4;
1161*25c28e83SPiotr Jasiukajtis
1162*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f24,%f52		! (4_1) res *= xx;
1163*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (1_0) hx ? 0x00100000
1164*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update15		! (1_0) if ( hx < 0x00100000 )
1165*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (3_1) res += A1;
1166*25c28e83SPiotr Jasiukajtis.cont15:
1167*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (2_0) hx = *(int*)px;
1168*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (1_0) sqrt_exp <<= 52;
1169*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%i2		! (1_0) ind1 += bit;
1170*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (2_1) res += dexp_lo;
1171*25c28e83SPiotr Jasiukajtis
1172*25c28e83SPiotr Jasiukajtis	fmuld	%f42,%f22,%f42		! (0_0) xx *= dtmp0;
1173*25c28e83SPiotr Jasiukajtis	add	%g1,TBL,%g1		! (3_1) pind = (char*)TBL + ind1;
1174*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp2]		! (1_0) dsqrt_exp = *(double*)&sqrt_exp;
1175*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (2_0) res = vis_fand(res,DC0);
1176*25c28e83SPiotr Jasiukajtis
1177*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f40,%f34		! (5_1) res *= xx;
1178*25c28e83SPiotr Jasiukajtis	fpadd32	%f14,DC2,%f54		! (1_0) res_c = vis_fpadd32(res,DC2);
1179*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1180*25c28e83SPiotr Jasiukajtis	ldd	[%g1+16],%f36		! (3_1) dexp_lo = ((double*)pind)[2];
1181*25c28e83SPiotr Jasiukajtis
1182*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f44,%f16		! (3_1) res *= xx;
1183*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (2_0) sqrt_exp = hx >> 21;
1184*25c28e83SPiotr Jasiukajtis	ldd	[%g1+8],%f44		! (3_1) dexp_hi = ((double*)pind)[1];
1185*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (4_1) res += A2;
1186*25c28e83SPiotr Jasiukajtis
1187*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp3],%f48		! (2_1) dsqrt_exp = *(double*)&sqrt_exp;
1188*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (2_0) hx ? 0x7ff00000
1189*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update16		! (2_0) if ( hx >= 0x7ff00000 )
1190*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f18,%f60		! (2_1) res += dexp_hi;
1191*25c28e83SPiotr Jasiukajtis.cont16:
1192*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (3_0) ((float*)&res)[0] = ((float*)px)[0];
1193*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%g1		! (2_0) bit = hx >> 15;
1194*25c28e83SPiotr Jasiukajtis	add	%i2,TBL,%o7		! (1_0) pind = (char*)TBL + ind1
1195*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f18		! (2_0) res = vis_for(res,A1);
1196*25c28e83SPiotr Jasiukajtis
1197*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f42,%f52		! (0_0) res = A5 * xx;
1198*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (2_0) ind0 = hx >> 7;
1199*25c28e83SPiotr Jasiukajtis	ldd	[%o7],%f22		! (1_0) dtmp0 = ((double*)pind)[0];
1200*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (1_0) res_c = vis_fand(res_c,DC3);
1201*25c28e83SPiotr Jasiukajtis
1202*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f24,%f20		! (4_1) res *= xx;
1203*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (2_0) ind0 &= 0x1ff8;
1204*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (2_0) sqrt_exp -= 512;
1205*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (5_1) res += A3;
1206*25c28e83SPiotr Jasiukajtis
1207*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (2_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1208*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (2_0) ind0 += 32;
1209*25c28e83SPiotr Jasiukajtis	st	%f12,[%g5]		! (2_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1210*25c28e83SPiotr Jasiukajtis	fmuld	%f44,%f16,%f34		! (3_1) res = dexp_hi * res;
1211*25c28e83SPiotr Jasiukajtis
1212*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (3_0) ((float*)&res)[1] = ((float*)px)[1];
1213*25c28e83SPiotr Jasiukajtis	and	%g1,32,%i4		! (2_0) bit &= 32;
1214*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (2_0) ind0 &= -8;
1215*25c28e83SPiotr Jasiukajtis	fsubd	%f14,%f54,%f14		! (1_0) xx = (res - res_c);
1216*25c28e83SPiotr Jasiukajtis
1217*25c28e83SPiotr Jasiukajtis	sll	%o1,0,%o7		! (2_0) ind1 = ind0;
1218*25c28e83SPiotr Jasiukajtis	add	%g5,stridey,%g1		! py += stridey
1219*25c28e83SPiotr Jasiukajtis	st	%f13,[%g5+4]		! (2_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1220*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (0_0) res += A4;
1221*25c28e83SPiotr Jasiukajtis
1222*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f40,%f52		! (5_1) res *= xx;
1223*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (2_0) hx ? 0x00100000
1224*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update17		! (2_0) if ( hx < 0x00100000 )
1225*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (4_1) res += A1;
1226*25c28e83SPiotr Jasiukajtis.cont17:
1227*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (3_0) hx = *(int*)px;
1228*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (2_0) sqrt_exp <<= 52;
1229*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%g5		! (2_0) ind1 += bit;
1230*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (3_1) res += dexp_lo;
1231*25c28e83SPiotr Jasiukajtis
1232*25c28e83SPiotr Jasiukajtis	fmuld	%f14,%f22,%f14		! (1_0) xx *= dtmp0;
1233*25c28e83SPiotr Jasiukajtis	add	%i3,TBL,%i3		! (4_1) pind = (char*)TBL + ind1;
1234*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp3]		! (2_0) dsqrt_exp = *(double*)&sqrt_exp;
1235*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (3_0) res = vis_fand(res,DC0);
1236*25c28e83SPiotr Jasiukajtis
1237*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f42,%f34		! (0_0) res *= xx;
1238*25c28e83SPiotr Jasiukajtis	fpadd32	%f18,DC2,%f54		! (2_0) res_c = vis_fpadd32(res,DC2);
1239*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1240*25c28e83SPiotr Jasiukajtis	ldd	[%i3+16],%f36		! (4_1) dexp_lo = ((double*)pind)[2];
1241*25c28e83SPiotr Jasiukajtis
1242*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f24,%f16		! (4_1) res *= xx;
1243*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (3_0) sqrt_exp = hx >> 21;
1244*25c28e83SPiotr Jasiukajtis	ldd	[%i3+8],%f24		! (4_1) dexp_hi = ((double*)pind)[1];
1245*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (5_1) res += A2;
1246*25c28e83SPiotr Jasiukajtis
1247*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp4],%f48		! (3_1) dsqrt_exp = *(double*)&sqrt_exp;
1248*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (3_0) hx ? 0x7ff00000
1249*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update18		! (3_0) if ( hx >= 0x7ff00000 )
1250*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f44,%f60		! (3_1) res += dexp_hi;
1251*25c28e83SPiotr Jasiukajtis.cont18:
1252*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (4_0) ((float*)&res)[0] = ((float*)px)[0];
1253*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%i3		! (3_0) bit = hx >> 15;
1254*25c28e83SPiotr Jasiukajtis	add	%g5,TBL,%o7		! (2_0) pind = (char*)TBL + ind1
1255*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f44		! (3_0) res = vis_for(res,A1);
1256*25c28e83SPiotr Jasiukajtis
1257*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f14,%f52		! (1_0) res = A5 * xx;
1258*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (3_0) ind0 = hx >> 7;
1259*25c28e83SPiotr Jasiukajtis	ldd	[%o7],%f22		! (2_0) dtmp0 = ((double*)pind)[0];
1260*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (2_0) res_c = vis_fand(res_c,DC3);
1261*25c28e83SPiotr Jasiukajtis
1262*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f40,%f20		! (5_1) res *= xx;
1263*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (3_0) ind0 &= 0x1ff8;
1264*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (3_0) sqrt_exp -= 512;
1265*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (0_0) res += A3;
1266*25c28e83SPiotr Jasiukajtis
1267*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (3_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1268*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (3_0) ind0 += 32;
1269*25c28e83SPiotr Jasiukajtis	st	%f12,[%g1]		! (3_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1270*25c28e83SPiotr Jasiukajtis	fmuld	%f24,%f16,%f34		! (4_1) res = dexp_hi * res;
1271*25c28e83SPiotr Jasiukajtis
1272*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (4_0) ((float*)&res)[1] = ((float*)px)[1];
1273*25c28e83SPiotr Jasiukajtis	and	%i3,32,%i4		! (3_0) bit &= 32;
1274*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (3_0) ind0 &= -8;
1275*25c28e83SPiotr Jasiukajtis	fsubd	%f18,%f54,%f18		! (2_0) xx = (res - res_c);
1276*25c28e83SPiotr Jasiukajtis
1277*25c28e83SPiotr Jasiukajtis	or	%g0,%o1,%o7		! (3_0) ind1 = ind0;
1278*25c28e83SPiotr Jasiukajtis	add	%g1,stridey,%i3		! py += stridey
1279*25c28e83SPiotr Jasiukajtis	st	%f13,[%g1+4]		! (3_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1280*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (1_0) res += A4;
1281*25c28e83SPiotr Jasiukajtis
1282*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f42,%f52		! (0_0) res *= xx;
1283*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (3_0) hx ? 0x00100000
1284*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update19		! (3_0) if ( hx < 0x00100000 )
1285*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (5_1) res += A1;
1286*25c28e83SPiotr Jasiukajtis.cont19:
1287*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%o5		! (4_0) hx = *(int*)px;
1288*25c28e83SPiotr Jasiukajtis	sllx	%o3,52,%o3		! (3_0) sqrt_exp <<= 52;
1289*25c28e83SPiotr Jasiukajtis	add	%o7,%i4,%g1		! (3_0) ind1 += bit;
1290*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (4_1) res += dexp_lo;
1291*25c28e83SPiotr Jasiukajtis
1292*25c28e83SPiotr Jasiukajtis	fmuld	%f18,%f22,%f18		! (2_0) xx *= dtmp0;
1293*25c28e83SPiotr Jasiukajtis	add	%l0,TBL,%l0		! (5_1) pind = (char*)TBL + ind1;
1294*25c28e83SPiotr Jasiukajtis	stx	%o3,[%fp+tmp4]		! (3_0) dsqrt_exp = *(double*)&sqrt_exp;
1295*25c28e83SPiotr Jasiukajtis	fand	%f10,DC0,%f50		! (4_0) res = vis_fand(res,DC0);
1296*25c28e83SPiotr Jasiukajtis
1297*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f14,%f34		! (1_0) res *= xx;
1298*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1299*25c28e83SPiotr Jasiukajtis	ldd	[%l0+16],%f36		! (5_1) dexp_lo = ((double*)pind)[2];
1300*25c28e83SPiotr Jasiukajtis	fpadd32	%f44,DC2,%f54		! (3_0) res_c = vis_fpadd32(res,DC2);
1301*25c28e83SPiotr Jasiukajtis
1302*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f40,%f16		! (5_1) res *= xx;
1303*25c28e83SPiotr Jasiukajtis	sra	%o5,21,%l1		! (4_0) sqrt_exp = hx >> 21;
1304*25c28e83SPiotr Jasiukajtis	ldd	[%l0+8],%f40		! (5_1) dexp_hi = ((double*)pind)[1];
1305*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (0_0) res += A2;
1306*25c28e83SPiotr Jasiukajtis
1307*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp5],%f48		! (4_1) dsqrt_exp = *(double*)&sqrt_exp;
1308*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x7ff00000		! (4_0) hx ? 0x7ff00000
1309*25c28e83SPiotr Jasiukajtis	bge,pn	%icc,.update20		! (4_0) if ( hx >= 0x7ff00000 )
1310*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f24,%f60		! (4_1) res += dexp_hi;
1311*25c28e83SPiotr Jasiukajtis.cont20:
1312*25c28e83SPiotr Jasiukajtis	lda	[%l2]%asi,%f10		! (5_0) ((float*)&res)[0] = ((float*)px)[0];
1313*25c28e83SPiotr Jasiukajtis	sra	%o5,15,%l0		! (4_0) bit = hx >> 15;
1314*25c28e83SPiotr Jasiukajtis	add	%g1,TBL,%o7		! (3_0) (char*)div_arr+ind0
1315*25c28e83SPiotr Jasiukajtis	for	%f50,A1,%f24		! (4_0) res = vis_for(res,A1);
1316*25c28e83SPiotr Jasiukajtis
1317*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f18,%f52		! (2_0) res = A5 * xx;
1318*25c28e83SPiotr Jasiukajtis	sra	%o5,7,%o1		! (4_0) ind0 = hx >> 7;
1319*25c28e83SPiotr Jasiukajtis	ldd	[%o7],%f22		! (3_0) dtmp0 = ((double*)pind)[0];
1320*25c28e83SPiotr Jasiukajtis	fand	%f54,DC3,%f54		! (3_0) res_c = vis_fand(res_c,DC3);
1321*25c28e83SPiotr Jasiukajtis
1322*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f42,%f20		! (0_0) res *= xx;
1323*25c28e83SPiotr Jasiukajtis	and	%o1,_0x00001ff8,%o1	! (4_0) ind0 &= 0x1ff8;
1324*25c28e83SPiotr Jasiukajtis	sub	%l1,512,%o3		! (4_0) sqrt_exp -= 512;
1325*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (1_0) res += A3;
1326*25c28e83SPiotr Jasiukajtis
1327*25c28e83SPiotr Jasiukajtis	lda	[%l2+4]%asi,%f11	! (5_0) ((float*)&res)[1] = ((float*)px)[1];
1328*25c28e83SPiotr Jasiukajtis	add	%o1,32,%o1		! (4_0) ind0 += 32;
1329*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (4_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1330*25c28e83SPiotr Jasiukajtis	fmuld	%f40,%f16,%f34		! (5_1) res = dexp_hi * res;
1331*25c28e83SPiotr Jasiukajtis
1332*25c28e83SPiotr Jasiukajtis	and	%l0,32,%i4		! (4_0) bit &= 32;
1333*25c28e83SPiotr Jasiukajtis	cmp	%o5,_0x00100000		! (4_0) hx ? 0x00100000
1334*25c28e83SPiotr Jasiukajtis	bl,pn	%icc,.update21		! (4_0) if ( hx < 0x00100000 )
1335*25c28e83SPiotr Jasiukajtis	fsubd	%f44,%f54,%f44		! (3_0) xx = (res - res_c);
1336*25c28e83SPiotr Jasiukajtis.cont21:
1337*25c28e83SPiotr Jasiukajtis	and	%o1,-64,%o1		! (4_0) ind0 &= -8;
1338*25c28e83SPiotr Jasiukajtis	sub	counter,6,counter	! counter
1339*25c28e83SPiotr Jasiukajtis	st	%f12,[%i3]		! (4_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1340*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (2_0) res += A4;
1341*25c28e83SPiotr Jasiukajtis
1342*25c28e83SPiotr Jasiukajtis	st	%f13,[%i3+4]		! (4_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1343*25c28e83SPiotr Jasiukajtis	cmp	counter,6
1344*25c28e83SPiotr Jasiukajtis	bge,pt	%icc,.main_loop
1345*25c28e83SPiotr Jasiukajtis	add	%i3,stridey,%l0		! py += stridey
1346*25c28e83SPiotr Jasiukajtis
1347*25c28e83SPiotr Jasiukajtis.tail:
1348*25c28e83SPiotr Jasiukajtis	subcc	counter,1,counter
1349*25c28e83SPiotr Jasiukajtis	bneg	.begin
1350*25c28e83SPiotr Jasiukajtis	or	%g0,%l0,%o4
1351*25c28e83SPiotr Jasiukajtis
1352*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f14,%f52		! (1_1) res *= xx;
1353*25c28e83SPiotr Jasiukajtis	add	%i1,TBL,%i1		! (0_1) pind = (char*)TBL + ind1;
1354*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (0_1) res += A1;
1355*25c28e83SPiotr Jasiukajtis
1356*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (5_2) res += dexp_lo;
1357*25c28e83SPiotr Jasiukajtis
1358*25c28e83SPiotr Jasiukajtis	fmuld	%f44,%f22,%f44		! (3_1) xx *= dtmp0;
1359*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1360*25c28e83SPiotr Jasiukajtis
1361*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f18,%f34		! (2_1) res *= xx;
1362*25c28e83SPiotr Jasiukajtis	ldd	[%i1+16],%f36		! (0_1) dexp_lo = ((double*)pind)[2];
1363*25c28e83SPiotr Jasiukajtis
1364*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f42,%f12		! (0_1) res *= xx;
1365*25c28e83SPiotr Jasiukajtis	ldd	[%i1+8],%f42		! (0_1) dexp_hi = ((double*)pind)[1];
1366*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (1_1) res += A2;
1367*25c28e83SPiotr Jasiukajtis
1368*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp0],%f48		! (5_2) dsqrt_exp = *(double*)&sqrt_exp;
1369*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f40,%f60		! (5_2) res += dexp_hi;
1370*25c28e83SPiotr Jasiukajtis
1371*25c28e83SPiotr Jasiukajtis	fmuld	A5,%f44,%f52		! (3_1) res = A5 * xx;
1372*25c28e83SPiotr Jasiukajtis
1373*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f14,%f20		! (1_1) res *= xx;
1374*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (2_1) res += A3;
1375*25c28e83SPiotr Jasiukajtis
1376*25c28e83SPiotr Jasiukajtis	fmuld	%f42,%f12,%f34		! (0_1) res = dexp_hi * res;
1377*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (5_2) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1378*25c28e83SPiotr Jasiukajtis
1379*25c28e83SPiotr Jasiukajtis	st	%f12,[%l0]		! (5_2) ((float*)py)[0] = ((float*)&dtmp0)[0];
1380*25c28e83SPiotr Jasiukajtis
1381*25c28e83SPiotr Jasiukajtis	add	%l0,stridey,%i1		! py += stridey
1382*25c28e83SPiotr Jasiukajtis	st	%f13,[%l0+4]		! (5_2) ((float*)py)[1] = ((float*)&dtmp0)[1];
1383*25c28e83SPiotr Jasiukajtis	faddd	%f52,A4,%f54		! (3_1) res += A4;
1384*25c28e83SPiotr Jasiukajtis
1385*25c28e83SPiotr Jasiukajtis	subcc	counter,1,counter
1386*25c28e83SPiotr Jasiukajtis	bneg	.begin
1387*25c28e83SPiotr Jasiukajtis	or	%g0,%i1,%o4
1388*25c28e83SPiotr Jasiukajtis
1389*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f18,%f52		! (2_1) res *= xx;
1390*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (1_1) res += A1;
1391*25c28e83SPiotr Jasiukajtis
1392*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (0_1) res += dexp_lo;
1393*25c28e83SPiotr Jasiukajtis
1394*25c28e83SPiotr Jasiukajtis	add	%i2,TBL,%i2		! (1_1) pind = (char*)TBL + ind1;
1395*25c28e83SPiotr Jasiukajtis
1396*25c28e83SPiotr Jasiukajtis	fmuld	%f54,%f44,%f34		! (3_1) res *= xx;
1397*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1398*25c28e83SPiotr Jasiukajtis	ldd	[%i2+16],%f36		! (1_1) dexp_lo = ((double*)pind)[2];
1399*25c28e83SPiotr Jasiukajtis
1400*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f14,%f12		! (1_1) res *= xx;
1401*25c28e83SPiotr Jasiukajtis	ldd	[%i2+8],%f14		! (1_1) dexp_hi = ((double*)pind)[1];
1402*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (2_1) res += A2;
1403*25c28e83SPiotr Jasiukajtis
1404*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp1],%f48		! (0_1) dsqrt_exp = *(double*)&sqrt_exp;
1405*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f42,%f60		! (0_1) res += dexp_hi;
1406*25c28e83SPiotr Jasiukajtis
1407*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f18,%f20		! (2_1) res *= xx;
1408*25c28e83SPiotr Jasiukajtis	faddd	%f34,A3,%f62		! (3_1) res += A3;
1409*25c28e83SPiotr Jasiukajtis
1410*25c28e83SPiotr Jasiukajtis	fmuld	%f14,%f12,%f34		! (1_1) res = dexp_hi * res;
1411*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (0_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1412*25c28e83SPiotr Jasiukajtis
1413*25c28e83SPiotr Jasiukajtis	st	%f12,[%i1]		! (0_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1414*25c28e83SPiotr Jasiukajtis
1415*25c28e83SPiotr Jasiukajtis	add	%i1,stridey,%i2		! py += stridey
1416*25c28e83SPiotr Jasiukajtis	st	%f13,[%i1+4]		! (0_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1417*25c28e83SPiotr Jasiukajtis
1418*25c28e83SPiotr Jasiukajtis	subcc	counter,1,counter
1419*25c28e83SPiotr Jasiukajtis	bneg	.begin
1420*25c28e83SPiotr Jasiukajtis	or	%g0,%i2,%o4
1421*25c28e83SPiotr Jasiukajtis
1422*25c28e83SPiotr Jasiukajtis	fmuld	%f62,%f44,%f52		! (3_1) res *= xx;
1423*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (2_1) res += A1;
1424*25c28e83SPiotr Jasiukajtis
1425*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (1_1) res += dexp_lo;
1426*25c28e83SPiotr Jasiukajtis
1427*25c28e83SPiotr Jasiukajtis	add	%g5,TBL,%g5		! (2_1) pind = (char*)TBL + ind1;
1428*25c28e83SPiotr Jasiukajtis
1429*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1430*25c28e83SPiotr Jasiukajtis	ldd	[%g5+16],%f36		! (2_1) dexp_lo = ((double*)pind)[2];
1431*25c28e83SPiotr Jasiukajtis
1432*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f18,%f12		! (2_1) res *= xx;
1433*25c28e83SPiotr Jasiukajtis	ldd	[%g5+8],%f18		! (2_1) dexp_hi = ((double*)pind)[1];
1434*25c28e83SPiotr Jasiukajtis	faddd	%f52,A2,%f20		! (3_1) res += A2;
1435*25c28e83SPiotr Jasiukajtis
1436*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp2],%f48		! (1_1) dsqrt_exp = *(double*)&sqrt_exp;
1437*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f14,%f60		! (1_1) res += dexp_hi;
1438*25c28e83SPiotr Jasiukajtis
1439*25c28e83SPiotr Jasiukajtis	fmuld	%f20,%f44,%f20		! (3_1) res *= xx;
1440*25c28e83SPiotr Jasiukajtis
1441*25c28e83SPiotr Jasiukajtis	fmuld	%f18,%f12,%f34		! (2_1) res = dexp_hi * res;
1442*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (1_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1443*25c28e83SPiotr Jasiukajtis
1444*25c28e83SPiotr Jasiukajtis	st	%f12,[%i2]		! (1_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1445*25c28e83SPiotr Jasiukajtis
1446*25c28e83SPiotr Jasiukajtis	add	%i2,stridey,%g5		! py += stridey
1447*25c28e83SPiotr Jasiukajtis	st	%f13,[%i2+4]		! (1_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1448*25c28e83SPiotr Jasiukajtis
1449*25c28e83SPiotr Jasiukajtis	subcc	counter,1,counter
1450*25c28e83SPiotr Jasiukajtis	bneg	.begin
1451*25c28e83SPiotr Jasiukajtis	or	%g0,%g5,%o4
1452*25c28e83SPiotr Jasiukajtis
1453*25c28e83SPiotr Jasiukajtis	faddd	%f20,A1,%f12		! (3_1) res += A1;
1454*25c28e83SPiotr Jasiukajtis
1455*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (2_1) res += dexp_lo;
1456*25c28e83SPiotr Jasiukajtis
1457*25c28e83SPiotr Jasiukajtis	add	%g1,TBL,%g1		! (3_1) pind = (char*)TBL + ind1;
1458*25c28e83SPiotr Jasiukajtis
1459*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1460*25c28e83SPiotr Jasiukajtis	ldd	[%g1+16],%f36		! (3_1) dexp_lo = ((double*)pind)[2];
1461*25c28e83SPiotr Jasiukajtis
1462*25c28e83SPiotr Jasiukajtis	fmuld	%f12,%f44,%f12		! (3_1) res *= xx;
1463*25c28e83SPiotr Jasiukajtis	ldd	[%g1+8],%f44		! (3_1) dexp_hi = ((double*)pind)[1];
1464*25c28e83SPiotr Jasiukajtis
1465*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp3],%f48		! (2_1) dsqrt_exp = *(double*)&sqrt_exp;
1466*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f18,%f60		! (2_1) res += dexp_hi;
1467*25c28e83SPiotr Jasiukajtis
1468*25c28e83SPiotr Jasiukajtis	fmuld	%f44,%f12,%f34		! (3_1) res = dexp_hi * res;
1469*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (2_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1470*25c28e83SPiotr Jasiukajtis
1471*25c28e83SPiotr Jasiukajtis	st	%f12,[%g5]		! (2_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1472*25c28e83SPiotr Jasiukajtis
1473*25c28e83SPiotr Jasiukajtis	add	%g5,stridey,%g1		! py += stridey
1474*25c28e83SPiotr Jasiukajtis	st	%f13,[%g5+4]		! (2_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1475*25c28e83SPiotr Jasiukajtis
1476*25c28e83SPiotr Jasiukajtis	subcc	counter,1,counter
1477*25c28e83SPiotr Jasiukajtis	bneg	.begin
1478*25c28e83SPiotr Jasiukajtis	or	%g0,%g1,%o4
1479*25c28e83SPiotr Jasiukajtis
1480*25c28e83SPiotr Jasiukajtis	faddd	%f34,%f36,%f60		! (3_1) res += dexp_lo;
1481*25c28e83SPiotr Jasiukajtis
1482*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2		! px += stridex
1483*25c28e83SPiotr Jasiukajtis
1484*25c28e83SPiotr Jasiukajtis	ldd	[%fp+tmp4],%f48		! (3_1) dsqrt_exp = *(double*)&sqrt_exp;
1485*25c28e83SPiotr Jasiukajtis	faddd	%f60,%f44,%f60		! (3_1) res += dexp_hi;
1486*25c28e83SPiotr Jasiukajtis
1487*25c28e83SPiotr Jasiukajtis	fpadd32	%f48,%f60,%f12		! (3_1) dtmp0 = vis_fpadd32(dsqrt_exp,res);
1488*25c28e83SPiotr Jasiukajtis
1489*25c28e83SPiotr Jasiukajtis	st	%f12,[%g1]		! (3_1) ((float*)py)[0] = ((float*)&dtmp0)[0];
1490*25c28e83SPiotr Jasiukajtis
1491*25c28e83SPiotr Jasiukajtis	add	%g1,stridey,%i3		! py += stridey
1492*25c28e83SPiotr Jasiukajtis	st	%f13,[%g1+4]		! (3_1) ((float*)py)[1] = ((float*)&dtmp0)[1];
1493*25c28e83SPiotr Jasiukajtis
1494*25c28e83SPiotr Jasiukajtis	ba	.begin
1495*25c28e83SPiotr Jasiukajtis	or	%g0,%i3,%o4
1496*25c28e83SPiotr Jasiukajtis
1497*25c28e83SPiotr Jasiukajtis	.align	16
1498*25c28e83SPiotr Jasiukajtis.spec:
1499*25c28e83SPiotr Jasiukajtis	fsqrtd	%f10,%f10
1500*25c28e83SPiotr Jasiukajtis	add	%l2,stridex,%l2
1501*25c28e83SPiotr Jasiukajtis
1502*25c28e83SPiotr Jasiukajtis	st	%f10,[%o4]
1503*25c28e83SPiotr Jasiukajtis	st	%f11,[%o4+4]
1504*25c28e83SPiotr Jasiukajtis
1505*25c28e83SPiotr Jasiukajtis	add	%o4,stridey,%o4
1506*25c28e83SPiotr Jasiukajtis	ba	.begin1
1507*25c28e83SPiotr Jasiukajtis	sub	counter,1,counter
1508*25c28e83SPiotr Jasiukajtis
1509*25c28e83SPiotr Jasiukajtis	.align	16
1510*25c28e83SPiotr Jasiukajtis.update0:
1511*25c28e83SPiotr Jasiukajtis	cmp	counter,1
1512*25c28e83SPiotr Jasiukajtis	ble	.cont0
1513*25c28e83SPiotr Jasiukajtis	nop
1514*25c28e83SPiotr Jasiukajtis
1515*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1516*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1517*25c28e83SPiotr Jasiukajtis
1518*25c28e83SPiotr Jasiukajtis	sub	counter,1,counter
1519*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1520*25c28e83SPiotr Jasiukajtis
1521*25c28e83SPiotr Jasiukajtis	ba	.cont0
1522*25c28e83SPiotr Jasiukajtis	or	%g0,1,counter
1523*25c28e83SPiotr Jasiukajtis
1524*25c28e83SPiotr Jasiukajtis	.align	16
1525*25c28e83SPiotr Jasiukajtis.update1:
1526*25c28e83SPiotr Jasiukajtis	cmp	counter,1
1527*25c28e83SPiotr Jasiukajtis	ble	.cont1
1528*25c28e83SPiotr Jasiukajtis	nop
1529*25c28e83SPiotr Jasiukajtis
1530*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1531*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1532*25c28e83SPiotr Jasiukajtis
1533*25c28e83SPiotr Jasiukajtis	sub	counter,1,counter
1534*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1535*25c28e83SPiotr Jasiukajtis
1536*25c28e83SPiotr Jasiukajtis	ba	.cont1
1537*25c28e83SPiotr Jasiukajtis	or	%g0,1,counter
1538*25c28e83SPiotr Jasiukajtis
1539*25c28e83SPiotr Jasiukajtis	.align	16
1540*25c28e83SPiotr Jasiukajtis.update2:
1541*25c28e83SPiotr Jasiukajtis	cmp	counter,2
1542*25c28e83SPiotr Jasiukajtis	ble	.cont2
1543*25c28e83SPiotr Jasiukajtis	nop
1544*25c28e83SPiotr Jasiukajtis
1545*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1546*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1547*25c28e83SPiotr Jasiukajtis
1548*25c28e83SPiotr Jasiukajtis	sub	counter,2,counter
1549*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1550*25c28e83SPiotr Jasiukajtis
1551*25c28e83SPiotr Jasiukajtis	ba	.cont2
1552*25c28e83SPiotr Jasiukajtis	or	%g0,2,counter
1553*25c28e83SPiotr Jasiukajtis
1554*25c28e83SPiotr Jasiukajtis	.align	16
1555*25c28e83SPiotr Jasiukajtis.update3:
1556*25c28e83SPiotr Jasiukajtis	cmp	counter,2
1557*25c28e83SPiotr Jasiukajtis	ble	.cont3
1558*25c28e83SPiotr Jasiukajtis	nop
1559*25c28e83SPiotr Jasiukajtis
1560*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1561*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1562*25c28e83SPiotr Jasiukajtis
1563*25c28e83SPiotr Jasiukajtis	sub	counter,2,counter
1564*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1565*25c28e83SPiotr Jasiukajtis
1566*25c28e83SPiotr Jasiukajtis	ba	.cont3
1567*25c28e83SPiotr Jasiukajtis	or	%g0,2,counter
1568*25c28e83SPiotr Jasiukajtis
1569*25c28e83SPiotr Jasiukajtis	.align	16
1570*25c28e83SPiotr Jasiukajtis.update4:
1571*25c28e83SPiotr Jasiukajtis	cmp	counter,3
1572*25c28e83SPiotr Jasiukajtis	ble	.cont4
1573*25c28e83SPiotr Jasiukajtis	nop
1574*25c28e83SPiotr Jasiukajtis
1575*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1576*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1577*25c28e83SPiotr Jasiukajtis
1578*25c28e83SPiotr Jasiukajtis	sub	counter,3,counter
1579*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1580*25c28e83SPiotr Jasiukajtis
1581*25c28e83SPiotr Jasiukajtis	ba	.cont4
1582*25c28e83SPiotr Jasiukajtis	or	%g0,3,counter
1583*25c28e83SPiotr Jasiukajtis
1584*25c28e83SPiotr Jasiukajtis	.align	16
1585*25c28e83SPiotr Jasiukajtis.update5:
1586*25c28e83SPiotr Jasiukajtis	cmp	counter,3
1587*25c28e83SPiotr Jasiukajtis	ble	.cont5
1588*25c28e83SPiotr Jasiukajtis	nop
1589*25c28e83SPiotr Jasiukajtis
1590*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1591*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1592*25c28e83SPiotr Jasiukajtis
1593*25c28e83SPiotr Jasiukajtis	sub	counter,3,counter
1594*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1595*25c28e83SPiotr Jasiukajtis
1596*25c28e83SPiotr Jasiukajtis	ba	.cont5
1597*25c28e83SPiotr Jasiukajtis	or	%g0,3,counter
1598*25c28e83SPiotr Jasiukajtis
1599*25c28e83SPiotr Jasiukajtis	.align	16
1600*25c28e83SPiotr Jasiukajtis.update6:
1601*25c28e83SPiotr Jasiukajtis	cmp	counter,4
1602*25c28e83SPiotr Jasiukajtis	ble	.cont6
1603*25c28e83SPiotr Jasiukajtis	nop
1604*25c28e83SPiotr Jasiukajtis
1605*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1606*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1607*25c28e83SPiotr Jasiukajtis
1608*25c28e83SPiotr Jasiukajtis	sub	counter,4,counter
1609*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1610*25c28e83SPiotr Jasiukajtis
1611*25c28e83SPiotr Jasiukajtis	ba	.cont6
1612*25c28e83SPiotr Jasiukajtis	or	%g0,4,counter
1613*25c28e83SPiotr Jasiukajtis
1614*25c28e83SPiotr Jasiukajtis	.align	16
1615*25c28e83SPiotr Jasiukajtis.update7:
1616*25c28e83SPiotr Jasiukajtis	cmp	counter,4
1617*25c28e83SPiotr Jasiukajtis	ble	.cont7
1618*25c28e83SPiotr Jasiukajtis	nop
1619*25c28e83SPiotr Jasiukajtis
1620*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1621*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1622*25c28e83SPiotr Jasiukajtis
1623*25c28e83SPiotr Jasiukajtis	sub	counter,4,counter
1624*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1625*25c28e83SPiotr Jasiukajtis
1626*25c28e83SPiotr Jasiukajtis	ba	.cont7
1627*25c28e83SPiotr Jasiukajtis	or	%g0,4,counter
1628*25c28e83SPiotr Jasiukajtis
1629*25c28e83SPiotr Jasiukajtis	.align	16
1630*25c28e83SPiotr Jasiukajtis.update8:
1631*25c28e83SPiotr Jasiukajtis	cmp	counter,5
1632*25c28e83SPiotr Jasiukajtis	ble	.cont8
1633*25c28e83SPiotr Jasiukajtis	nop
1634*25c28e83SPiotr Jasiukajtis
1635*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1636*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1637*25c28e83SPiotr Jasiukajtis
1638*25c28e83SPiotr Jasiukajtis	sub	counter,5,counter
1639*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1640*25c28e83SPiotr Jasiukajtis
1641*25c28e83SPiotr Jasiukajtis	ba	.cont8
1642*25c28e83SPiotr Jasiukajtis	or	%g0,5,counter
1643*25c28e83SPiotr Jasiukajtis
1644*25c28e83SPiotr Jasiukajtis	.align	16
1645*25c28e83SPiotr Jasiukajtis.update9:
1646*25c28e83SPiotr Jasiukajtis	cmp	counter,5
1647*25c28e83SPiotr Jasiukajtis	ble	.cont9
1648*25c28e83SPiotr Jasiukajtis	nop
1649*25c28e83SPiotr Jasiukajtis
1650*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1651*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1652*25c28e83SPiotr Jasiukajtis
1653*25c28e83SPiotr Jasiukajtis	sub	counter,5,counter
1654*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1655*25c28e83SPiotr Jasiukajtis
1656*25c28e83SPiotr Jasiukajtis	ba	.cont9
1657*25c28e83SPiotr Jasiukajtis	or	%g0,5,counter
1658*25c28e83SPiotr Jasiukajtis
1659*25c28e83SPiotr Jasiukajtis	.align	16
1660*25c28e83SPiotr Jasiukajtis.update10:
1661*25c28e83SPiotr Jasiukajtis	cmp	counter,6
1662*25c28e83SPiotr Jasiukajtis	ble	.cont10
1663*25c28e83SPiotr Jasiukajtis	nop
1664*25c28e83SPiotr Jasiukajtis
1665*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1666*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1667*25c28e83SPiotr Jasiukajtis
1668*25c28e83SPiotr Jasiukajtis	sub	counter,6,counter
1669*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1670*25c28e83SPiotr Jasiukajtis
1671*25c28e83SPiotr Jasiukajtis	ba	.cont10
1672*25c28e83SPiotr Jasiukajtis	or	%g0,6,counter
1673*25c28e83SPiotr Jasiukajtis
1674*25c28e83SPiotr Jasiukajtis	.align	16
1675*25c28e83SPiotr Jasiukajtis.update11:
1676*25c28e83SPiotr Jasiukajtis	cmp	counter,6
1677*25c28e83SPiotr Jasiukajtis	ble	.cont11
1678*25c28e83SPiotr Jasiukajtis	nop
1679*25c28e83SPiotr Jasiukajtis
1680*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1681*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1682*25c28e83SPiotr Jasiukajtis
1683*25c28e83SPiotr Jasiukajtis	sub	counter,6,counter
1684*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1685*25c28e83SPiotr Jasiukajtis
1686*25c28e83SPiotr Jasiukajtis	ba	.cont11
1687*25c28e83SPiotr Jasiukajtis	or	%g0,6,counter
1688*25c28e83SPiotr Jasiukajtis
1689*25c28e83SPiotr Jasiukajtis	.align	16
1690*25c28e83SPiotr Jasiukajtis.update12:
1691*25c28e83SPiotr Jasiukajtis	cmp	counter,7
1692*25c28e83SPiotr Jasiukajtis	ble	.cont12
1693*25c28e83SPiotr Jasiukajtis	nop
1694*25c28e83SPiotr Jasiukajtis
1695*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1696*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1697*25c28e83SPiotr Jasiukajtis
1698*25c28e83SPiotr Jasiukajtis	sub	counter,7,counter
1699*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1700*25c28e83SPiotr Jasiukajtis
1701*25c28e83SPiotr Jasiukajtis	ba	.cont12
1702*25c28e83SPiotr Jasiukajtis	or	%g0,7,counter
1703*25c28e83SPiotr Jasiukajtis
1704*25c28e83SPiotr Jasiukajtis	.align	16
1705*25c28e83SPiotr Jasiukajtis.update13:
1706*25c28e83SPiotr Jasiukajtis	cmp	counter,7
1707*25c28e83SPiotr Jasiukajtis	ble	.cont13
1708*25c28e83SPiotr Jasiukajtis	nop
1709*25c28e83SPiotr Jasiukajtis
1710*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1711*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1712*25c28e83SPiotr Jasiukajtis
1713*25c28e83SPiotr Jasiukajtis	sub	counter,7,counter
1714*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1715*25c28e83SPiotr Jasiukajtis
1716*25c28e83SPiotr Jasiukajtis	ba	.cont13
1717*25c28e83SPiotr Jasiukajtis	or	%g0,7,counter
1718*25c28e83SPiotr Jasiukajtis
1719*25c28e83SPiotr Jasiukajtis	.align	16
1720*25c28e83SPiotr Jasiukajtis.update14:
1721*25c28e83SPiotr Jasiukajtis	cmp	counter,8
1722*25c28e83SPiotr Jasiukajtis	ble	.cont14
1723*25c28e83SPiotr Jasiukajtis	nop
1724*25c28e83SPiotr Jasiukajtis
1725*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1726*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1727*25c28e83SPiotr Jasiukajtis
1728*25c28e83SPiotr Jasiukajtis	sub	counter,8,counter
1729*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1730*25c28e83SPiotr Jasiukajtis
1731*25c28e83SPiotr Jasiukajtis	ba	.cont14
1732*25c28e83SPiotr Jasiukajtis	or	%g0,8,counter
1733*25c28e83SPiotr Jasiukajtis
1734*25c28e83SPiotr Jasiukajtis	.align	16
1735*25c28e83SPiotr Jasiukajtis.update15:
1736*25c28e83SPiotr Jasiukajtis	cmp	counter,8
1737*25c28e83SPiotr Jasiukajtis	ble	.cont15
1738*25c28e83SPiotr Jasiukajtis	nop
1739*25c28e83SPiotr Jasiukajtis
1740*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1741*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1742*25c28e83SPiotr Jasiukajtis
1743*25c28e83SPiotr Jasiukajtis	sub	counter,8,counter
1744*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1745*25c28e83SPiotr Jasiukajtis
1746*25c28e83SPiotr Jasiukajtis	ba	.cont15
1747*25c28e83SPiotr Jasiukajtis	or	%g0,8,counter
1748*25c28e83SPiotr Jasiukajtis
1749*25c28e83SPiotr Jasiukajtis	.align	16
1750*25c28e83SPiotr Jasiukajtis.update16:
1751*25c28e83SPiotr Jasiukajtis	cmp	counter,9
1752*25c28e83SPiotr Jasiukajtis	ble	.cont16
1753*25c28e83SPiotr Jasiukajtis	nop
1754*25c28e83SPiotr Jasiukajtis
1755*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1756*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1757*25c28e83SPiotr Jasiukajtis
1758*25c28e83SPiotr Jasiukajtis	sub	counter,9,counter
1759*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1760*25c28e83SPiotr Jasiukajtis
1761*25c28e83SPiotr Jasiukajtis	ba	.cont16
1762*25c28e83SPiotr Jasiukajtis	or	%g0,9,counter
1763*25c28e83SPiotr Jasiukajtis
1764*25c28e83SPiotr Jasiukajtis	.align	16
1765*25c28e83SPiotr Jasiukajtis.update17:
1766*25c28e83SPiotr Jasiukajtis	cmp	counter,9
1767*25c28e83SPiotr Jasiukajtis	ble	.cont17
1768*25c28e83SPiotr Jasiukajtis	nop
1769*25c28e83SPiotr Jasiukajtis
1770*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1771*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1772*25c28e83SPiotr Jasiukajtis
1773*25c28e83SPiotr Jasiukajtis	sub	counter,9,counter
1774*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1775*25c28e83SPiotr Jasiukajtis
1776*25c28e83SPiotr Jasiukajtis	ba	.cont17
1777*25c28e83SPiotr Jasiukajtis	or	%g0,9,counter
1778*25c28e83SPiotr Jasiukajtis
1779*25c28e83SPiotr Jasiukajtis	.align	16
1780*25c28e83SPiotr Jasiukajtis.update18:
1781*25c28e83SPiotr Jasiukajtis	cmp	counter,10
1782*25c28e83SPiotr Jasiukajtis	ble	.cont18
1783*25c28e83SPiotr Jasiukajtis	nop
1784*25c28e83SPiotr Jasiukajtis
1785*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1786*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1787*25c28e83SPiotr Jasiukajtis
1788*25c28e83SPiotr Jasiukajtis	sub	counter,10,counter
1789*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1790*25c28e83SPiotr Jasiukajtis
1791*25c28e83SPiotr Jasiukajtis	ba	.cont18
1792*25c28e83SPiotr Jasiukajtis	or	%g0,10,counter
1793*25c28e83SPiotr Jasiukajtis
1794*25c28e83SPiotr Jasiukajtis	.align	16
1795*25c28e83SPiotr Jasiukajtis.update19:
1796*25c28e83SPiotr Jasiukajtis	cmp	counter,10
1797*25c28e83SPiotr Jasiukajtis	ble	.cont19
1798*25c28e83SPiotr Jasiukajtis	nop
1799*25c28e83SPiotr Jasiukajtis
1800*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1801*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1802*25c28e83SPiotr Jasiukajtis
1803*25c28e83SPiotr Jasiukajtis	sub	counter,10,counter
1804*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1805*25c28e83SPiotr Jasiukajtis
1806*25c28e83SPiotr Jasiukajtis	ba	.cont19
1807*25c28e83SPiotr Jasiukajtis	or	%g0,10,counter
1808*25c28e83SPiotr Jasiukajtis
1809*25c28e83SPiotr Jasiukajtis	.align	16
1810*25c28e83SPiotr Jasiukajtis.update20:
1811*25c28e83SPiotr Jasiukajtis	cmp	counter,11
1812*25c28e83SPiotr Jasiukajtis	ble	.cont20
1813*25c28e83SPiotr Jasiukajtis	nop
1814*25c28e83SPiotr Jasiukajtis
1815*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1816*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1817*25c28e83SPiotr Jasiukajtis
1818*25c28e83SPiotr Jasiukajtis	sub	counter,11,counter
1819*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1820*25c28e83SPiotr Jasiukajtis
1821*25c28e83SPiotr Jasiukajtis	ba	.cont20
1822*25c28e83SPiotr Jasiukajtis	or	%g0,11,counter
1823*25c28e83SPiotr Jasiukajtis
1824*25c28e83SPiotr Jasiukajtis	.align	16
1825*25c28e83SPiotr Jasiukajtis.update21:
1826*25c28e83SPiotr Jasiukajtis	cmp	counter,11
1827*25c28e83SPiotr Jasiukajtis	ble	.cont21
1828*25c28e83SPiotr Jasiukajtis	nop
1829*25c28e83SPiotr Jasiukajtis
1830*25c28e83SPiotr Jasiukajtis	sub	%l2,stridex,%i5
1831*25c28e83SPiotr Jasiukajtis	stx	%i5,[%fp+tmp_px]
1832*25c28e83SPiotr Jasiukajtis
1833*25c28e83SPiotr Jasiukajtis	sub	counter,11,counter
1834*25c28e83SPiotr Jasiukajtis	st	counter,[%fp+tmp_counter]
1835*25c28e83SPiotr Jasiukajtis
1836*25c28e83SPiotr Jasiukajtis	ba	.cont21
1837*25c28e83SPiotr Jasiukajtis	or	%g0,11,counter
1838*25c28e83SPiotr Jasiukajtis
1839*25c28e83SPiotr Jasiukajtis.exit:
1840*25c28e83SPiotr Jasiukajtis	ret
1841*25c28e83SPiotr Jasiukajtis	restore
1842*25c28e83SPiotr Jasiukajtis
1843*25c28e83SPiotr Jasiukajtis	SET_SIZE(__vsqrt)
1844*25c28e83SPiotr Jasiukajtis
1845