summaryrefslogtreecommitdiffstats
path: root/mathfuncs_exp.h
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@gmail.com>2013-09-10 14:23:17 -0400
committerErik Schnetter <schnetter@gmail.com>2013-09-10 14:23:17 -0400
commit8399a416b2b6d67aca303788afce1e97b47b205b (patch)
treee2390ca2e54b21757ba0d93751266835745a203e /mathfuncs_exp.h
parent80d472d7531d541d953adf94228e0555f38296fe (diff)
downloadvecmathlib-8399a416b2b6d67aca303788afce1e97b47b205b.zip
vecmathlib-8399a416b2b6d67aca303788afce1e97b47b205b.tar.gz
Use mad() instead of fma()
Diffstat (limited to 'mathfuncs_exp.h')
-rw-r--r--mathfuncs_exp.h62
1 files changed, 31 insertions, 31 deletions
diff --git a/mathfuncs_exp.h b/mathfuncs_exp.h
index a8aed3f..a615db1 100644
--- a/mathfuncs_exp.h
+++ b/mathfuncs_exp.h
@@ -38,49 +38,49 @@ namespace vecmathlib {
#ifdef VML_HAVE_FP_CONTRACT
// float, error=4.55549108005200277750378992345e-9
r = RV(0.000154653240842602623787395880898);
- r = fma(r, x, RV(0.00133952915439234389712105060319));
- r = fma(r, x, RV(0.0096180399118156827664944870552));
- r = fma(r, x, RV(0.055503406540531310853149866446));
- r = fma(r, x, RV(0.240226511015459465468737123346));
- r = fma(r, x, RV(0.69314720007380208630542805293));
- r = fma(r, x, RV(0.99999999997182023878745628977));
+ r = mad(r, x, RV(0.00133952915439234389712105060319));
+ r = mad(r, x, RV(0.0096180399118156827664944870552));
+ r = mad(r, x, RV(0.055503406540531310853149866446));
+ r = mad(r, x, RV(0.240226511015459465468737123346));
+ r = mad(r, x, RV(0.69314720007380208630542805293));
+ r = mad(r, x, RV(0.99999999997182023878745628977));
#else
// float, error=1.62772721960621336664735896836e-7
r = RV(0.00133952915439234389712105060319);
- r = fma(r, x, RV(0.009670773148229417605024318985));
- r = fma(r, x, RV(0.055503406540531310853149866446));
- r = fma(r, x, RV(0.240222115700585316818177639177));
- r = fma(r, x, RV(0.69314720007380208630542805293));
- r = fma(r, x, RV(1.00000005230745711373079206024));
+ r = mad(r, x, RV(0.009670773148229417605024318985));
+ r = mad(r, x, RV(0.055503406540531310853149866446));
+ r = mad(r, x, RV(0.240222115700585316818177639177));
+ r = mad(r, x, RV(0.69314720007380208630542805293));
+ r = mad(r, x, RV(1.00000005230745711373079206024));
#endif
break;
case 8:
#ifdef VML_HAVE_FP_CONTRACT
// double, error=9.32016781355638010975628074746e-18
r = RV(4.45623165388261696886670014471e-10);
- r = fma(r, x, RV(7.0733589360775271430968224806e-9));
- r = fma(r, x, RV(1.01780540270960163558119510246e-7));
- r = fma(r, x, RV(1.3215437348041505269462510712e-6));
- r = fma(r, x, RV(0.000015252733849766201174247690629));
- r = fma(r, x, RV(0.000154035304541242555115696403795));
- r = fma(r, x, RV(0.00133335581463968601407096905671));
- r = fma(r, x, RV(0.0096181291075949686712855561931));
- r = fma(r, x, RV(0.055504108664821672870565883052));
- r = fma(r, x, RV(0.240226506959101382690753994082));
- r = fma(r, x, RV(0.69314718055994530864272481773));
- r = fma(r, x, RV(0.9999999999999999978508676375));
+ r = mad(r, x, RV(7.0733589360775271430968224806e-9));
+ r = mad(r, x, RV(1.01780540270960163558119510246e-7));
+ r = mad(r, x, RV(1.3215437348041505269462510712e-6));
+ r = mad(r, x, RV(0.000015252733849766201174247690629));
+ r = mad(r, x, RV(0.000154035304541242555115696403795));
+ r = mad(r, x, RV(0.00133335581463968601407096905671));
+ r = mad(r, x, RV(0.0096181291075949686712855561931));
+ r = mad(r, x, RV(0.055504108664821672870565883052));
+ r = mad(r, x, RV(0.240226506959101382690753994082));
+ r = mad(r, x, RV(0.69314718055994530864272481773));
+ r = mad(r, x, RV(0.9999999999999999978508676375));
#else
// double, error=3.74939899823302048807873981077e-14
r = RV(1.02072375599725694063203809188e-7);
- r = fma(r, x, RV(1.32573274434801314145133004073e-6));
- r = fma(r, x, RV(0.0000152526647170731944840736190013));
- r = fma(r, x, RV(0.000154034441925859828261898614555));
- r = fma(r, x, RV(0.00133335582175770747495287552557));
- r = fma(r, x, RV(0.0096181291794939392517233403183));
- r = fma(r, x, RV(0.055504108664525029438908798685));
- r = fma(r, x, RV(0.240226506957026959772247598695));
- r = fma(r, x, RV(0.6931471805599487321347668143));
- r = fma(r, x, RV(1.00000000000000942892870993489));
+ r = mad(r, x, RV(1.32573274434801314145133004073e-6));
+ r = mad(r, x, RV(0.0000152526647170731944840736190013));
+ r = mad(r, x, RV(0.000154034441925859828261898614555));
+ r = mad(r, x, RV(0.00133335582175770747495287552557));
+ r = mad(r, x, RV(0.0096181291794939392517233403183));
+ r = mad(r, x, RV(0.055504108664525029438908798685));
+ r = mad(r, x, RV(0.240226506957026959772247598695));
+ r = mad(r, x, RV(0.6931471805599487321347668143));
+ r = mad(r, x, RV(1.00000000000000942892870993489));
#endif
break;
default:
OpenPOWER on IntegriCloud