details: http://hg.nginx.org/njs/rev/109932e1d3c8 branches: changeset: 238:109932e1d3c8 user: Valentin Bartenev <vb...@nginx.com> date: Fri Nov 04 18:25:55 2016 +0300 description: Removed redefinition of isinf() and isnan().
diffstat: njs/njs_array.c | 4 +- njs/njs_date.c | 66 ++++++++++++++++++++++++++++---------------------------- njs/njs_math.c | 2 +- njs/njs_number.c | 8 +++--- njs/njs_number.h | 8 ------ njs/njs_string.c | 2 +- njs/njs_vm.c | 6 +--- njs/njs_vm.h | 2 +- 8 files changed, 44 insertions(+), 54 deletions(-) diffs (429 lines): diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_array.c --- a/njs/njs_array.c Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_array.c Fri Nov 04 18:25:55 2016 +0300 @@ -1131,12 +1131,12 @@ njs_array_prototype_includes(njs_vm_t *v start = array->start; value = &args[1]; - if (njs_is_number(value) && njs_is_nan(value->data.u.number)) { + if (njs_is_number(value) && isnan(value->data.u.number)) { do { value = &start[i]; - if (njs_is_number(value) && njs_is_nan(value->data.u.number)) { + if (njs_is_number(value) && isnan(value->data.u.number)) { retval = &njs_value_true; break; } diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_date.c --- a/njs/njs_date.c Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_date.c Fri Nov 04 18:25:55 2016 +0300 @@ -114,7 +114,7 @@ njs_date_constructor(njs_vm_t *vm, njs_v num = args[i].data.u.number; - if (njs_is_nan(num)) { + if (isnan(num)) { time = num; goto done; } @@ -193,7 +193,7 @@ njs_date_utc(njs_vm_t *vm, njs_value_t * num = args[i].data.u.number; - if (njs_is_nan(num)) { + if (isnan(num)) { goto done; } @@ -951,7 +951,7 @@ njs_date_string(njs_vm_t *vm, const char u_char buf[NJS_DATE_TIME_LEN]; struct tm tm; - if (!njs_is_nan(time)) { + if (!isnan(time)) { clock = time / 1000; localtime_r(&clock, &tm); @@ -984,7 +984,7 @@ njs_date_prototype_to_utc_string(njs_vm_ time = args[0].data.u.date->time; - if (!njs_is_nan(time)) { + if (!isnan(time)) { clock = time / 1000; gmtime_r(&clock, &tm); @@ -1016,7 +1016,7 @@ njs_date_prototype_to_iso_string(njs_vm_ time = args[0].data.u.date->time; - if (!njs_is_nan(time)) { + if (!isnan(time)) { clock = time / 1000; gmtime_r(&clock, &tm); @@ -1049,7 +1049,7 @@ njs_date_prototype_get_full_year(njs_vm_ value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1072,7 +1072,7 @@ njs_date_prototype_get_utc_full_year(njs value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; gmtime_r(&clock, &tm); @@ -1095,7 +1095,7 @@ njs_date_prototype_get_month(njs_vm_t *v value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1118,7 +1118,7 @@ njs_date_prototype_get_utc_month(njs_vm_ value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; gmtime_r(&clock, &tm); @@ -1142,7 +1142,7 @@ njs_date_prototype_get_date(njs_vm_t *vm value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1165,7 +1165,7 @@ njs_date_prototype_get_utc_date(njs_vm_t value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; gmtime_r(&clock, &tm); @@ -1188,7 +1188,7 @@ njs_date_prototype_get_day(njs_vm_t *vm, value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1211,7 +1211,7 @@ njs_date_prototype_get_utc_day(njs_vm_t value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; gmtime_r(&clock, &tm); @@ -1234,7 +1234,7 @@ njs_date_prototype_get_hours(njs_vm_t *v value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1258,7 +1258,7 @@ njs_date_prototype_get_utc_hours(njs_vm_ value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; gmtime_r(&clock, &tm); @@ -1281,7 +1281,7 @@ njs_date_prototype_get_minutes(njs_vm_t value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1305,7 +1305,7 @@ njs_date_prototype_get_utc_minutes(njs_v value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; gmtime_r(&clock, &tm); @@ -1326,7 +1326,7 @@ njs_date_prototype_get_seconds(njs_vm_t value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { value = (int64_t) (value / 1000) % 60; } @@ -1344,7 +1344,7 @@ njs_date_prototype_get_milliseconds(njs_ value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { value = (int64_t) value % 1000; } @@ -1364,7 +1364,7 @@ njs_date_prototype_get_timezone_offset(n value = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(value))) { + if (nxt_fast_path(!isnan(value))) { clock = value / 1000; localtime_r(&clock, &tm); @@ -1385,7 +1385,7 @@ njs_date_prototype_set_time(njs_vm_t *vm time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { time = args[1].data.u.number; @@ -1410,7 +1410,7 @@ njs_date_prototype_set_milliseconds(njs_ time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { time = (int64_t) (time / 1000) * 1000 + args[1].data.u.number; @@ -1436,7 +1436,7 @@ njs_date_prototype_set_seconds(njs_vm_t time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { sec = args[1].data.u.number; @@ -1467,7 +1467,7 @@ njs_date_prototype_set_minutes(njs_vm_t time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1504,7 +1504,7 @@ njs_date_prototype_set_utc_minutes(njs_v time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1541,7 +1541,7 @@ njs_date_prototype_set_hours(njs_vm_t *v time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1582,7 +1582,7 @@ njs_date_prototype_set_utc_hours(njs_vm_ time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1619,7 +1619,7 @@ njs_date_prototype_set_date(njs_vm_t *vm time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1651,7 +1651,7 @@ njs_date_prototype_set_utc_date(njs_vm_t time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1683,7 +1683,7 @@ njs_date_prototype_set_month(njs_vm_t *v time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1719,7 +1719,7 @@ njs_date_prototype_set_utc_month(njs_vm_ time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1755,7 +1755,7 @@ njs_date_prototype_set_full_year(njs_vm_ time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; @@ -1795,7 +1795,7 @@ njs_date_prototype_set_utc_full_year(njs time = args[0].data.u.date->time; - if (nxt_fast_path(!njs_is_nan(time))) { + if (nxt_fast_path(!isnan(time))) { if (nargs > 1) { clock = time / 1000; diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_math.c --- a/njs/njs_math.c Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_math.c Fri Nov 04 18:25:55 2016 +0300 @@ -342,7 +342,7 @@ njs_object_math_sign(njs_vm_t *vm, njs_v if (nargs > 1) { num = args[1].data.u.number; - if (!njs_is_nan(num) && num != 0) { + if (!isnan(num) && num != 0) { num = signbit(num) ? -1 : 1; } diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_number.c --- a/njs/njs_number.c Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_number.c Fri Nov 04 18:25:55 2016 +0300 @@ -177,10 +177,10 @@ njs_number_to_string(njs_vm_t *vm, njs_v num = number->data.u.number; - if (njs_is_nan(num)) { + if (isnan(num)) { value = &njs_string_nan; - } else if (njs_is_infinity(num)) { + } else if (isinf(num)) { if (num < 0) { value = &njs_string_minus_infinity; @@ -445,7 +445,7 @@ njs_number_is_nan(njs_vm_t *vm, njs_valu value = &njs_value_true; - if (nargs > 1 && !njs_is_nan(args[1].data.u.number)) { + if (nargs > 1 && !isnan(args[1].data.u.number)) { value = &njs_value_false; } @@ -467,7 +467,7 @@ njs_number_is_finite(njs_vm_t *vm, njs_v if (nargs > 1) { num = args[1].data.u.number; - if (!njs_is_nan(num) && !njs_is_infinity(num)) { + if (!isnan(num) && !isinf(num)) { value = &njs_value_true; } } diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_number.h --- a/njs/njs_number.h Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_number.h Fri Nov 04 18:25:55 2016 +0300 @@ -11,14 +11,6 @@ #include <math.h> -#define njs_is_infinity(n) \ - isinf(n) - - -#define njs_is_nan(n) \ - isnan(n) - - double njs_value_to_number(njs_value_t *value); double njs_number_parse(const u_char **start, const u_char *end); int64_t njs_number_radix_parse(u_char *p, u_char *end, uint8_t radix, diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_string.c --- a/njs/njs_string.c Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_string.c Fri Nov 04 18:25:55 2016 +0300 @@ -1174,7 +1174,7 @@ njs_string_from_char_code(njs_vm_t *vm, for (i = 1; i < nargs; i++) { num = args[i].data.u.number; - if (njs_is_nan(num)) { + if (isnan(num)) { goto range_error; } diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_vm.c --- a/njs/njs_vm.c Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_vm.c Fri Nov 04 18:25:55 2016 +0300 @@ -1973,9 +1973,7 @@ njs_values_compare(njs_value_t *val1, nj if (nxt_fast_path(njs_is_numeric(val1) && njs_is_numeric(val2))) { /* NaN and void values are not comparable with anything. */ - if (njs_is_nan(val1->data.u.number) - || njs_is_nan(val2->data.u.number)) - { + if (isnan(val1->data.u.number) || isnan(val2->data.u.number)) { return -1; } @@ -2471,7 +2469,7 @@ njs_normalize_args(njs_vm_t *vm, njs_val /* Numbers are truncated to fit in 32-bit integers. */ - if (njs_is_nan(args->data.u.number)) { + if (isnan(args->data.u.number)) { args->data.u.number = 0; } else if (args->data.u.number > 2147483647.0) { diff -r bcd4910c5be9 -r 109932e1d3c8 njs/njs_vm.h --- a/njs/njs_vm.h Fri Nov 04 18:25:55 2016 +0300 +++ b/njs/njs_vm.h Fri Nov 04 18:25:55 2016 +0300 @@ -376,7 +376,7 @@ typedef njs_ret_t (*njs_vmcode_operation /* Testing for NaN first generates a better code at least on i386/amd64. */ #define njs_is_number_true(num) \ - (!njs_is_nan(num) && num != 0) + (!isnan(num) && num != 0) #define njs_is_numeric(value) \ _______________________________________________ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel