X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f X-Recipient: djgpp-workers AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1587806313; bh=pXu3Ta93a5eWb3EnzSnebFgsEn+DsDnbkSkpnFBHBvQ=; h=X-UI-Sender-Class:Date:From:To:Subject:References:In-Reply-To; b=WVTLOAOPqGz4gQvXLkWm/Z/GZSYy1KuIDGS4hvAbe288XvME5ERpYG6JeHI6AF5Rx Me+P9DPgWPJiBDO0rJOHGV72nObTyn3iv4cXoBrhS4b9TmemN73z5m3Rfwc6nTSrb2 DWHrYM8NCmywASDa3ZIbOUXh6ryfQ5DFztKOecDc= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Message-ID: <5EA40067.3030508@gmx.de> Date: Sat, 25 Apr 2020 11:18:31 +0200 From: "Juan Manuel Guerrero (juan DOT guerrero AT gmx DOT de) [via djgpp-workers AT delorie DOT com]" User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; de; rv:1.9.2.13) Gecko/20101206 SUSE/3.1.7 Thunderbird/3.1.7 MIME-Version: 1.0 To: djgpp-workers AT delorie DOT com Subject: Re: Missing functions in DJGPP libc (and/or) libm References: <4aed4e35-34a2-56ba-582a-c9c6ccae6699 AT iki DOT fi> <00b501d611a6$03f80ec0$0be82c40$@gmx.de> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:jkZMGu8S5Dfh47bQ3MbGBIpGnaFIiG2/JvJWh1/jZ+XzyUDHwlN LkYa+rY5LthyZHeOooHOy6WTqFP0Oedr9UZErqUvyBX+ZV8/QFiEvjHISRcaFS1B3SovFpo KEDTg3E/K5Rm0f4wKx0scXJC7rHkCeaAcfsHlLmDC912SP8w7iL8GbQ3GJbq7wGEkOYB6ss dplXuha6F4ZixSXO1LQbA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:TTRZ3ZvKwX8=:lDAKpAzzgYkcNaqyrwmTVa XmnFcZQ+5lAxyMMb/MuhoAOkzkTuIUhBbbsJdwAyKFqFqqveZwBKsK8l6UsPKseEArXJDds+t Tp+iBYeUOOSV2uXrSZ/UmHc9N1LDWLMqJ/qi4uUizWfz4zbO6vRWriKwF27i2AzhYWXQdQp+/ kBtiqJmC6Ca17dU5HatgavAeTVWUmtvoPQQeX8Qui7G+vuqfF8QB0N6NUkFAUR35CcBHvp2pr ZodN54Wyw0Tnwaw7rrE9E5Y8woJdDARk/yDAGhJ5LvdPCfg1GNwZVPrGKmzo9AGrnjdnfanwi iws0rIiCzFflbBbdYkFscF6xyzni+AKzaEWmY74+HSsWCOt2IXW4SNza5CSJjZLCWY84F70ke BiNgx5pMUe4h2gNd7N0OFnKAhzo73DvnMciIpfCeowfoMKfR8rBrjkCLqr1PGm9wqtQ8I4ozq zs6VJgzzG7VrRN8IGULSQH183zDdIe/awJwZt1FPlpzxJB5hVDEO21DWKiw3wB3oW19lTZyr7 RB5w4fpVXm6xtjt4NXcz9fC97aviDeBx+r8O+ZRTxDHBatbs17xBTW/WeHiXRYgYDuTX2jxsS 4u5CmiRtAhgeWd8lTk1Jj1lJKxHBUyPadG++Bhnohu2oiN9IMui3vzjwMxkXrWstARKsMmhSW c01ZnQAG8qJOAyHNYv3zVEvq/bVPtbSi5xTvrTZJIN4d549KsjaCLLoRtkpVUSNtHD/X7phFG tpsTSU/Mc6ILdTYSscXWlsxd5hwX66GayuT6EL4/80XXeH0ODZBS2uQeGMgEdjpSD2B2w9PGQ IyzKvPVKcspVYMdFGIEOSdzqG1QG9jNmkwm8ynlWyE4do8sOLkQFgzgvU5rxRDvRWhp6U4SDj 5HFhZTEAtB3PGY4EtITIM0ZOgGMz3kJHCv+MiOGINqsWDHwTLoRbFZHUW7Il+KLFuS/zxhT8d FoP0z4ggnztTpaGA/3AvKIp8Tp1aYlrMf7bqr4TlJo9d6kpX+20hAnLlQmOkmnIxgnbVXC2ck EStLT76yNexn6LHhQkrT8IGazu8x1AMJ3PCpVcnkWcwzVMTS2fkVP69n7VUekLG+45b42LxGZ hmTn8ihGmmbTRnjasL1mkuLU18xjKrS06msSRsapTn/3OgjhxJ7vEMLO/Hvg9USJHEdoL8rzb yOvPoIKelNQyJn1CrkMT2MgAQ9mR284mDWeMn0PpTyKInTV4kQs3CEK4MATZZMHLxHp+y45zh QXMAm9dIH3c0qyzqR Reply-To: djgpp-workers AT delorie DOT com Am 18.04.2020 17:48, schrieb Andris Pavenis (andris DOT pavenis AT iki DOT fi) [via djgpp-workers AT delorie DOT com]: > On 4/13/20 6:12 PM, (buers AT gmx DOT de) [via djgpp-workers AT delorie DOT com] wrote: >> Hello, >> >> maybe I lost some context. I seem to remember, that I had written functions >> like sinl, cosl, tanl, copysignl almost 2 decades ago and contributed them >> to the DJGPP project? > For one implementation see thread beginning with > > http://www.delorie.com/djgpp/mail-archives/browse.cgi?p=djgpp-workers/2004/12/31/07:43:33 > > > Following mail contains link to at least partial implementation > > http://www.delorie.com/djgpp/mail-archives/browse.cgi?p=djgpp-workers/2004/12/31/13:49:44 > > > I guess we have all time followed wrong approach to try to get all completely perfect before trying to commit something to CVS. The result usually was endless discussions about it and at end life went on, work already done was forgotten buried in mailing list archives and maybe sometimes even lost (original URL to proposed additions broken, so lost unless somebody accidentally still have copy somewhere on HDD) and nothing was committed to CVS. Fortunately above mentioned implementation will not get lost as it is already on delorie.com. > > This approach could be OK if we would have number of developers like such projects as GCC. We do not have resources for it. > > One need to get stuff in CVS to have something to work on and fix possible problems after that. > > I'm afraid that otherwise the history will repeat: some discussion (perhaps shorter than 10 or more years ago) and after that really nothing achieved. > > I guess it maybe time to realize shortness of our resources and if nothing changes on our side deprecate DJGPP port of GCC in version 11 with possible later removal in version 12. It is not my decision though. > > Andris I have inspected the mentioned stuff and the very first question that arises is: are there any copyright issues with this code? I do not know if K.B. Williams still follows this group. Also, it should be noticed that most of the proposed code is simply taken and adapted from some version of the Cephes C and C++ language special functions math library available at . As far as I can see, cygwin seems to follow the same approach at least for the math functions for complex numbers. But anyway, here DJ is the only one that can clear if the usage of Cephes library code conforms with DJGPP copyright politics. If there are no copyright issues then probably the newest version of the Cephes library can be taken and adapted to DJGPP. I think that 3 or 4 functions can be implemented per week together with some test code. There would be no more infinite discussions at all because there will be only one single developer/contributor at all that will do the job. It should be clear that the code as it is will not really work in the library and that more than some small adjustments will be required to integrate it into libm so that starting with the latest version of Cephes would be the cleanest way to proceed. Some one needs to understand what is going on. But that is only my opinion. BTW, I had already commited [l]lrint[f|d], [l]lround[f|d], rintl and round[f|l] almost 10 years ago, so there was already some long double development started that could have been continued. IIRC most of the long double math versions are implemented as assembler code versions in libc expecially cosl and sinl. Regards, Juan M. Guerrero