Turn modified fdlibm into Jerry's own libm
* Rename modified fdlibm to jerry-libm
* Move third-party/fdlibm to jerry-libm
* Rename original fdlibm.h to jerry-libm-internal.h
* And remove it from the public headers.
* Rename jerry-libm's public header to math.h
* This also makes jerry-core sources include `<math.h>`. Therefore,
should anyone want to use a different libm implementation with
jerry, it becomes possible. (The same way as we provide a minimal
libc with standard headers, but should it be insufficient or
conflicting for someone, it can be replaced.)
* Drop `s_` prefix from jerry-libm sources
* The original fdlibm implementation had various prefixes (e.g., `k_`
for sources of kernel routines, and `w_` for wrapper routines), but
after the specialization of fdlibm to jerry, only `s_` remained.
Since it does not encode anything anymore, it can be dropped.
* Stylistic edits to jerry-libm's CMakeLists
* Align project name with other CMakeLists in the code base
* Move Jerry-LibM under Apache License
* Using the same approach as was used by linux-wireless when ath5k
driver license needed clarification. Solution was proposed by SFLC.
External mail for future reference: http://lwn.net/Articles/247806/
* Tests & checks
* Remove FD from the name of libm unit test-related files
* Make vera++ and cppcheck check jerry-libm
* Targets
* Speculative update of targets to use jerry-libm
JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
CC=gcc
|
||||
LDFLAGS=-lm
|
||||
|
||||
GENS=gen-test-fdlibm
|
||||
GENS=gen-test-libm
|
||||
|
||||
.PHONY: build
|
||||
build: $(GENS)
|
||||
@@ -25,5 +25,5 @@ build: $(GENS)
|
||||
clean:
|
||||
rm -f $(GENS)
|
||||
|
||||
gen-test-fdlibm: gen-test-fdlibm.c
|
||||
gen-test-libm: gen-test-libm.c
|
||||
$(CC) $< -o $@ $(LDFLAGS)
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* Unit test generator for fdlibm.
|
||||
* Unit test generator for jerry-libm.
|
||||
* To be compiled separately from the rest of jerry and to be linked to a trusted libm.
|
||||
* Its output should be redirected to test-fdlibm.inc.h.
|
||||
* Its output should be redirected to test-libm.inc.h.
|
||||
*
|
||||
* Example:
|
||||
* gcc gen-test-fdlibm.c -o gen-test-fdlibm -lm
|
||||
* ./gen-test-fdlibm >test-fdlibm.inc.h
|
||||
* gcc gen-test-libm.c -o gen-test-libm -lm
|
||||
* ./gen-test-libm >test-libm.inc.h
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
@@ -34,7 +34,7 @@ int
|
||||
main (int argc, char **args)
|
||||
{
|
||||
printf ("/*\n"
|
||||
" * Generated by tools/gen-test-fdlibm.sh\n"
|
||||
" * Generated by tools/gen-test-libm.sh\n"
|
||||
" * DO NOT EDIT!!!\n"
|
||||
" */\n");
|
||||
|
||||
@@ -211,7 +211,7 @@ main (int argc, char **args)
|
||||
GEN_DBL_TEST (ceil (-7.37e+19));
|
||||
|
||||
/* copysign tests */
|
||||
/* SKIPPED: not declared in fdlibm-math.h
|
||||
/* SKIPPED: not publicly declared in jerry-libm
|
||||
GEN_DBL_TEST (copysign (0.0, 0.0));
|
||||
GEN_DBL_TEST (copysign (0.0, -0.0));
|
||||
GEN_DBL_TEST (copysign (-0.0, 0.0));
|
||||
@@ -314,7 +314,7 @@ main (int argc, char **args)
|
||||
GEN_DBL_TEST (fabs (-7.37e+19));
|
||||
|
||||
/* finite tests */
|
||||
/* SKIPPED: not declared in fdlibm-math.h
|
||||
/* SKIPPED: not publicly declared in jerry-libm
|
||||
GEN_INT_TEST (finite (0.0));
|
||||
GEN_INT_TEST (finite (-0.0));
|
||||
GEN_INT_TEST (finite (1.0));
|
||||
@@ -553,7 +553,7 @@ main (int argc, char **args)
|
||||
GEN_DBL_TEST (pow (0.7, 1.2));
|
||||
|
||||
/* scalbn tests */
|
||||
/* SKIPPED: not declared in fdlibm-math.h
|
||||
/* SKIPPED: not publicly declared in jerry-libm
|
||||
GEN_DBL_TEST (scalbn (0.0, 0));
|
||||
GEN_DBL_TEST (scalbn (-0.0, 0));
|
||||
GEN_DBL_TEST (scalbn (0.0, 1));
|
||||
Reference in New Issue
Block a user