public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jim Wilson <wilson@specifixinc.com>
To: Kean Johnston <jkj@sco.com>
Cc: gcc@gcc.gnu.org
Subject: Re: Promoting floats to doubles?
Date: Tue, 04 May 2004 04:00:00 -0000	[thread overview]
Message-ID: <1083643245.1258.151.camel@leaf.tuliptree.org> (raw)
In-Reply-To: <4096EEAE.60105@sco.com>

On Mon, 2004-05-03 at 18:15, Kean Johnston wrote:
> It turns out I have a real problem on my hands. The OSR5 ABI
> dictates that floats are always promoted to doubles.

You could look at gcc versions from a few versions ago, find the K&R C
support that did this, and re-add it suitably configured so it can be
enabled for your target only.

You could look at the current PROMOTE_FUNCTION_ARG/PROMOTE_PROTOTYPES
stuff and extend it so that it works for float->double conversions.

You can use fixinc to fix the prototypes.

The fixinc solution has the flaw that code with prototypes that use
float won't be portable between the SCO compiler and GCC.  You can fix
the system header prototypes, but you can't fix the prototypes in all
applications and libraries.

The first two solutions have the flaw that they violate the intent of
ISO C, though I don't think they violate the letter of the standard. 
Converting float to double won't change the value.  It just makes the
code less efficient, as you will have an unnecessary float to double
conversion in the caller, and an unnecessary double to float conversion
in the callee.  Any well written program should not be affected by these
unnecessary conversions.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com

  reply	other threads:[~2004-05-04  4:00 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-02  6:32 Kean Johnston
2004-05-03 20:39 ` Jim Wilson
2004-05-04  1:25   ` Kean Johnston
2004-05-04  4:00     ` Jim Wilson [this message]
2004-05-04 17:45       ` Kean Johnston
2004-05-04 18:52         ` Joseph S. Myers
2004-05-04 20:44           ` Jim Wilson
2004-05-05  0:06             ` Kean Johnston
2004-05-05  2:18               ` Jim Wilson
2004-05-05  7:10               ` Jim Wilson
2004-05-05  9:10                 ` Kean Johnston
2004-05-05 22:47                   ` Jim Wilson
2004-05-05 23:48                     ` Kean Johnston
2004-05-04 20:52         ` Jim Wilson
2004-05-05  0:14           ` Kean Johnston

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=1083643245.1258.151.camel@leaf.tuliptree.org \
    --to=wilson@specifixinc.com \
    --cc=gcc@gcc.gnu.org \
    --cc=jkj@sco.com \
    /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).