intervals 0.3.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION.txt +1 -0
- data/ext/crlibm/AUTHORS +2 -0
- data/ext/crlibm/COPYING +504 -0
- data/ext/crlibm/ChangeLog +80 -0
- data/ext/crlibm/INSTALL +182 -0
- data/ext/crlibm/Makefile.am +84 -0
- data/ext/crlibm/Makefile.in +530 -0
- data/ext/crlibm/NEWS +0 -0
- data/ext/crlibm/README +31 -0
- data/ext/crlibm/TODO +47 -0
- data/ext/crlibm/VERSION +1 -0
- data/ext/crlibm/aclocal.m4 +989 -0
- data/ext/crlibm/atan-itanium.c +846 -0
- data/ext/crlibm/atan-pentium.c +261 -0
- data/ext/crlibm/atan_accurate.c +244 -0
- data/ext/crlibm/atan_accurate.h +191 -0
- data/ext/crlibm/atan_fast.c +324 -0
- data/ext/crlibm/atan_fast.h +678 -0
- data/ext/crlibm/config.guess +1461 -0
- data/ext/crlibm/config.sub +1566 -0
- data/ext/crlibm/configure +7517 -0
- data/ext/crlibm/configure.ac +364 -0
- data/ext/crlibm/crlibm.h +125 -0
- data/ext/crlibm/crlibm_config.h +149 -0
- data/ext/crlibm/crlibm_config.h.in +148 -0
- data/ext/crlibm/crlibm_private.c +293 -0
- data/ext/crlibm/crlibm_private.h +658 -0
- data/ext/crlibm/csh_fast.c +631 -0
- data/ext/crlibm/csh_fast.h +771 -0
- data/ext/crlibm/double-extended.h +496 -0
- data/ext/crlibm/exp-td.c +962 -0
- data/ext/crlibm/exp-td.h +685 -0
- data/ext/crlibm/exp_accurate.c +197 -0
- data/ext/crlibm/exp_accurate.h +85 -0
- data/ext/crlibm/gappa/log-de-E0-logir0.gappa +106 -0
- data/ext/crlibm/gappa/log-de-E0.gappa +79 -0
- data/ext/crlibm/gappa/log-de.gappa +81 -0
- data/ext/crlibm/gappa/log-td-E0-logir0.gappa +126 -0
- data/ext/crlibm/gappa/log-td-E0.gappa +143 -0
- data/ext/crlibm/gappa/log-td-accurate-E0-logir0.gappa +230 -0
- data/ext/crlibm/gappa/log-td-accurate-E0.gappa +213 -0
- data/ext/crlibm/gappa/log-td-accurate.gappa +217 -0
- data/ext/crlibm/gappa/log-td.gappa +156 -0
- data/ext/crlibm/gappa/trigoSinCosCase3.gappa +204 -0
- data/ext/crlibm/gappa/trigoTanCase2.gappa +73 -0
- data/ext/crlibm/install-sh +269 -0
- data/ext/crlibm/log-de.c +431 -0
- data/ext/crlibm/log-de.h +732 -0
- data/ext/crlibm/log-td.c +852 -0
- data/ext/crlibm/log-td.h +819 -0
- data/ext/crlibm/log10-td.c +906 -0
- data/ext/crlibm/log10-td.h +823 -0
- data/ext/crlibm/log2-td.c +935 -0
- data/ext/crlibm/log2-td.h +821 -0
- data/ext/crlibm/maple/atan.mpl +359 -0
- data/ext/crlibm/maple/common-procedures.mpl +997 -0
- data/ext/crlibm/maple/csh.mpl +446 -0
- data/ext/crlibm/maple/double-extended.mpl +151 -0
- data/ext/crlibm/maple/exp-td.mpl +195 -0
- data/ext/crlibm/maple/log-de.mpl +243 -0
- data/ext/crlibm/maple/log-td.mpl +316 -0
- data/ext/crlibm/maple/log10-td.mpl +345 -0
- data/ext/crlibm/maple/log2-td.mpl +334 -0
- data/ext/crlibm/maple/trigo.mpl +728 -0
- data/ext/crlibm/maple/triple-double.mpl +58 -0
- data/ext/crlibm/missing +198 -0
- data/ext/crlibm/mkinstalldirs +40 -0
- data/ext/crlibm/rem_pio2_accurate.c +219 -0
- data/ext/crlibm/rem_pio2_accurate.h +53 -0
- data/ext/crlibm/scs_lib/AUTHORS +3 -0
- data/ext/crlibm/scs_lib/COPYING +504 -0
- data/ext/crlibm/scs_lib/ChangeLog +16 -0
- data/ext/crlibm/scs_lib/INSTALL +215 -0
- data/ext/crlibm/scs_lib/Makefile.am +18 -0
- data/ext/crlibm/scs_lib/Makefile.in +328 -0
- data/ext/crlibm/scs_lib/NEWS +0 -0
- data/ext/crlibm/scs_lib/README +9 -0
- data/ext/crlibm/scs_lib/TODO +4 -0
- data/ext/crlibm/scs_lib/addition_scs.c +623 -0
- data/ext/crlibm/scs_lib/config.guess +1461 -0
- data/ext/crlibm/scs_lib/config.sub +1566 -0
- data/ext/crlibm/scs_lib/configure +6226 -0
- data/ext/crlibm/scs_lib/division_scs.c +110 -0
- data/ext/crlibm/scs_lib/double2scs.c +174 -0
- data/ext/crlibm/scs_lib/install-sh +269 -0
- data/ext/crlibm/scs_lib/missing +198 -0
- data/ext/crlibm/scs_lib/mkinstalldirs +40 -0
- data/ext/crlibm/scs_lib/multiplication_scs.c +456 -0
- data/ext/crlibm/scs_lib/poly_fct.c +112 -0
- data/ext/crlibm/scs_lib/print_scs.c +73 -0
- data/ext/crlibm/scs_lib/rand_scs.c +63 -0
- data/ext/crlibm/scs_lib/scs.h +353 -0
- data/ext/crlibm/scs_lib/scs2double.c +391 -0
- data/ext/crlibm/scs_lib/scs2mpf.c +58 -0
- data/ext/crlibm/scs_lib/scs2mpfr.c +61 -0
- data/ext/crlibm/scs_lib/scs_private.c +23 -0
- data/ext/crlibm/scs_lib/scs_private.h +133 -0
- data/ext/crlibm/scs_lib/tests/tbx_timing.h +102 -0
- data/ext/crlibm/scs_lib/wrapper_scs.h +486 -0
- data/ext/crlibm/scs_lib/zero_scs.c +52 -0
- data/ext/crlibm/stamp-h.in +1 -0
- data/ext/crlibm/tests/Makefile.am +43 -0
- data/ext/crlibm/tests/Makefile.in +396 -0
- data/ext/crlibm/tests/blind_test.c +148 -0
- data/ext/crlibm/tests/generate_test_vectors.c +258 -0
- data/ext/crlibm/tests/soak_test.c +334 -0
- data/ext/crlibm/tests/test_common.c +627 -0
- data/ext/crlibm/tests/test_common.h +28 -0
- data/ext/crlibm/tests/test_perf.c +570 -0
- data/ext/crlibm/tests/test_val.c +249 -0
- data/ext/crlibm/trigo_accurate.c +500 -0
- data/ext/crlibm/trigo_accurate.h +331 -0
- data/ext/crlibm/trigo_fast.c +1219 -0
- data/ext/crlibm/trigo_fast.h +639 -0
- data/ext/crlibm/triple-double.h +878 -0
- data/ext/extconf.rb +31 -0
- data/ext/fpu.c +107 -0
- data/ext/jamis-mod.rb +591 -0
- data/lib/fpu.rb +287 -0
- data/lib/interval.rb +1170 -0
- data/lib/intervals.rb +212 -0
- data/lib/struct_float.rb +133 -0
- data/test/data_atan.txt +360 -0
- data/test/data_cos.txt +346 -0
- data/test/data_cosh.txt +3322 -0
- data/test/data_exp.txt +3322 -0
- data/test/data_log.txt +141 -0
- data/test/data_sin.txt +140 -0
- data/test/data_sinh.txt +3322 -0
- data/test/data_tan.txt +342 -0
- metadata +186 -0
@@ -0,0 +1,530 @@
|
|
1
|
+
# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
|
2
|
+
|
3
|
+
# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
|
4
|
+
# This Makefile.in is free software; the Free Software Foundation
|
5
|
+
# gives unlimited permission to copy and/or distribute it,
|
6
|
+
# with or without modifications, as long as this notice is preserved.
|
7
|
+
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
9
|
+
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
10
|
+
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
11
|
+
# PARTICULAR PURPOSE.
|
12
|
+
|
13
|
+
|
14
|
+
SHELL = @SHELL@
|
15
|
+
|
16
|
+
srcdir = @srcdir@
|
17
|
+
top_srcdir = @top_srcdir@
|
18
|
+
VPATH = @srcdir@
|
19
|
+
prefix = @prefix@
|
20
|
+
exec_prefix = @exec_prefix@
|
21
|
+
|
22
|
+
bindir = @bindir@
|
23
|
+
sbindir = @sbindir@
|
24
|
+
libexecdir = @libexecdir@
|
25
|
+
datadir = @datadir@
|
26
|
+
sysconfdir = @sysconfdir@
|
27
|
+
sharedstatedir = @sharedstatedir@
|
28
|
+
localstatedir = @localstatedir@
|
29
|
+
libdir = @libdir@
|
30
|
+
infodir = @infodir@
|
31
|
+
mandir = @mandir@
|
32
|
+
includedir = @includedir@
|
33
|
+
oldincludedir = /usr/include
|
34
|
+
|
35
|
+
DESTDIR =
|
36
|
+
|
37
|
+
pkgdatadir = $(datadir)/@PACKAGE@
|
38
|
+
pkglibdir = $(libdir)/@PACKAGE@
|
39
|
+
pkgincludedir = $(includedir)/@PACKAGE@
|
40
|
+
|
41
|
+
top_builddir = .
|
42
|
+
|
43
|
+
ACLOCAL = @ACLOCAL@
|
44
|
+
AUTOCONF = @AUTOCONF@
|
45
|
+
AUTOMAKE = @AUTOMAKE@
|
46
|
+
AUTOHEADER = @AUTOHEADER@
|
47
|
+
|
48
|
+
INSTALL = @INSTALL@
|
49
|
+
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
|
50
|
+
INSTALL_DATA = @INSTALL_DATA@
|
51
|
+
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
52
|
+
transform = @program_transform_name@
|
53
|
+
|
54
|
+
NORMAL_INSTALL = :
|
55
|
+
PRE_INSTALL = :
|
56
|
+
POST_INSTALL = :
|
57
|
+
NORMAL_UNINSTALL = :
|
58
|
+
PRE_UNINSTALL = :
|
59
|
+
POST_UNINSTALL = :
|
60
|
+
host_alias = @host_alias@
|
61
|
+
host_triplet = @host@
|
62
|
+
AWK = @AWK@
|
63
|
+
CC = @CC@
|
64
|
+
HAVE_LIB = @HAVE_LIB@
|
65
|
+
ISODATE = @ISODATE@
|
66
|
+
LIB = @LIB@
|
67
|
+
LN_S = @LN_S@
|
68
|
+
LTLIB = @LTLIB@
|
69
|
+
MAKEINFO = @MAKEINFO@
|
70
|
+
PACKAGE = @PACKAGE@
|
71
|
+
RANLIB = @RANLIB@
|
72
|
+
VERSION = @VERSION@
|
73
|
+
|
74
|
+
lib_LIBRARIES = libcrlibm.a
|
75
|
+
@USE_HARDWARE_DE_TRUE@libcrlibm_a_SOURCES = crlibm.h crlibm_private.h crlibm_private.c double-extended.h exp-td.h exp-td.c log-de.c log-de.h log10-td.h log10-td.c log2-td.h log2-td.c rem_pio2_accurate.h rem_pio2_accurate.c trigo_fast.c trigo_fast.h trigo_accurate.c trigo_accurate.h atan_fast.c atan_fast.h atan_accurate.h atan_accurate.c csh_fast.h csh_fast.c exp_accurate.h exp_accurate.c
|
76
|
+
@USE_HARDWARE_DE_FALSE@libcrlibm_a_SOURCES = crlibm.h crlibm_private.h crlibm_private.c triple-double.h exp-td.h exp-td.c log-td.c log-td.h log10-td.h log10-td.c log2-td.h log2-td.c rem_pio2_accurate.h rem_pio2_accurate.c trigo_fast.c trigo_fast.h trigo_accurate.c trigo_accurate.h atan_fast.c atan_fast.h atan_accurate.h atan_accurate.c csh_fast.h csh_fast.c exp_accurate.h exp_accurate.c
|
77
|
+
|
78
|
+
# add all the scs_lib useful functions
|
79
|
+
libcrlibm_a_LIBADD = scs_lib/scs_private.o scs_lib/addition_scs.o scs_lib/division_scs.o scs_lib/print_scs.o scs_lib/double2scs.o scs_lib/zero_scs.o scs_lib/multiplication_scs.o scs_lib/scs2double.o
|
80
|
+
|
81
|
+
|
82
|
+
include_HEADERS = crlibm.h
|
83
|
+
|
84
|
+
SUBDIRS = scs_lib .
|
85
|
+
@COMPILER_ICC_TRUE@AM_CFLAGS = -std=c99 -mp -Qoption,cpp,--extended_float_types -IPF_fp_speculationsafe
|
86
|
+
@COMPILER_ICC_FALSE@AM_CFLAGS = -std=c99 -fPIC -Wall -Wshadow -Wpointer-arith -Wcast-align -Wconversion -Waggregate-return -Wstrict-prototypes -Wnested-externs -Wlong-long -Winline
|
87
|
+
|
88
|
+
EXTRA_DIST = VERSION TODO docs/crlibm.pdf maple/common-procedures.mpl maple/double-extended.mpl maple/triple-double.mpl maple/exp-td.mpl maple/csh.mpl maple/log-td.mpl maple/log-de.mpl maple/log2-td.mpl maple/log10-td.mpl maple/trigo.mpl maple/atan.mpl gappa/trigoSinCosCase3.gappa gappa/trigoTanCase2.gappa gappa/trigoTanCase2.gappa gappa/trigoSinCosCase3.gappa gappa/trigoTanCase2.gappa gappa/log-de.gappa gappa/log-de-E0.gappa gappa/log-de-E0-logir0.gappa gappa/log-td.gappa gappa/log-td-E0.gappa gappa/log-td-E0-logir0.gappa gappa/log-td-accurate.gappa gappa/log-td-accurate-E0.gappa gappa/log-td-accurate-E0-logir0.gappa docs/latex/crlibm.tex docs/latex/0_intro.tex docs/latex/0_getting-started.tex docs/latex/1_common.tex docs/latex/2_exp.tex docs/latex/3_log.tex docs/latex/4_atan.tex docs/latex/5_csh.tex docs/latex/6_trigo.tex docs/latex/fig_scs docs/latex/fig_exp docs/latex/elem-fun.bib scs_lib/tests/tbx_timing.h log-de.c log-de.h double-extended.h log-td.c log-td.h triple-double.h atan-pentium.c atan-itanium.c
|
89
|
+
|
90
|
+
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
91
|
+
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
92
|
+
CONFIG_HEADER = crlibm_config.h
|
93
|
+
CONFIG_CLEAN_FILES =
|
94
|
+
LIBRARIES = $(lib_LIBRARIES)
|
95
|
+
|
96
|
+
|
97
|
+
DEFS = @DEFS@ -I. -I$(srcdir) -I.
|
98
|
+
CPPFLAGS = @CPPFLAGS@
|
99
|
+
LDFLAGS = @LDFLAGS@
|
100
|
+
LIBS = @LIBS@
|
101
|
+
libcrlibm_a_DEPENDENCIES = scs_lib/scs_private.o scs_lib/addition_scs.o \
|
102
|
+
scs_lib/division_scs.o scs_lib/print_scs.o scs_lib/double2scs.o \
|
103
|
+
scs_lib/zero_scs.o scs_lib/multiplication_scs.o scs_lib/scs2double.o
|
104
|
+
@USE_HARDWARE_DE_TRUE@libcrlibm_a_OBJECTS = crlibm_private.o exp-td.o \
|
105
|
+
@USE_HARDWARE_DE_TRUE@log-de.o log10-td.o log2-td.o rem_pio2_accurate.o \
|
106
|
+
@USE_HARDWARE_DE_TRUE@trigo_fast.o trigo_accurate.o atan_fast.o \
|
107
|
+
@USE_HARDWARE_DE_TRUE@atan_accurate.o csh_fast.o exp_accurate.o
|
108
|
+
@USE_HARDWARE_DE_FALSE@libcrlibm_a_OBJECTS = crlibm_private.o exp-td.o \
|
109
|
+
@USE_HARDWARE_DE_FALSE@log-td.o log10-td.o log2-td.o \
|
110
|
+
@USE_HARDWARE_DE_FALSE@rem_pio2_accurate.o trigo_fast.o \
|
111
|
+
@USE_HARDWARE_DE_FALSE@trigo_accurate.o atan_fast.o atan_accurate.o \
|
112
|
+
@USE_HARDWARE_DE_FALSE@csh_fast.o exp_accurate.o
|
113
|
+
AR = ar
|
114
|
+
CFLAGS = @CFLAGS@
|
115
|
+
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
116
|
+
CCLD = $(CC)
|
117
|
+
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
|
118
|
+
HEADERS = $(include_HEADERS)
|
119
|
+
|
120
|
+
DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \
|
121
|
+
Makefile.am Makefile.in NEWS TODO aclocal.m4 config.guess config.sub \
|
122
|
+
configure configure.ac crlibm_config.h.in install-sh missing \
|
123
|
+
mkinstalldirs
|
124
|
+
|
125
|
+
|
126
|
+
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
127
|
+
|
128
|
+
TAR = tar
|
129
|
+
GZIP_ENV = --best
|
130
|
+
SOURCES = $(libcrlibm_a_SOURCES)
|
131
|
+
OBJECTS = $(libcrlibm_a_OBJECTS)
|
132
|
+
|
133
|
+
all: all-redirect
|
134
|
+
.SUFFIXES:
|
135
|
+
.SUFFIXES: .S .c .o .s
|
136
|
+
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
|
137
|
+
cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
|
138
|
+
|
139
|
+
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
140
|
+
cd $(top_builddir) \
|
141
|
+
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
|
142
|
+
|
143
|
+
$(ACLOCAL_M4): configure.ac
|
144
|
+
cd $(srcdir) && $(ACLOCAL)
|
145
|
+
|
146
|
+
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
147
|
+
$(SHELL) ./config.status --recheck
|
148
|
+
$(srcdir)/configure: $(srcdir)/configure.ac $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
|
149
|
+
cd $(srcdir) && $(AUTOCONF)
|
150
|
+
|
151
|
+
crlibm_config.h: stamp-h
|
152
|
+
@if test ! -f $@; then \
|
153
|
+
rm -f stamp-h; \
|
154
|
+
$(MAKE) stamp-h; \
|
155
|
+
else :; fi
|
156
|
+
stamp-h: $(srcdir)/crlibm_config.h.in $(top_builddir)/config.status
|
157
|
+
cd $(top_builddir) \
|
158
|
+
&& CONFIG_FILES= CONFIG_HEADERS=crlibm_config.h \
|
159
|
+
$(SHELL) ./config.status
|
160
|
+
@echo timestamp > stamp-h 2> /dev/null
|
161
|
+
$(srcdir)/crlibm_config.h.in: $(srcdir)/stamp-h.in
|
162
|
+
@if test ! -f $@; then \
|
163
|
+
rm -f $(srcdir)/stamp-h.in; \
|
164
|
+
$(MAKE) $(srcdir)/stamp-h.in; \
|
165
|
+
else :; fi
|
166
|
+
$(srcdir)/stamp-h.in: $(top_srcdir)/configure.ac $(ACLOCAL_M4)
|
167
|
+
cd $(top_srcdir) && $(AUTOHEADER)
|
168
|
+
@echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
|
169
|
+
|
170
|
+
mostlyclean-hdr:
|
171
|
+
|
172
|
+
clean-hdr:
|
173
|
+
|
174
|
+
distclean-hdr:
|
175
|
+
-rm -f crlibm_config.h
|
176
|
+
|
177
|
+
maintainer-clean-hdr:
|
178
|
+
|
179
|
+
mostlyclean-libLIBRARIES:
|
180
|
+
|
181
|
+
clean-libLIBRARIES:
|
182
|
+
-test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
|
183
|
+
|
184
|
+
distclean-libLIBRARIES:
|
185
|
+
|
186
|
+
maintainer-clean-libLIBRARIES:
|
187
|
+
|
188
|
+
install-libLIBRARIES: $(lib_LIBRARIES)
|
189
|
+
@$(NORMAL_INSTALL)
|
190
|
+
$(mkinstalldirs) $(DESTDIR)$(libdir)
|
191
|
+
@list='$(lib_LIBRARIES)'; for p in $$list; do \
|
192
|
+
if test -f $$p; then \
|
193
|
+
echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p"; \
|
194
|
+
$(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p; \
|
195
|
+
else :; fi; \
|
196
|
+
done
|
197
|
+
@$(POST_INSTALL)
|
198
|
+
@list='$(lib_LIBRARIES)'; for p in $$list; do \
|
199
|
+
if test -f $$p; then \
|
200
|
+
echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \
|
201
|
+
$(RANLIB) $(DESTDIR)$(libdir)/$$p; \
|
202
|
+
else :; fi; \
|
203
|
+
done
|
204
|
+
|
205
|
+
uninstall-libLIBRARIES:
|
206
|
+
@$(NORMAL_UNINSTALL)
|
207
|
+
list='$(lib_LIBRARIES)'; for p in $$list; do \
|
208
|
+
rm -f $(DESTDIR)$(libdir)/$$p; \
|
209
|
+
done
|
210
|
+
|
211
|
+
.c.o:
|
212
|
+
$(COMPILE) -c $<
|
213
|
+
|
214
|
+
.s.o:
|
215
|
+
$(COMPILE) -c $<
|
216
|
+
|
217
|
+
.S.o:
|
218
|
+
$(COMPILE) -c $<
|
219
|
+
|
220
|
+
mostlyclean-compile:
|
221
|
+
-rm -f *.o core *.core
|
222
|
+
|
223
|
+
clean-compile:
|
224
|
+
|
225
|
+
distclean-compile:
|
226
|
+
-rm -f *.tab.c
|
227
|
+
|
228
|
+
maintainer-clean-compile:
|
229
|
+
|
230
|
+
libcrlibm.a: $(libcrlibm_a_OBJECTS) $(libcrlibm_a_DEPENDENCIES)
|
231
|
+
-rm -f libcrlibm.a
|
232
|
+
$(AR) cru libcrlibm.a $(libcrlibm_a_OBJECTS) $(libcrlibm_a_LIBADD)
|
233
|
+
$(RANLIB) libcrlibm.a
|
234
|
+
|
235
|
+
install-includeHEADERS: $(include_HEADERS)
|
236
|
+
@$(NORMAL_INSTALL)
|
237
|
+
$(mkinstalldirs) $(DESTDIR)$(includedir)
|
238
|
+
@list='$(include_HEADERS)'; for p in $$list; do \
|
239
|
+
if test -f "$$p"; then d= ; else d="$(srcdir)/"; fi; \
|
240
|
+
echo " $(INSTALL_DATA) $$d$$p $(DESTDIR)$(includedir)/$$p"; \
|
241
|
+
$(INSTALL_DATA) $$d$$p $(DESTDIR)$(includedir)/$$p; \
|
242
|
+
done
|
243
|
+
|
244
|
+
uninstall-includeHEADERS:
|
245
|
+
@$(NORMAL_UNINSTALL)
|
246
|
+
list='$(include_HEADERS)'; for p in $$list; do \
|
247
|
+
rm -f $(DESTDIR)$(includedir)/$$p; \
|
248
|
+
done
|
249
|
+
|
250
|
+
# This directory's subdirectories are mostly independent; you can cd
|
251
|
+
# into them and run `make' without going through this Makefile.
|
252
|
+
# To change the values of `make' variables: instead of editing Makefiles,
|
253
|
+
# (1) if the variable is set in `config.status', edit `config.status'
|
254
|
+
# (which will cause the Makefiles to be regenerated when you run `make');
|
255
|
+
# (2) otherwise, pass the desired values on the `make' command line.
|
256
|
+
|
257
|
+
@SET_MAKE@
|
258
|
+
|
259
|
+
all-recursive install-data-recursive install-exec-recursive \
|
260
|
+
installdirs-recursive install-recursive uninstall-recursive \
|
261
|
+
check-recursive installcheck-recursive info-recursive dvi-recursive:
|
262
|
+
@set fnord $(MAKEFLAGS); amf=$$2; \
|
263
|
+
dot_seen=no; \
|
264
|
+
target=`echo $@ | sed s/-recursive//`; \
|
265
|
+
list='$(SUBDIRS)'; for subdir in $$list; do \
|
266
|
+
echo "Making $$target in $$subdir"; \
|
267
|
+
if test "$$subdir" = "."; then \
|
268
|
+
dot_seen=yes; \
|
269
|
+
local_target="$$target-am"; \
|
270
|
+
else \
|
271
|
+
local_target="$$target"; \
|
272
|
+
fi; \
|
273
|
+
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
274
|
+
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|
275
|
+
done; \
|
276
|
+
if test "$$dot_seen" = "no"; then \
|
277
|
+
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
278
|
+
fi; test -z "$$fail"
|
279
|
+
|
280
|
+
mostlyclean-recursive clean-recursive distclean-recursive \
|
281
|
+
maintainer-clean-recursive:
|
282
|
+
@set fnord $(MAKEFLAGS); amf=$$2; \
|
283
|
+
dot_seen=no; \
|
284
|
+
rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
|
285
|
+
rev="$$subdir $$rev"; \
|
286
|
+
test "$$subdir" != "." || dot_seen=yes; \
|
287
|
+
done; \
|
288
|
+
test "$$dot_seen" = "no" && rev=". $$rev"; \
|
289
|
+
target=`echo $@ | sed s/-recursive//`; \
|
290
|
+
for subdir in $$rev; do \
|
291
|
+
echo "Making $$target in $$subdir"; \
|
292
|
+
if test "$$subdir" = "."; then \
|
293
|
+
local_target="$$target-am"; \
|
294
|
+
else \
|
295
|
+
local_target="$$target"; \
|
296
|
+
fi; \
|
297
|
+
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
298
|
+
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|
299
|
+
done && test -z "$$fail"
|
300
|
+
tags-recursive:
|
301
|
+
list='$(SUBDIRS)'; for subdir in $$list; do \
|
302
|
+
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
|
303
|
+
done
|
304
|
+
|
305
|
+
tags: TAGS
|
306
|
+
|
307
|
+
ID: $(HEADERS) $(SOURCES) $(LISP)
|
308
|
+
list='$(SOURCES) $(HEADERS)'; \
|
309
|
+
unique=`for i in $$list; do echo $$i; done | \
|
310
|
+
awk ' { files[$$0] = 1; } \
|
311
|
+
END { for (i in files) print i; }'`; \
|
312
|
+
here=`pwd` && cd $(srcdir) \
|
313
|
+
&& mkid -f$$here/ID $$unique $(LISP)
|
314
|
+
|
315
|
+
TAGS: tags-recursive $(HEADERS) $(SOURCES) crlibm_config.h.in $(TAGS_DEPENDENCIES) $(LISP)
|
316
|
+
tags=; \
|
317
|
+
here=`pwd`; \
|
318
|
+
list='$(SUBDIRS)'; for subdir in $$list; do \
|
319
|
+
if test "$$subdir" = .; then :; else \
|
320
|
+
test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
|
321
|
+
fi; \
|
322
|
+
done; \
|
323
|
+
list='$(SOURCES) $(HEADERS)'; \
|
324
|
+
unique=`for i in $$list; do echo $$i; done | \
|
325
|
+
awk ' { files[$$0] = 1; } \
|
326
|
+
END { for (i in files) print i; }'`; \
|
327
|
+
test -z "$(ETAGS_ARGS)crlibm_config.h.in$$unique$(LISP)$$tags" \
|
328
|
+
|| (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags crlibm_config.h.in $$unique $(LISP))
|
329
|
+
|
330
|
+
mostlyclean-tags:
|
331
|
+
|
332
|
+
clean-tags:
|
333
|
+
|
334
|
+
distclean-tags:
|
335
|
+
-rm -f TAGS ID
|
336
|
+
|
337
|
+
maintainer-clean-tags:
|
338
|
+
|
339
|
+
distdir = $(PACKAGE)-$(VERSION)
|
340
|
+
top_distdir = $(distdir)
|
341
|
+
|
342
|
+
# This target untars the dist file and tries a VPATH configuration. Then
|
343
|
+
# it guarantees that the distribution is self-contained by making another
|
344
|
+
# tarfile.
|
345
|
+
distcheck: dist
|
346
|
+
-rm -rf $(distdir)
|
347
|
+
GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
|
348
|
+
mkdir $(distdir)/=build
|
349
|
+
mkdir $(distdir)/=inst
|
350
|
+
dc_install_base=`cd $(distdir)/=inst && pwd`; \
|
351
|
+
cd $(distdir)/=build \
|
352
|
+
&& ../configure --srcdir=.. --prefix=$$dc_install_base \
|
353
|
+
&& $(MAKE) $(AM_MAKEFLAGS) \
|
354
|
+
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
355
|
+
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
356
|
+
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
357
|
+
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
358
|
+
&& $(MAKE) $(AM_MAKEFLAGS) dist
|
359
|
+
-rm -rf $(distdir)
|
360
|
+
@banner="$(distdir).tar.gz is ready for distribution"; \
|
361
|
+
dashes=`echo "$$banner" | sed s/./=/g`; \
|
362
|
+
echo "$$dashes"; \
|
363
|
+
echo "$$banner"; \
|
364
|
+
echo "$$dashes"
|
365
|
+
dist: distdir
|
366
|
+
-chmod -R a+r $(distdir)
|
367
|
+
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
|
368
|
+
-rm -rf $(distdir)
|
369
|
+
dist-all: distdir
|
370
|
+
-chmod -R a+r $(distdir)
|
371
|
+
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
|
372
|
+
-rm -rf $(distdir)
|
373
|
+
distdir: $(DISTFILES)
|
374
|
+
-rm -rf $(distdir)
|
375
|
+
mkdir $(distdir)
|
376
|
+
-chmod 777 $(distdir)
|
377
|
+
$(mkinstalldirs) $(distdir)/docs $(distdir)/docs/latex $(distdir)/gappa \
|
378
|
+
$(distdir)/maple $(distdir)/scs_lib/tests
|
379
|
+
@for file in $(DISTFILES); do \
|
380
|
+
d=$(srcdir); \
|
381
|
+
if test -d $$d/$$file; then \
|
382
|
+
cp -pr $$d/$$file $(distdir)/$$file; \
|
383
|
+
else \
|
384
|
+
test -f $(distdir)/$$file \
|
385
|
+
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|
386
|
+
|| cp -p $$d/$$file $(distdir)/$$file || :; \
|
387
|
+
fi; \
|
388
|
+
done
|
389
|
+
for subdir in $(SUBDIRS); do \
|
390
|
+
if test "$$subdir" = .; then :; else \
|
391
|
+
test -d $(distdir)/$$subdir \
|
392
|
+
|| mkdir $(distdir)/$$subdir \
|
393
|
+
|| exit 1; \
|
394
|
+
chmod 777 $(distdir)/$$subdir; \
|
395
|
+
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
|
396
|
+
|| exit 1; \
|
397
|
+
fi; \
|
398
|
+
done
|
399
|
+
atan_accurate.o: atan_accurate.c crlibm_private.h scs_lib/scs.h \
|
400
|
+
crlibm_config.h scs_lib/scs_private.h atan_accurate.h crlibm.h \
|
401
|
+
atan_fast.h
|
402
|
+
atan_fast.o: atan_fast.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
403
|
+
crlibm_config.h scs_lib/scs_private.h atan_fast.h
|
404
|
+
crlibm_private.o: crlibm_private.c crlibm.h crlibm_private.h \
|
405
|
+
scs_lib/scs.h crlibm_config.h scs_lib/scs_private.h
|
406
|
+
csh_fast.o: csh_fast.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
407
|
+
crlibm_config.h scs_lib/scs_private.h csh_fast.h exp_accurate.h
|
408
|
+
exp-td.o: exp-td.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
409
|
+
crlibm_config.h scs_lib/scs_private.h triple-double.h exp-td.h
|
410
|
+
exp_accurate.o: exp_accurate.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
411
|
+
crlibm_config.h scs_lib/scs_private.h exp_accurate.h
|
412
|
+
exp_fast.o: exp_fast.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
413
|
+
crlibm_config.h scs_lib/scs_private.h exp_fast.h
|
414
|
+
log-de.o: log-de.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
415
|
+
crlibm_config.h scs_lib/scs_private.h double-extended.h \
|
416
|
+
log-de.h
|
417
|
+
log-td.o: log-td.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
418
|
+
crlibm_config.h scs_lib/scs_private.h triple-double.h log-td.h
|
419
|
+
log10-td.o: log10-td.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
420
|
+
crlibm_config.h scs_lib/scs_private.h triple-double.h \
|
421
|
+
log10-td.h
|
422
|
+
log10_accurate.o: log10_accurate.c log10_accurate.h crlibm.h \
|
423
|
+
crlibm_private.h scs_lib/scs.h crlibm_config.h \
|
424
|
+
scs_lib/scs_private.h
|
425
|
+
log2-td.o: log2-td.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
426
|
+
crlibm_config.h scs_lib/scs_private.h triple-double.h log2-td.h
|
427
|
+
log2_accurate.o: log2_accurate.c log2_accurate.h crlibm.h \
|
428
|
+
crlibm_private.h scs_lib/scs.h crlibm_config.h \
|
429
|
+
scs_lib/scs_private.h
|
430
|
+
log_accurate.o: log_accurate.c log_accurate.h crlibm.h crlibm_private.h \
|
431
|
+
scs_lib/scs.h crlibm_config.h scs_lib/scs_private.h
|
432
|
+
log_fast.o: log_fast.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
433
|
+
crlibm_config.h scs_lib/scs_private.h log_fast.h
|
434
|
+
rem_pio2_accurate.o: rem_pio2_accurate.c rem_pio2_accurate.h crlibm.h \
|
435
|
+
crlibm_private.h scs_lib/scs.h crlibm_config.h \
|
436
|
+
scs_lib/scs_private.h
|
437
|
+
trigo_accurate.o: trigo_accurate.c trigo_accurate.h crlibm.h \
|
438
|
+
crlibm_private.h scs_lib/scs.h crlibm_config.h \
|
439
|
+
scs_lib/scs_private.h
|
440
|
+
trigo_fast.o: trigo_fast.c crlibm.h crlibm_private.h scs_lib/scs.h \
|
441
|
+
crlibm_config.h scs_lib/scs_private.h trigo_fast.h
|
442
|
+
|
443
|
+
info-am:
|
444
|
+
info: info-recursive
|
445
|
+
dvi-am:
|
446
|
+
dvi: dvi-recursive
|
447
|
+
check-am: all-am
|
448
|
+
check: check-recursive
|
449
|
+
installcheck-am:
|
450
|
+
installcheck: installcheck-recursive
|
451
|
+
all-recursive-am: crlibm_config.h
|
452
|
+
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
453
|
+
|
454
|
+
install-exec-am: install-libLIBRARIES
|
455
|
+
install-exec: install-exec-recursive
|
456
|
+
|
457
|
+
install-data-am: install-includeHEADERS
|
458
|
+
install-data: install-data-recursive
|
459
|
+
|
460
|
+
install-am: all-am
|
461
|
+
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
462
|
+
install: install-recursive
|
463
|
+
uninstall-am: uninstall-libLIBRARIES uninstall-includeHEADERS
|
464
|
+
uninstall: uninstall-recursive
|
465
|
+
all-am: Makefile $(LIBRARIES) $(HEADERS) crlibm_config.h
|
466
|
+
all-redirect: all-recursive-am
|
467
|
+
install-strip:
|
468
|
+
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
|
469
|
+
installdirs: installdirs-recursive
|
470
|
+
installdirs-am:
|
471
|
+
$(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir)
|
472
|
+
|
473
|
+
|
474
|
+
mostlyclean-generic:
|
475
|
+
|
476
|
+
clean-generic:
|
477
|
+
|
478
|
+
distclean-generic:
|
479
|
+
-rm -f Makefile $(CONFIG_CLEAN_FILES)
|
480
|
+
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
|
481
|
+
|
482
|
+
maintainer-clean-generic:
|
483
|
+
mostlyclean-am: mostlyclean-hdr mostlyclean-libLIBRARIES \
|
484
|
+
mostlyclean-compile mostlyclean-tags \
|
485
|
+
mostlyclean-generic
|
486
|
+
|
487
|
+
mostlyclean: mostlyclean-recursive
|
488
|
+
|
489
|
+
clean-am: clean-hdr clean-libLIBRARIES clean-compile clean-tags \
|
490
|
+
clean-generic mostlyclean-am
|
491
|
+
|
492
|
+
clean: clean-recursive
|
493
|
+
|
494
|
+
distclean-am: distclean-hdr distclean-libLIBRARIES distclean-compile \
|
495
|
+
distclean-tags distclean-generic clean-am
|
496
|
+
|
497
|
+
distclean: distclean-recursive
|
498
|
+
-rm -f config.status
|
499
|
+
|
500
|
+
maintainer-clean-am: maintainer-clean-hdr maintainer-clean-libLIBRARIES \
|
501
|
+
maintainer-clean-compile maintainer-clean-tags \
|
502
|
+
maintainer-clean-generic distclean-am
|
503
|
+
@echo "This command is intended for maintainers to use;"
|
504
|
+
@echo "it deletes files that may require special tools to rebuild."
|
505
|
+
|
506
|
+
maintainer-clean: maintainer-clean-recursive
|
507
|
+
-rm -f config.status
|
508
|
+
|
509
|
+
.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
|
510
|
+
mostlyclean-libLIBRARIES distclean-libLIBRARIES clean-libLIBRARIES \
|
511
|
+
maintainer-clean-libLIBRARIES uninstall-libLIBRARIES \
|
512
|
+
install-libLIBRARIES mostlyclean-compile distclean-compile \
|
513
|
+
clean-compile maintainer-clean-compile uninstall-includeHEADERS \
|
514
|
+
install-includeHEADERS install-data-recursive uninstall-data-recursive \
|
515
|
+
install-exec-recursive uninstall-exec-recursive installdirs-recursive \
|
516
|
+
uninstalldirs-recursive all-recursive check-recursive \
|
517
|
+
installcheck-recursive info-recursive dvi-recursive \
|
518
|
+
mostlyclean-recursive distclean-recursive clean-recursive \
|
519
|
+
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
|
520
|
+
distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
|
521
|
+
dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \
|
522
|
+
install-exec-am install-exec install-data-am install-data install-am \
|
523
|
+
install uninstall-am uninstall all-redirect all-am all installdirs-am \
|
524
|
+
installdirs mostlyclean-generic distclean-generic clean-generic \
|
525
|
+
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
|
526
|
+
|
527
|
+
|
528
|
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
529
|
+
# Otherwise a system limit (for SysV at least) may be exceeded.
|
530
|
+
.NOEXPORT:
|
data/ext/crlibm/NEWS
ADDED
File without changes
|
data/ext/crlibm/README
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
cr-libm, a portable, efficient, correctly rounded mathematical library.
|
2
|
+
|
3
|
+
To compile:
|
4
|
+
./configure; make;
|
5
|
+
|
6
|
+
(for options see ./configure --help)
|
7
|
+
|
8
|
+
To run the selftest:
|
9
|
+
make check;
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
Beta release note:
|
14
|
+
|
15
|
+
This version contains one state-of-the-art implementation. The log
|
16
|
+
comes in two versions, log-td (portable) and log-de (optimised for
|
17
|
+
processors with double-extended hardware). The ./configure should
|
18
|
+
enable the one that is best for your system, except on Itanium: see
|
19
|
+
below.
|
20
|
+
|
21
|
+
There is no known bug, but several shortcomings are listed in
|
22
|
+
the TODO file.
|
23
|
+
|
24
|
+
|
25
|
+
Note for Itanium systems: Out-of-the box it should compile and
|
26
|
+
selftest on Linux under both gcc and icc (feedback on HPUX is
|
27
|
+
welcome). However, optimised versions of log and atan are
|
28
|
+
disabled. They currently require icc 8.1 or later. See the beginning
|
29
|
+
of log-de.c and atan-itanium.c for instructions on how to enable them.
|
30
|
+
|
31
|
+
|
data/ext/crlibm/TODO
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
TODO before 0.10 release (will we call it 1.0?)
|
2
|
+
|
3
|
+
Proof stuff
|
4
|
+
-----------
|
5
|
+
Write proofs for log2-td, log10-td
|
6
|
+
Check all the existing .gappa against last version of Gappa
|
7
|
+
+ set the paths right in the .mpls
|
8
|
+
(not done when we moved the .gappa from maple/ to gappa/)
|
9
|
+
Write proofs of the DE integer rounding tests.
|
10
|
+
|
11
|
+
|
12
|
+
Cleaning up stuff
|
13
|
+
-----------------
|
14
|
+
Check .mpl with underscored variables (some versions of Maple don't like them)
|
15
|
+
Replace calls to expSCS in csh.c with calls to functions in exp-td
|
16
|
+
Check icc 9
|
17
|
+
At the moment, on itanium/icc, log-de only compiles without -mp-std=c99, and 4 of the other ones only compile with these options.
|
18
|
+
Solution: add FMADE macros everywhere FMA intended
|
19
|
+
add make timings
|
20
|
+
|
21
|
+
Autotest stuff
|
22
|
+
--------------
|
23
|
+
Add some of Vincent's worst cases to log2 and log10 testdata
|
24
|
+
|
25
|
+
Optim stuff
|
26
|
+
-----------
|
27
|
+
Fuse atan-pentium and atan-itanium into atan-de
|
28
|
+
|
29
|
+
|
30
|
+
===========================================================================
|
31
|
+
|
32
|
+
TODO some day
|
33
|
+
|
34
|
+
New functions
|
35
|
+
-------------
|
36
|
+
Easy: 2^x, 10^x
|
37
|
+
Moderate: inverse trigs, inverse hyperbolic
|
38
|
+
Difficult: power
|
39
|
+
|
40
|
+
Optimisation stuff
|
41
|
+
------------------
|
42
|
+
Write TD versions of: csh, trigo
|
43
|
+
Write DE versions of: exp, csh, trigo
|
44
|
+
|
45
|
+
Interval stuff
|
46
|
+
--------------
|
47
|
+
Write interval functions for each CR function
|
data/ext/crlibm/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.10beta
|