Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #12050

Re: - Lack of long double implementation in VS

From jacob navia <jacob@spamsink.net>
Newsgroups comp.lang.c
Subject Re: - Lack of long double implementation in VS
Date 2011-10-24 21:37 +0200
Organization lccwin
Message-ID <j84eqe$a5b$1@speranza.aioe.org> (permalink)
References <Xns9F87E3C76413Abubbachipsetone@130.133.4.11> <j823vf$lgv$1@dont-email.me> <nem9a7lcgldi6b9q13c398ri2vueb90ivl@4ax.com> <fb98622e-9c29-4b03-8f11-71f03445c6cc@er6g2000vbb.googlegroups.com>

Show all headers | View raw


Le 24/10/11 19:15, christian.bau a écrit :
> On Oct 24, 4:30 am, Robert Wessel<robertwess...@yahoo.com>  wrote:
>
>> But this was a surprise to many, circa *1993*, since their 16 bit
>> compilers did support 80 bit long doubles.  And, FWIW, sizeof(long
>> double) was 10 on the MS 16-bit compilers, not 16, as was common on
>> x86 *nix.
>
> I have no idea where this decision that 80 bit long double = 10 byte
> came from. The hardware implementation on a modern Intel processor
> reads 10 bytes and writes 10 bytes (so a 16 byte long double is
> actually 80 value bits and 48 bits of rubbish) and doesn't care about
> alignment. So having 16 bytes just adds 60 percent more size to any
> long double data for no gain.

Under intel 64 the stack has to be aligned to a 8 byte boundary. Pushing
or storing any long double variable would need anyway 16 bytes. Besides,
the processor reads more efficiently if the data is aligned to a 16 byte
boundary.

Many considerations like this make alignment to 16 bytes impossible to
avoid. This makes actually waste a lot of memory like the 64 bit
pointers where in many cases only 16 would be actually needed or at most
32.

jacob

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[semi OT] - Lack of long double implementation in VS Bubba <nickname@banelli.biz.invalid> - 2011-10-23 20:23 +0000
  Re: [semi OT] - Lack of long double implementation in VS Keith Thompson <kst-u@mib.org> - 2011-10-23 14:33 -0700
  Re: [semi OT] - Lack of long double implementation in VS Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-10-23 18:19 -0400
    Re: [semi OT] - Lack of long double implementation in VS Robert Wessel <robertwessel2@yahoo.com> - 2011-10-23 22:30 -0500
      Re: - Lack of long double implementation in VS "christian.bau" <christian.bau@cbau.wanadoo.co.uk> - 2011-10-24 10:15 -0700
        Re: - Lack of long double implementation in VS jacob navia <jacob@spamsink.net> - 2011-10-24 21:37 +0200
          Re: - Lack of long double implementation in VS "christian.bau" <christian.bau@cbau.wanadoo.co.uk> - 2011-10-27 01:58 -0700
            Re: - Lack of long double implementation in VS André Gillibert <MetaEntropy.removeThis@gmail.com> - 2011-10-27 16:28 +0200
              Re: - Lack of long double implementation in VS jacob navia <jacob@spamsink.net> - 2011-10-27 19:02 +0200
  Re: [semi OT] - Lack of long double implementation in VS Kaz Kylheku <kaz@kylheku.com> - 2011-10-24 04:15 +0000
    Re: [semi OT] - Lack of long double implementation in VS Keith Thompson <kst-u@mib.org> - 2011-10-23 23:14 -0700
    Re: [semi OT] - Lack of long double implementation in VS Phil Carmody <thefatphil_demunged@yahoo.co.uk> - 2011-10-27 00:03 +0300
      Re: [semi OT] - Lack of long double implementation in VS Keith Thompson <kst-u@mib.org> - 2011-10-26 14:51 -0700
  Re: - Lack of long double implementation in VS Nick Keighley <nick_keighley_nospam@hotmail.com> - 2011-10-24 00:15 -0700

csiph-web