public inbox for ecos-patches@sourceware.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@bugs.ecos.sourceware.org
To: ecos-patches@ecos.sourceware.org
Subject: [Bug 1001539] Single precision floating point math library
Date: Sun, 09 Jun 2013 09:39:00 -0000	[thread overview]
Message-ID: <bug-1001539-104-kGcfmYBR81@http.bugs.ecos.sourceware.org/> (raw)
In-Reply-To: <bug-1001539-104@http.bugs.ecos.sourceware.org/>

Please do not reply to this email, use the link below.

http://bugs.ecos.sourceware.org/show_bug.cgi?id=1001539

--- Comment #33 from Ilija Kocho <ilijak@siva.com.mk> ---
Created attachment 2255
  --> http://bugs.ecos.sourceware.org/attachment.cgi?id=2255&action=edit
Inline some portable API functions for IEEE only option (incremental)

Here is a proposal for optimisation of some functions for both space and speed.
If CYGSEM_LIBM_COMPAT_IEEE_ONLY compatibility option is selected then portable
API (wrapper) functions became trivial and can be inlined. Inlining eliminates
one step of indirection, producing faster code. The generated code in total, is
also shorter. At present following portable APIs are inlined: atan2/atan2f and
hypot/hypotf. The reason for this selection is that they are used by basic
complex carg/cargf and cabs/cabsf operations respectively.
Inlining option is user selectable and is disabled by default in order to
preserve backward compatibility

Here we come to complex number support. My initial intention was to enable only
basic operations: argument, abs value, conjugation, real and imaginary parts
(some of them trivial/builtin). However it turned out that complete complex
library (taken from Newlib) compiled without warnings - almost verbatim.
Therefore I decided to submit complete complex library as well. Most functions
are unaltered - hence original copyright banners are preserved. The ones that I
have altered are (however trivial) different enough to publish them under eCos
licence. That includes: carg, cabs, conj, creal and cimag - all double and
float.
Arguably the complex support could be subject to a separate bug, but IMO it
fits here well in context of previous paragraph. It is easy to change the topic
of this bug accordingly.

Note: This attachment is incremental to 1656+1657+1658 patch collection. It
does not contain complex functions body. That will be posted in a patch that
follows.

Ilija

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2013-06-09  9:39 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-20 19:23 [Bug 1001539] New: " bugzilla-daemon
2012-03-20 19:24 ` [Bug 1001539] " bugzilla-daemon
2012-03-20 19:26 ` bugzilla-daemon
2012-03-20 19:39 ` bugzilla-daemon
2012-03-20 19:39 ` bugzilla-daemon
2012-03-20 19:40 ` bugzilla-daemon
2012-03-20 19:41 ` bugzilla-daemon
2012-03-20 19:43 ` bugzilla-daemon
2012-03-20 19:47 ` bugzilla-daemon
2012-03-21 13:44 ` bugzilla-daemon
2012-03-21 15:56 ` bugzilla-daemon
2012-03-21 18:36 ` bugzilla-daemon
2012-03-21 19:52 ` bugzilla-daemon
2012-03-22 10:24 ` bugzilla-daemon
2012-03-22 10:25 ` bugzilla-daemon
2012-03-22 10:26 ` bugzilla-daemon
2012-03-22 10:27 ` bugzilla-daemon
2012-03-22 10:28 ` bugzilla-daemon
2012-03-22 11:01 ` bugzilla-daemon
2012-03-22 13:42 ` bugzilla-daemon
2012-03-22 18:05 ` bugzilla-daemon
2012-03-22 23:53 ` bugzilla-daemon
2012-08-08 11:48 ` bugzilla-daemon
2013-05-15 20:00 ` bugzilla-daemon
2013-05-16  9:59 ` bugzilla-daemon
2013-06-07  9:17 ` bugzilla-daemon
2013-06-07 12:47 ` bugzilla-daemon
2013-06-07 20:20 ` bugzilla-daemon
2013-06-08 12:24 ` bugzilla-daemon
2013-06-08 15:37 ` bugzilla-daemon
2013-06-08 19:04 ` bugzilla-daemon
2013-06-08 19:08 ` bugzilla-daemon
2013-06-08 19:39 ` bugzilla-daemon
2013-06-09  9:39 ` bugzilla-daemon [this message]
2013-06-09  9:42 ` bugzilla-daemon
2013-06-09 18:23 ` bugzilla-daemon
2013-06-28 15:42 ` bugzilla-daemon
2013-06-28 15:44 ` bugzilla-daemon
2013-06-28 15:46 ` bugzilla-daemon
2013-06-28 15:51 ` bugzilla-daemon
2013-06-28 15:52 ` bugzilla-daemon
2013-06-28 15:53 ` bugzilla-daemon
2013-06-28 15:55 ` bugzilla-daemon
2013-06-28 15:56 ` bugzilla-daemon
2013-06-28 15:57 ` bugzilla-daemon
2013-06-28 15:58 ` bugzilla-daemon
2013-06-28 17:26 ` bugzilla-daemon
2013-08-09 15:44 ` bugzilla-daemon
2013-08-25 15:41 ` bugzilla-daemon
2013-09-24 18:08 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-1001539-104-kGcfmYBR81@http.bugs.ecos.sourceware.org/ \
    --to=bugzilla-daemon@bugs.ecos.sourceware.org \
    --cc=ecos-patches@ecos.sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).