Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 2010 21:20:29 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/lib/libc/amd64/gen ldexp.c
Message-ID:  <201009292120.o8TLKk4A095449@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
dim         2010-09-29 21:20:29 UTC

  FreeBSD src repository

  Modified files:
    lib/libc/amd64/gen   ldexp.c 
  Log:
  SVN rev 213281 on 2010-09-29 21:20:29Z by dim
  
  Apply the same workaround for clang to amd64's version of ldexp.c (as in
  r212976): order the incoming arguments to fscale as st(0), st(1), and
  mark temp2 volatile (only in case of compilation with clang) to force
  clang to pop it correctly.  No binary change when compiled with gcc.
  
  This fixes ldexp() when compiled with clang on amd64, which makes
  drand48() and friends work correctly again, and this in turn fixes
  perl's tempfile().
  
  Reported by:    Renato Botelho, Derek Tattersall
  Approved by:    rpaulo (mentor)
  
  Revision  Changes    Path
  1.15      +9 -3      src/lib/libc/amd64/gen/ldexp.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201009292120.o8TLKk4A095449>