diff --git a/src/libraries/System.Private.CoreLib/src/System/Half.cs b/src/libraries/System.Private.CoreLib/src/System/Half.cs index 1840f3c61107e6..98852c424c6a83 100644 --- a/src/libraries/System.Private.CoreLib/src/System/Half.cs +++ b/src/libraries/System.Private.CoreLib/src/System/Half.cs @@ -422,11 +422,9 @@ public override bool Equals(object? obj) /// public bool Equals(Half other) { - if (this == other) - { - return true; - } - return IsNaN(this) && IsNaN(other); + return _value == other._value + || AreZero(this, other) + || (IsNaN(this) && IsNaN(other)); } ///