summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@gmail.com>2013-07-03 14:40:41 -0400
committerErik Schnetter <schnetter@gmail.com>2013-07-03 14:40:41 -0400
commitd203d0e438cc0ea99f2eb6aabb45c9c82edfde5b (patch)
tree971c82675cf7a9247af9dcf77360abff2859ac4d
parent5492d72c249bebdb9e76ef80dd724ddde8215cdd (diff)
downloadvecmathlib-d203d0e438cc0ea99f2eb6aabb45c9c82edfde5b.zip
vecmathlib-d203d0e438cc0ea99f2eb6aabb45c9c82edfde5b.tar.gz
Take maximum vector element into account when testing vector reductions
-rw-r--r--test.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/test.cc b/test.cc
index 308b0ab..58346c3 100644
--- a/test.cc
+++ b/test.cc
@@ -467,7 +467,11 @@ struct vecmathlib_test {
const real_t accuracy)
{
const real_t dr = rstd - rvml;
- const real_t scale = fabs(rstd) + fabs(rvml) + R(1.0);
+ real_t maxabs = 0.0;
+ for (int i=0; i<realvec_t::size; ++i) {
+ maxabs = fmax(maxabs, fabs(x[i]));
+ }
+ const real_t scale = fabs(rstd) + fabs(rvml) + fabs(maxabs) + R(1.0);
const bool isbad = fabs(dr) > accuracy * scale;
if (isbad) {
++ num_errors;
OpenPOWER on IntegriCloud