diff options
-rw-r--r-- | reference_model/src/verify/verify_abs_error.cc | 2 | ||||
-rw-r--r-- | reference_model/src/verify/verify_utils.cc | 9 |
2 files changed, 5 insertions, 6 deletions
diff --git a/reference_model/src/verify/verify_abs_error.cc b/reference_model/src/verify/verify_abs_error.cc index 25ecae4..5005dcf 100644 --- a/reference_model/src/verify/verify_abs_error.cc +++ b/reference_model/src/verify/verify_abs_error.cc @@ -47,7 +47,7 @@ bool validateData(const double* ref, bool valid = tosaCheckFloatBound(imp[i], ref[i], errBound); if (!valid) { - auto pos = indexToPosition(T, shape); + auto pos = indexToPosition(i, shape); WARNING("[Verifier][AE] Location %s", positionToString(pos).c_str()); return false; } diff --git a/reference_model/src/verify/verify_utils.cc b/reference_model/src/verify/verify_utils.cc index 6f53c63..618724b 100644 --- a/reference_model/src/verify/verify_utils.cc +++ b/reference_model/src/verify/verify_utils.cc @@ -143,6 +143,7 @@ std::vector<int32_t> indexToPosition(int64_t index, const std::vector<int32_t>& pos.insert(pos.begin(), index % *d); index /= *d; } + ASSERT_MSG(index == 0, "index too large for given shape") return pos; } @@ -225,8 +226,7 @@ bool tosaCheckFloatBound(OutType testValue, double referenceValue, double errorB { return true; } - WARNING("[Verifier][Bound] Non-matching NaN values - ref (%10f) versus test (%10f).", referenceValue, - testValue); + WARNING("[Verifier][Bound] Non-matching NaN values - ref (%g) versus test (%g).", referenceValue, testValue); return false; } @@ -294,9 +294,8 @@ bool tosaCheckFloatBound(OutType testValue, double referenceValue, double errorB bool withinBound = testValue64 >= referenceMin && testValue64 <= referenceMax; if (!withinBound) { - WARNING( - "[Verifier][Bound] value (%10.10f) is not in error bound %g range (%10.10f <= ref (%10.10f) <= %10.10f).", - testValue64, errorBound, referenceMin, referenceValue, referenceMax); + WARNING("[Verifier][Bound] value %.20f is not in error bound %g range (%.20f <= ref %.20f <= %.20f).", + testValue64, testValue64, errorBound, referenceMin, referenceValue, referenceValue, referenceMax); } return withinBound; } |