4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
23 * Copyright 2011 Nexenta Systems, Inc. All rights reserved.
26 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
27 * Use is subject to license terms.
31 * For i = 0L, ..., 75 let x(i) be the extended precision number
32 * whose exponent is given by 0x3ffc + ((i + 8) >> 5) and whose
33 * five most significant fraction bits are given by (i + 8) & 0x1f.
34 * (The remaining fraction bits are zero and the integer bit is 1.)
35 * Then _TBL_sinl_hi[i] := sin(x(i)) rounded to extended precisionL,
36 * and _TBL_sinl_lo[i] ~ sin(x(i)) - _TBL_sinl_hi[i].
41 const long double _TBL_sinl_hi
[] = {
42 1.5561499277355604121432509e-01L,
43 1.5947245893184341994353297e-01L,
44 1.6332749173661285085207024e-01L,
45 1.6718003236480673437500555e-01L,
46 1.7103002203139501927501524e-01L,
47 1.7487740199027218989302670e-01L,
48 1.7872211353515365937804412e-01L,
49 1.8256409800047155539783929e-01L,
50 1.8640329676226988454758749e-01L,
51 1.9023965123909906176839606e-01L,
52 1.9407310289290979115543571e-01L,
53 1.9790359322994628465735775e-01L,
54 2.0173106380163880472144652e-01L,
55 2.0555545620549551765724079e-01L,
56 2.0937671208599364370531084e-01L,
57 2.1319477313546989061102989e-01L,
58 2.1700958109501015675778940e-01L,
59 2.2082107775533849055107655e-01L,
60 2.2462920495770529235180901e-01L,
61 2.2843390459477474541995223e-01L,
62 2.3223511861151146241076006e-01L,
63 2.3603278900606633373558587e-01L,
64 2.3982685783066156443802536e-01L,
65 2.4361726719247488600575847e-01L,
66 2.4740395925452292959266856e-01L,
67 2.5496596041587846749013231e-01L,
68 2.6251239976915328146124702e-01L,
69 2.7004281671858503154006088e-01L,
70 2.7755675164633632592044860e-01L,
71 2.8505374594054742458945975e-01L,
72 2.9253334202332754361585744e-01L,
73 2.9999508337868305117438275e-01L,
74 3.0743851458038085066887951e-01L,
75 3.1486318131974525087106269e-01L,
76 3.2226863043338662567511427e-01L,
77 3.2965440993086017192298214e-01L,
78 3.3702006902225307624892253e-01L,
79 3.4436515814569840820730424e-01L,
80 3.5168922899481405922451731e-01L,
81 3.5899183454606505366498749e-01L,
82 3.6627252908604756136416898e-01L,
83 3.7353086823869294642950362e-01L,
84 3.8076640899239019207055991e-01L,
85 3.8797870972702504604426484e-01L,
86 3.9516733024093423623426119e-01L,
87 4.0233183177777311122311904e-01L,
88 4.0947177705329506611003562e-01L,
89 4.1658673028204111924766885e-01L,
90 4.2367625720393801036934428e-01L,
91 4.3073992511080319721861361e-01L,
92 4.3777730287275513286178799e-01L,
93 4.4478796096452721142060563e-01L,
94 4.5177147149168377657582618e-01L,
95 4.5872740821673659236961014e-01L,
96 4.6565534658516018269211988e-01L,
97 4.7255486375130445115036980e-01L,
98 4.7942553860420300028150759e-01L,
99 4.9307868575392305727079882e-01L,
100 5.0661145481425736764773474e-01L,
101 5.2002054195372700474845132e-01L,
102 5.3330267353602017331871271e-01L,
103 5.4645460691920356440616155e-01L,
104 5.5947313124736687740433047e-01L,
105 5.7235506823450724037203458e-01L,
106 5.8509727294046215482874185e-01L,
107 5.9769663453870153121657086e-01L,
108 6.1015007707579137127265265e-01L,
109 6.2245456022234368301943030e-01L,
110 6.3460708001526929683284300e-01L,
111 6.4660466959115237050095826e-01L,
112 6.5844439991056754159573505e-01L,
113 6.7012338047316289465094724e-01L,
114 6.8163876002333416675559724e-01L,
115 6.9298772724631791026551897e-01L,
116 7.0416751145453367277888060e-01L,
119 const long double _TBL_sinl_lo
[] = {
120 -4.4044420388485708604352042e-21L,
121 -9.3658505779466794663857779e-22L,
122 -5.2040678607071393508410817e-21L,
123 -4.0395267481940078256007650e-21L,
124 6.3327332576496468315469778e-21L,
125 2.6586707822142093837984364e-21L,
126 -2.6878787450050744237345282e-21L,
127 1.7063635662305595250654237e-21L,
128 4.7924921282538555045455343e-21L,
129 -4.4101691066939302183010470e-21L,
130 6.1948600915447822830980496e-22L,
131 -4.9638413649749502251618971e-21L,
132 3.5916271597651546227926473e-21L,
133 -4.0777150323673712797756569e-22L,
134 6.5799136599779898603647660e-21L,
135 5.0431441802236271279596547e-21L,
136 2.7886967636804383702412094e-21L,
137 1.7797941915507094664564119e-21L,
138 -1.3804554392939635583829251e-21L,
139 4.7855981187615466625152631e-21L,
140 3.1708211390406997503004900e-21L,
141 -1.5157834044725652569873263e-22L,
142 3.3438946731684019204631903e-21L,
143 6.4724798056855877111175401e-21L,
144 4.1801428671953314697839700e-21L,
145 -2.5757365367012227482016023e-21L,
146 -1.0297394515771810295074032e-20L,
147 1.2694179637735656722464528e-20L,
148 1.5748512781011179565308673e-21L,
149 -1.6967184859202905792705521e-21L,
150 8.8448858652331336251731737e-21L,
151 -1.1134468969040340293241825e-20L,
152 1.6234471791025321420471804e-21L,
153 -6.0263738196054484651751291e-21L,
154 1.2631652295822646843414172e-20L,
155 -8.6644101687582762853694906e-21L,
156 1.2359222174923859397271358e-20L,
157 -1.3219821587241831508027981e-22L,
158 -1.9324110998995296922101291e-21L,
159 1.2722808830089214240915385e-20L,
160 8.7403704479785940299212466e-21L,
161 -1.2663863629342751015966219e-20L,
162 -1.3359206065200525634208487e-20L,
163 6.8148547822187652382727319e-21L,
164 1.0571450573402892191582257e-20L,
165 -6.0134413552023063129130024e-21L,
166 1.2658405457632407447211937e-20L,
167 1.1443598275137284797608912e-20L,
168 -7.6602922503647693246330011e-21L,
169 -2.2920876394624080624512678e-21L,
170 -1.6901640257671788285214336e-22L,
171 1.2450383440926973698285013e-20L,
172 5.8625687909310643361252782e-21L,
173 7.6848891207540014891539434e-21L,
174 -1.0920363727912466924531705e-20L,
175 -3.8184802762435242280438906e-21L,
176 -8.2196498741416868399433703e-21L,
177 -5.6622687407305065056015130e-21L,
178 -5.4387357437209102117877930e-21L,
179 1.1762381857741709383097597e-20L,
180 1.0418391756080576218864700e-20L,
181 -2.8119958331524728369894697e-21L,
182 -1.9486464776808433575964276e-20L,
183 1.2919131320458122775352322e-20L,
184 -2.3342533395278737494836457e-20L,
185 2.2076763147253802020227787e-20L,
186 1.0897468372542621634126622e-21L,
187 2.2496400209117994020651730e-20L,
188 1.7466909662624346932394383e-20L,
189 2.3083902445127091336067492e-20L,
190 -6.1510978111621596519832919e-21L,
191 3.5843424075843715436394953e-21L,
192 -2.2355288181001597796661994e-20L,
193 1.6296521874464521140945741e-20L,
194 1.1789113655896899561477559e-21L,