diff --git a/test_conformance/math_brute_force/function_list.cpp b/test_conformance/math_brute_force/function_list.cpp index cb5d5a33..5f7b8ea0 100644 --- a/test_conformance/math_brute_force/function_list.cpp +++ b/test_conformance/math_brute_force/function_list.cpp @@ -280,8 +280,8 @@ const Func functionList[] = { ENTRY(cosh, 4.0f, 4.0f, 2.f, FTZ_OFF, unaryF), ENTRY_EXT(cospi, 4.0f, 4.0f, 2.f, 0.00048828125f, FTZ_OFF, unaryF, 0.00048828125f), // relaxed ulp 2^-11 - //ENTRY(erfc, 16.0f, 16.0f, FTZ_OFF, unaryF), //disabled for 1.0 due to lack of reference implementation - //ENTRY(erf, 16.0f, 16.0f, FTZ_OFF, unaryF), //disabled for 1.0 due to lack of reference implementation + ENTRY(erfc, 16.0f, 16.0f, 4.0f, FTZ_OFF, unaryF), + ENTRY(erf, 16.0f, 16.0f, 4.0f, FTZ_OFF, unaryF), // relaxed error is overwritten in unary.c as it is 3+floor(fabs(2*x)) ENTRY_EXT(exp, 3.0f, 4.0f, 2.f, 3.0f, FTZ_OFF, unaryF, 4.0f), diff --git a/test_conformance/math_brute_force/main.cpp b/test_conformance/math_brute_force/main.cpp index e1ea4c25..ec504e60 100644 --- a/test_conformance/math_brute_force/main.cpp +++ b/test_conformance/math_brute_force/main.cpp @@ -310,7 +310,7 @@ static test_definition test_list[] = { ADD_TEST(half_sin), ADD_TEST(half_sqrt), ADD_TEST(half_tan), ADD_TEST(add), ADD_TEST(subtract), ADD_TEST(divide), ADD_TEST(divide_cr), ADD_TEST(multiply), ADD_TEST(assignment), - ADD_TEST(not), + ADD_TEST(not ), ADD_TEST(erf), ADD_TEST(erfc), }; #undef ADD_TEST diff --git a/test_conformance/math_brute_force/reference_math.cpp b/test_conformance/math_brute_force/reference_math.cpp index 3912fd79..10e2bb73 100644 --- a/test_conformance/math_brute_force/reference_math.cpp +++ b/test_conformance/math_brute_force/reference_math.cpp @@ -5764,3 +5764,9 @@ int reference_notl(long double x) int r = !x; return r; } + +long double reference_erfcl(long double x) { return erfc(x); } +long double reference_erfl(long double x) { return erf(x); } + +double reference_erfc(double x) { return erfc(x); } +double reference_erf(double x) { return erf(x); } \ No newline at end of file diff --git a/test_conformance/math_brute_force/reference_math.h b/test_conformance/math_brute_force/reference_math.h index aef8d2ea..b740787f 100644 --- a/test_conformance/math_brute_force/reference_math.h +++ b/test_conformance/math_brute_force/reference_math.h @@ -236,4 +236,8 @@ long double reference_ldexpl(long double x, int n); long double reference_assignmentl(long double x); int reference_notl(long double x); +long double reference_erfcl(long double x); +long double reference_erfl(long double x); +double reference_erfc(double x); +double reference_erf(double x); #endif