Multiple double arithmetic in C for PHCv2.4.87

The standalone C version is a derivative of the double doubles
in the QD library, extended with code generated by CAMPARY.
CAMPARY is the CudA Multiple Precision ARithmetic librarY,
by Mioara Joldes, Olivier Marty, Jean-Michel Muller,
Valentina Popescu and Warwick Tucker; released under GPL.

Because its main purpose is to serve the move
to an Ada translation, several features are omitted:
(1) no inline, the header files are like Ada package specification
(2) no treatment of NAN and INF
(3) no sin, cos, tan, sqrt, etc...
Although sqrt, sin, and cos were added in version 2.3.56.
A first basic version of double_double.c occupies around 1000 lines
and also quad_double.c is of the same relatively small size.
The secondary purpose of this library is in the reference code on the host
for the GPU accelerated path trackers.

See the makefile to compile all test programs.

Alternatively, run "gprbuild qdc.gpr" to make all test programs.
The "gprclean qdc.gpr" removes all files created by gprbuild.

------------------------------------------------------------------------------
file name                    : short description
------------------------------------------------------------------------------
double_double.h              : prototypes of the double double operations
double_double.c              : defines the operations in double_double.h
dd_test.c                    : test on basic operations in double_double
dd_funtest.c                 : test on sin and cos functions
triple_double.h              : prototypes of the triple double operations
triple_double.c              : defines the operations in triple_double.h
td_test.c                    : tests the operations in triple_double
quad_double.h                : prototypes of the quad double operations
quad_double.c                : definitions of the operations in quad_double.h
qd_test.c                    : test on basic operations in quad_double
penta_double.h               : prototypes of the penta double functions
penta_double.c               : definitions of the penta_double.h functions
pd_test.c                    : test on basic operations in penta_double
octo_double.h                : prototypes of the octo double functions
octo_double.c                : definitions of the octo_double.h functions
od_test.c                    : test on basic operations in octo_double
deca_double.h                : prototypes of the deca double functions
deca_double.c                : definitions of the deca_double.h functions
da_test.c                    : test on basic operations in deca_double
hexa_double.h                : prototypes of the hexa double functions
hexa_double.c                : definitions of the hexa_double.h functions
hd_test.c                    : test on basic operations in hexa_double
------------------------------------------------------------------------------
