libjmmcg
release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
|
#include "stdafx.h"
#include <boost/test/included/unit_test.hpp>
#include <boost/mpl/list.hpp>
#include "core/ave_deviation_meter.hpp"
#include "core/fma.hpp"
#include <chrono>
Go to the source code of this file.
Macros | |
#define | BOOST_TEST_MODULE libjmmcg_tests |
Typedefs | |
typedef boost::mpl::list< double, fma::dbl > | check_fma_tests |
Functions | |
BOOST_AUTO_TEST_CASE (all_zero) | |
BOOST_AUTO_TEST_CASE (all_zero_commute_multiply) | |
BOOST_AUTO_TEST_CASE (all_zero_commute_add) | |
BOOST_AUTO_TEST_CASE (all_zero_commute_multipy_and_add) | |
BOOST_AUTO_TEST_CASE (all_zero_nest) | |
BOOST_AUTO_TEST_CASE (m_one_others_zero) | |
BOOST_AUTO_TEST_CASE (all_ones) | |
BOOST_AUTO_TEST_CASE (one_two) | |
BOOST_AUTO_TEST_CASE (all_twos) | |
BOOST_AUTO_TEST_CASE (subtract_twos) | |
BOOST_AUTO_TEST_CASE (associative_subtract_twos) | |
BOOST_AUTO_TEST_CASE (all_zero_two_surrounding_multiplies) | |
BOOST_AUTO_TEST_CASE (all_zero_two_post_multiplies) | |
BOOST_AUTO_TEST_CASE (all_zero_two_preceeding_multiplies) | |
BOOST_AUTO_TEST_CASE (all_zero_two_dbls_add) | |
BOOST_AUTO_TEST_CASE (all_zero_two_dbls_subtract) | |
BOOST_AUTO_TEST_CASE (all_zero_two_dbls_associative_add) | |
BOOST_AUTO_TEST_CASE (all_zero_two_dbls_associative_subtract) | |
BOOST_AUTO_TEST_CASE (multiply_equals_add) | |
BOOST_AUTO_TEST_CASE (multiply_equals_subtract) | |
BOOST_AUTO_TEST_CASE (add_equals) | |
BOOST_AUTO_TEST_CASE (subtract_equals) | |
BOOST_AUTO_TEST_CASE_TEMPLATE (performance_all_zero_commute_multiply, T, check_fma_tests) | |
typedef boost::mpl::list< double, fma::dbl > check_fma_tests |
BOOST_AUTO_TEST_CASE | ( | add_equals | ) |
Definition at line 255 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::operator+=().
BOOST_AUTO_TEST_CASE | ( | all_ones | ) |
Definition at line 101 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | all_twos | ) |
Definition at line 123 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero | ) |
Definition at line 35 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero_commute_add | ) |
Definition at line 57 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero_commute_multiply | ) |
Definition at line 46 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero_commute_multipy_and_add | ) |
Definition at line 68 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero_nest | ) |
Definition at line 79 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero_two_dbls_add | ) |
BOOST_AUTO_TEST_CASE | ( | all_zero_two_dbls_associative_add | ) |
BOOST_AUTO_TEST_CASE | ( | all_zero_two_dbls_associative_subtract | ) |
BOOST_AUTO_TEST_CASE | ( | all_zero_two_dbls_subtract | ) |
BOOST_AUTO_TEST_CASE | ( | all_zero_two_post_multiplies | ) |
BOOST_AUTO_TEST_CASE | ( | all_zero_two_preceeding_multiplies | ) |
Definition at line 178 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | all_zero_two_surrounding_multiplies | ) |
BOOST_AUTO_TEST_CASE | ( | associative_subtract_twos | ) |
Definition at line 145 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::operator-().
BOOST_AUTO_TEST_CASE | ( | m_one_others_zero | ) |
Definition at line 90 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | multiply_equals_add | ) |
Definition at line 233 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator+().
BOOST_AUTO_TEST_CASE | ( | multiply_equals_subtract | ) |
Definition at line 244 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator-().
BOOST_AUTO_TEST_CASE | ( | one_two | ) |
Definition at line 112 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator+().
BOOST_AUTO_TEST_CASE | ( | subtract_equals | ) |
Definition at line 266 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::operator-=().
BOOST_AUTO_TEST_CASE | ( | subtract_twos | ) |
Definition at line 134 of file fma.cpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::dbl(), jmmcg::LIBJMMCG_VER_NAMESPACE::fma::dbl::operator*(), and jmmcg::LIBJMMCG_VER_NAMESPACE::fma::private_::dbl_mul::operator-().
BOOST_AUTO_TEST_CASE_TEMPLATE | ( | performance_all_zero_commute_multiply | , |
T | , | ||
check_fma_tests | |||
) |