Skip to content
Snippets Groups Projects
Commit 1880c4a3 authored by rtoy's avatar rtoy
Browse files

Compile e_rem_pio2.c and k_rem_pio2.c with -ffloat-store on those

platforms that need them.  This is to make sure double-float precision
is used throughout instead of extended precision, which will cause bad
answers.

Linux also appears to need -O1 instead of -O2, so use -O1 everywhere.
(Should this be changed?)
parent 346910c6
No related branches found
No related tags found
No related merge requests found
# $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/GNUmakefile,v 1.26 2007/08/21 18:57:51 fgilham Exp $
# $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/GNUmakefile,v 1.27 2008/01/18 01:44:18 rtoy Exp $
all: lisp.nm
......@@ -64,4 +64,19 @@ Depends: ${SRCS}
$(DEPEND) ${DEPEND_FLAGS} ${CFLAGS} ${CPPFLAGS} $^ > ,depends
mv ,depends Depends
# For x86 architectures, these files need to be compiled with
# -ffloat-store to make sure that we get double-float precision
# instead of the default x86 80-bit extended precision.
# gcc 4.2.1 on Suse 10.3 appears to mis-compile these files with -O2.
# Hence, compile these with -O1, which appears to work. To see this
# failure, try computing (cos (expt 2d0 120)). This should be near
# -0.92587902285....
e_rem_pio2.o : e_rem_pio2.c
$(CC) -c $(CFLAGS) -O1 -ffloat-store $(PATH1)/e_rem_pio2.c
k_rem_pio2.o : k_rem_pio2.c
$(CC) -c $(CFLAGS) -O1 -ffloat-store $(PATH1)/k_rem_pio2.c
-include Depends
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment