Fixed LUA_NUMBER_INTEGRAL definition in user_config.h.
This commit is contained in:
parent
e11721ebfd
commit
646eaec29c
|
@ -7,7 +7,7 @@
|
||||||
#define NODE_VERSION_INTERNAL 0U
|
#define NODE_VERSION_INTERNAL 0U
|
||||||
|
|
||||||
#define NODE_VERSION "NodeMCU 0.9.5"
|
#define NODE_VERSION "NodeMCU 0.9.5"
|
||||||
#define BUILD_DATE "build 20150124"
|
#define BUILD_DATE "build 20150126"
|
||||||
|
|
||||||
// #define FLASH_512K
|
// #define FLASH_512K
|
||||||
// #define FLASH_1M
|
// #define FLASH_1M
|
||||||
|
@ -67,8 +67,10 @@
|
||||||
#define LUA_USE_MODULES_MQTT
|
#define LUA_USE_MODULES_MQTT
|
||||||
#endif /* LUA_USE_MODULES */
|
#endif /* LUA_USE_MODULES */
|
||||||
|
|
||||||
// #define LUA_NUMBER_INTEGRAL
|
#define LUA_NUMBER_INTEGRAL
|
||||||
|
#ifndef LUA_NUMBER_INTEGRAL
|
||||||
#define PRINTF_LONG_SUPPORT
|
#define PRINTF_LONG_SUPPORT
|
||||||
|
#endif
|
||||||
|
|
||||||
#define LUA_OPTRAM
|
#define LUA_OPTRAM
|
||||||
#ifdef LUA_OPTRAM
|
#ifdef LUA_OPTRAM
|
||||||
|
|
|
@ -1,81 +1,88 @@
|
||||||
#include "c_math.h"
|
#include "c_math.h"
|
||||||
#include "c_types.h"
|
#include "c_types.h"
|
||||||
|
|
||||||
double floor(double x){
|
double floor(double x)
|
||||||
return (double) (x < 0.f ? (((int) x) - 1) : ((int) x));
|
{
|
||||||
|
return (double) (x < 0.f ? (((int) x) - 1) : ((int) x));
|
||||||
}
|
}
|
||||||
|
|
||||||
double pow(double x, double y){
|
double pow(double x, double y)
|
||||||
#define MAXEXP 2031 /* (MAX_EXP * 16) - 1 */
|
{
|
||||||
#define MINEXP -2047 /* (MIN_EXP * 16) - 1 */
|
#define MAXEXP 2031 /* (MAX_EXP * 16) - 1 */
|
||||||
|
#define MINEXP -2047 /* (MIN_EXP * 16) - 1 */
|
||||||
#define HUGE MAXFLOAT
|
#define HUGE MAXFLOAT
|
||||||
double a1[] = {
|
double a1[] =
|
||||||
1.0,
|
{
|
||||||
0.95760328069857365,
|
1.0,
|
||||||
0.91700404320467123,
|
0.95760328069857365,
|
||||||
0.87812608018664974,
|
0.91700404320467123,
|
||||||
0.84089641525371454,
|
0.87812608018664974,
|
||||||
0.80524516597462716,
|
0.84089641525371454,
|
||||||
0.77110541270397041,
|
0.80524516597462716,
|
||||||
0.73841307296974966,
|
0.77110541270397041,
|
||||||
0.70710678118654752,
|
0.73841307296974966,
|
||||||
0.67712777346844637,
|
0.70710678118654752,
|
||||||
0.64841977732550483,
|
0.67712777346844637,
|
||||||
0.62092890603674203,
|
0.64841977732550483,
|
||||||
0.59460355750136054,
|
0.62092890603674203,
|
||||||
0.56939431737834583,
|
0.59460355750136054,
|
||||||
0.54525386633262883,
|
0.56939431737834583,
|
||||||
0.52213689121370692,
|
0.54525386633262883,
|
||||||
0.50000000000000000
|
0.52213689121370692,
|
||||||
};
|
0.50000000000000000
|
||||||
double a2[] = {
|
};
|
||||||
0.24114209503420288E-17,
|
double a2[] =
|
||||||
0.92291566937243079E-18,
|
{
|
||||||
-0.15241915231122319E-17,
|
0.24114209503420288E-17,
|
||||||
-0.35421849765286817E-17,
|
0.92291566937243079E-18,
|
||||||
-0.31286215245415074E-17,
|
-0.15241915231122319E-17,
|
||||||
-0.44654376565694490E-17,
|
-0.35421849765286817E-17,
|
||||||
0.29306999570789681E-17,
|
-0.31286215245415074E-17,
|
||||||
0.11260851040933474E-17
|
-0.44654376565694490E-17,
|
||||||
};
|
0.29306999570789681E-17,
|
||||||
double p1 = 0.833333333333332114e-1;
|
0.11260851040933474E-17
|
||||||
double p2 = 0.125000000005037992e-1;
|
};
|
||||||
double p3 = 0.223214212859242590e-2;
|
double p1 = 0.833333333333332114e-1;
|
||||||
double p4 = 0.434457756721631196e-3;
|
double p2 = 0.125000000005037992e-1;
|
||||||
double q1 = 0.693147180559945296e0;
|
double p3 = 0.223214212859242590e-2;
|
||||||
double q2 = 0.240226506959095371e0;
|
double p4 = 0.434457756721631196e-3;
|
||||||
double q3 = 0.555041086640855953e-1;
|
double q1 = 0.693147180559945296e0;
|
||||||
double q4 = 0.961812905951724170e-2;
|
double q2 = 0.240226506959095371e0;
|
||||||
double q5 = 0.133335413135857847e-2;
|
double q3 = 0.555041086640855953e-1;
|
||||||
double q6 = 0.154002904409897646e-3;
|
double q4 = 0.961812905951724170e-2;
|
||||||
double q7 = 0.149288526805956082e-4;
|
double q5 = 0.133335413135857847e-2;
|
||||||
double k = 0.442695040888963407;
|
double q6 = 0.154002904409897646e-3;
|
||||||
|
double q7 = 0.149288526805956082e-4;
|
||||||
|
double k = 0.442695040888963407;
|
||||||
|
|
||||||
double frexp(), g, ldexp(), r, u1, u2, v, w, w1, w2, y1, y2, z;
|
double frexp(), g, ldexp(), r, u1, u2, v, w, w1, w2, y1, y2, z;
|
||||||
int iw1, m, p;
|
int iw1, m, p;
|
||||||
|
|
||||||
if (y == 0.0)
|
if (y == 0.0)
|
||||||
return(1.0);
|
return (1.0);
|
||||||
if (x <= 0.0) {
|
if (x <= 0.0)
|
||||||
if (x == 0.0) {
|
{
|
||||||
if (y > 0.0)
|
if (x == 0.0)
|
||||||
return(x);
|
{
|
||||||
//cmemsg(FP_POWO, &y);
|
if (y > 0.0)
|
||||||
//return(HUGE);
|
return (x);
|
||||||
}
|
//cmemsg(FP_POWO, &y);
|
||||||
else {
|
//return(HUGE);
|
||||||
//cmemsg(FP_POWN, &x);
|
}
|
||||||
x = -x;
|
else
|
||||||
}
|
{
|
||||||
|
//cmemsg(FP_POWN, &x);
|
||||||
|
x = -x;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
g = frexp(x, &m);
|
g = frexp(x, &m);
|
||||||
p = 0;
|
p = 0;
|
||||||
if (g <= a1[8])
|
if (g <= a1[8])
|
||||||
p = 8;
|
p = 8;
|
||||||
if (g <= a1[p + 4])
|
if (g <= a1[p + 4])
|
||||||
p += 4;
|
p += 4;
|
||||||
if (g <= a1[p + 2])
|
if (g <= a1[p + 2])
|
||||||
p += 2;
|
p += 2;
|
||||||
p++;
|
p++;
|
||||||
z = ((g - a1[p]) - a2[p / 2]) / (g + a1[p]);
|
z = ((g - a1[p]) - a2[p / 2]) / (g + a1[p]);
|
||||||
z += z;
|
z += z;
|
||||||
|
@ -95,58 +102,71 @@ double k = 0.442695040888963407;
|
||||||
w = 0.0625 * (double)((int)(16.0 * w2));
|
w = 0.0625 * (double)((int)(16.0 * w2));
|
||||||
iw1 = 16.0 * (w1 + w);
|
iw1 = 16.0 * (w1 + w);
|
||||||
w2 -= w;
|
w2 -= w;
|
||||||
while (w2 > 0.0) {
|
while (w2 > 0.0)
|
||||||
iw1++;
|
{
|
||||||
w2 -= 0.0625;
|
iw1++;
|
||||||
|
w2 -= 0.0625;
|
||||||
}
|
}
|
||||||
if (iw1 > MAXEXP) {
|
if (iw1 > MAXEXP)
|
||||||
//cmemsg(FP_POWO, &y);
|
{
|
||||||
return(HUGE);
|
//cmemsg(FP_POWO, &y);
|
||||||
|
return (HUGE);
|
||||||
}
|
}
|
||||||
if (iw1 < MINEXP) {
|
if (iw1 < MINEXP)
|
||||||
//cmemsg(FP_POWU, &y);
|
{
|
||||||
return(0.0);
|
//cmemsg(FP_POWU, &y);
|
||||||
|
return (0.0);
|
||||||
}
|
}
|
||||||
m = iw1 / 16;
|
m = iw1 / 16;
|
||||||
if (iw1 >= 0)
|
if (iw1 >= 0)
|
||||||
m++;
|
m++;
|
||||||
p = 16 * m - iw1;
|
p = 16 * m - iw1;
|
||||||
z = ((((((q7*w2 + q6)*w2 + q5)*w2 + q4)*w2 + q3)*w2 + q2)*w2 + q1)*w2;
|
z = ((((((q7 * w2 + q6) * w2 + q5) * w2 + q4) * w2 + q3) * w2 + q2) * w2 + q1) * w2;
|
||||||
z = a1[p] + a1[p] * z;
|
z = a1[p] + a1[p] * z;
|
||||||
return(ldexp(z, m));
|
return (ldexp(z, m));
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
#ifndef __math_68881
|
#ifndef __math_68881
|
||||||
double atan(double x){
|
double atan(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double cos(double x){
|
double cos(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double sin(double x){
|
double sin(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double tan(double x){
|
double tan(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double tanh(double x){
|
double tanh(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double frexp(double x, int *y){
|
double frexp(double x, int *y)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double modf(double x, double *y){
|
double modf(double x, double *y)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double ceil(double x){
|
double ceil(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double fabs(double x){
|
double fabs(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double floor(double x){
|
double floor(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
#endif /* ! defined (__math_68881) */
|
#endif /* ! defined (__math_68881) */
|
||||||
|
|
||||||
|
@ -154,41 +174,53 @@ double floor(double x){
|
||||||
|
|
||||||
#ifndef _REENT_ONLY
|
#ifndef _REENT_ONLY
|
||||||
#ifndef __math_68881
|
#ifndef __math_68881
|
||||||
double acos(double x){
|
double acos(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double asin(double x){
|
double asin(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double atan2(double x, double y){
|
double atan2(double x, double y)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double cosh(double x){
|
double cosh(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double sinh(double x){
|
double sinh(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double exp(double x){
|
double exp(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double ldexp(double x, int y){
|
double ldexp(double x, int y)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double log(double x){
|
double log(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double log10(double x){
|
double log10(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double pow(double x, double y){
|
double pow(double x, double y)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double sqrt(double x){
|
double sqrt(double x)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
double fmod(double x, double y){
|
double fmod(double x, double y)
|
||||||
return x;
|
{
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
#endif /* ! defined (__math_68881) */
|
#endif /* ! defined (__math_68881) */
|
||||||
#endif /* ! defined (_REENT_ONLY) */
|
#endif /* ! defined (_REENT_ONLY) */
|
||||||
|
|
Loading…
Reference in New Issue