aboutsummaryrefslogtreecommitdiff
path: root/reference_model/src/generate/generate_dot_product_states.cc
diff options
context:
space:
mode:
Diffstat (limited to 'reference_model/src/generate/generate_dot_product_states.cc')
-rw-r--r--reference_model/src/generate/generate_dot_product_states.cc18
1 files changed, 16 insertions, 2 deletions
diff --git a/reference_model/src/generate/generate_dot_product_states.cc b/reference_model/src/generate/generate_dot_product_states.cc
index 53bef3a..9ce32ff 100644
--- a/reference_model/src/generate/generate_dot_product_states.cc
+++ b/reference_model/src/generate/generate_dot_product_states.cc
@@ -209,9 +209,23 @@ public:
const float s0 = _set_data0();
const float s1 = _set_data1();
if (_p == P0)
- return (k == _KS / 2) ? +0.5f : s0 < 0 ? 0.f : (_B / std::sqrt(_KS)) * s1;
+ if (k == _KS / 2)
+ {
+ return s0 < 0 ? -0.5f : +0.5f;
+ }
+ else
+ {
+ return s0 < 0 ? 0.f : (_B / std::sqrt(_KS)) * s1;
+ }
else if (_p == P1)
- return (k == _KS / 2) ? -0.5f : s0 < 0 ? (_B / std::sqrt(_KS)) * s1 : 0.f;
+ if (k == _KS / 2)
+ {
+ return s0 < 0 ? +0.5f : -0.5f;
+ }
+ else
+ {
+ return s0 < 0 ? (_B / std::sqrt(_KS)) * s1 : 0.f;
+ }
else
return 0.f;
}