34 writes to _sign
System.Runtime.Numerics (34)
System\Numerics\BigInteger.cs (34)
58_sign = value; 69_sign = (int)value; 74_sign = +1; 85_sign = (int)value; 98_sign = -1; 103_sign = +1; 127_sign = (int)value; 132_sign = +1; 138_sign = +1; 165_sign = 0; 191_sign = -_sign; 197_sign = -_sign; 218_sign = sign; 244_sign = bits[0]; 245_sign *= ((bits[3] & signMask) != 0) ? -1 : +1; 261_sign = ((bits[3] & signMask) != 0) ? -1 : +1; 322_sign = 0; 330_sign = isNegative ? unchecked((int)0xffffffff) : 0; 336_sign = (_sign << 8) | value[i]; 343_sign = (_sign << 8) | value[i]; 355_sign = +1; 447_sign = (-1) * ((int)val[0]); 459_sign = -1; 465_sign = -1; 471_sign = +1; 489_sign = sign; 522_sign = negative ? -(int)value[0] : (int)value[0]; 532_sign = negative ? -1 : +1; 538_sign = negative ? -1 : +1; 598_sign = unchecked((int)value[0]); 604_sign = +1; 609_sign = unchecked((int)value[0]); 623_sign = -1; 627_sign = +1;
223 references to _sign
System.Runtime.Numerics (223)
System\Number.BigInteger.cs (6)
621TChar.CastFrom(value._sign >= 0 ? '0' : (format == 'x') ? 'f' : 'F'), 662int charsInHighByte = 9 - byte.LeadingZeroCount(value._sign >= 0 ? highByte : (byte)~highByte); 704sb.Append(TChar.CastFrom(value._sign >= 0 ? '0' : '1'), digits - charsForBits); 783spanSuccess = value._sign.TryFormat(Unsafe.BitCast<Span<TChar>, Span<byte>>(destination), out charsWritten, formatSpan, info); 788spanSuccess = value._sign.TryFormat(Unsafe.BitCast<Span<TChar>, Span<char>>(destination), out charsWritten, formatSpan, info); 797return value._sign.ToString(formatString, info);
System\Numerics\BigInteger.cs (217)
191_sign = -_sign; 197_sign = -_sign; 336_sign = (_sign << 8) | value[i]; 343_sign = (_sign << 8) | value[i]; 348if (_sign < 0 && !isNegative) 354_bits = new uint[1] { unchecked((uint)_sign) }; 357if (_sign == int.MinValue) 647return BitOperations.IsPow2(_sign); 649if (_sign != 1) 658public bool IsZero { get { AssertValid(); return _sign == 0; } } 660public bool IsOne { get { AssertValid(); return _sign == 1 && _bits == null; } } 662public bool IsEven { get { AssertValid(); return _bits == null ? (_sign & 1) == 0 : (_bits[0] & 1) == 0; } } 666get { AssertValid(); return (_sign >> (kcbitUint - 1)) - (-_sign >> (kcbitUint - 1)); } 738return new BigInteger(unchecked((int)NumericsHelpers.Abs(value._sign)), value._bits); 777(quotient, remainder) = Math.DivRem(dividend._sign, divisor._sign); 804BigIntegerCalculator.Divide(dividend._bits, NumericsHelpers.Abs(divisor._sign), quotient, out rest); 806remainder = dividend._sign < 0 ? -1 * rest : rest; 807return new BigInteger(quotient, (dividend._sign < 0) ^ (divisor._sign < 0)); 839remainder = new BigInteger(rest, dividend._sign < 0); 840var result = new BigInteger(quotient, (dividend._sign < 0) ^ (divisor._sign < 0)); 864if (value._sign < 0 || baseValue == 1.0D) 871return Math.Log(value._sign, baseValue); 904return BigIntegerCalculator.Gcd(NumericsHelpers.Abs(left._sign), NumericsHelpers.Abs(right._sign)); 910return left._sign != 0 911? BigIntegerCalculator.Gcd(right._bits, NumericsHelpers.Abs(left._sign)) 918return right._sign != 0 919? BigIntegerCalculator.Gcd(left._bits, NumericsHelpers.Abs(right._sign)) 1007uint bits = trivialValue && trivialExponent ? BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), NumericsHelpers.Abs(exponent._sign), NumericsHelpers.Abs(modulus._sign)) : 1008trivialValue ? BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), exponent._bits!, NumericsHelpers.Abs(modulus._sign)) : 1009trivialExponent ? BigIntegerCalculator.Pow(value._bits!, NumericsHelpers.Abs(exponent._sign), NumericsHelpers.Abs(modulus._sign)) : 1010BigIntegerCalculator.Pow(value._bits!, exponent._bits!, NumericsHelpers.Abs(modulus._sign)); 1012result = value._sign < 0 && !exponent.IsEven ? -1 * bits : bits; 1026BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), NumericsHelpers.Abs(exponent._sign), modulus._bits!, bits); 1030BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), exponent._bits!, modulus._bits!, bits); 1035BigIntegerCalculator.Pow(value._bits!, NumericsHelpers.Abs(exponent._sign), modulus._bits!, bits); 1042result = new BigInteger(bits, value._sign < 0 && !exponent.IsEven); 1070if (value._sign == 1) 1072if (value._sign == -1) 1074if (value._sign == 0) 1083BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), power, bits); 1084result = new BigInteger(bits, value._sign < 0 && (exponent & 1) != 0); 1095result = new BigInteger(bits, value._sign < 0 && (exponent & 1) != 0); 1109return _sign; 1113hash.Add(_sign); 1129return _sign == other; 1132if ((_sign ^ other) < 0 || (cu = _bits.Length) > 2) 1147if (_sign < 0) 1150return (ulong)_sign == other; 1165return _sign == other._sign && _bits.AsSpan().SequenceEqual(other._bits); 1173return ((long)_sign).CompareTo(other); 1175if ((_sign ^ other) < 0 || (cu = _bits.Length) > 2) 1176return _sign; 1179return _sign * uuTmp.CompareTo(uu); 1187if (_sign < 0) 1190return ((ulong)_sign).CompareTo(other); 1203if ((_sign ^ other._sign) < 0) 1206return _sign < 0 ? -1 : +1; 1213return _sign < other._sign ? -1 : _sign > other._sign ? +1 : 0; 1214return -other._sign; 1218return _sign; 1221return _sign < 0 ? -bitsResult : bitsResult; 1351int sign = _sign; 1564Debug.Assert(_bits is null || _sign == 0 ? buffer.Length == 2 : buffer.Length >= _bits.Length + 1); 1570buffer[0] = unchecked((uint)_sign); 1571highDWord = (_sign < 0) ? uint.MaxValue : 0; 1577if (_sign == -1) 1679string signStr = _sign < 0 ? NumberFormatInfo.CurrentInfo.NegativeSign : ""; 1767return (long)left._sign - right._sign; 1769if (left._sign < 0 != right._sign < 0) 1770return Add(left._bits, left._sign, right._bits, -1 * right._sign); 1771return Subtract(left._bits, left._sign, right._bits, right._sign); 1858return value._sign; 1872return new decimal(lo, mi, hi, value._sign < 0, 0); 1879int sign = value._sign; 1938return value._sign; // Value packed into int32 sign 1945if (value._sign > 0) 1962return value._sign; 1981long ll = value._sign > 0 ? unchecked((long)uu) : unchecked(-(long)uu); 1982if ((ll > 0 && value._sign > 0) || (ll < 0 && value._sign < 0)) 1999return value._sign; 2027Int128 ll = (value._sign > 0) ? unchecked((Int128)uu) : unchecked(-(Int128)uu); 2029if (((ll > 0) && (value._sign > 0)) || ((ll < 0) && (value._sign < 0))) 2075return checked((uint)value._sign); 2077else if (value._bits.Length > 1 || value._sign < 0) 2093return checked((ulong)value._sign); 2097if (len > 2 || value._sign < 0) 2119return checked((UInt128)value._sign); 2124if ((len > 4) || (value._sign < 0)) 2408return left._sign & right._sign; 2411uint xExtend = (left._sign < 0) ? uint.MaxValue : 0; 2412uint yExtend = (right._sign < 0) ? uint.MaxValue : 0; 2464return left._sign | right._sign; 2467uint xExtend = (left._sign < 0) ? uint.MaxValue : 0; 2468uint yExtend = (right._sign < 0) ? uint.MaxValue : 0; 2515return left._sign ^ right._sign; 2518uint xExtend = (left._sign < 0) ? uint.MaxValue : 0; 2519uint yExtend = (right._sign < 0) ? uint.MaxValue : 0; 2576return LeftShift(value._sign, digitShift, smallShift); 2609return new BigInteger(value._sign, z); 2667return new BigInteger(value._sign >> smallShift, null); 2677return new BigInteger(value._sign >> (kcbitUint - 1), null); 2689bool neg = value._sign < 0; 2716return new BigInteger(-value._sign, value._bits); 2741return (long)left._sign + right._sign; 2743if (left._sign < 0 != right._sign < 0) 2744return Subtract(left._bits, left._sign, right._bits, -1 * right._sign); 2745return Add(left._bits, left._sign, right._bits, right._sign); 2754return (long)left._sign * right._sign; 2756return Multiply(left._bits, left._sign, right._bits, right._sign); 2846return dividend._sign / divisor._sign; 2870BigIntegerCalculator.Divide(dividend._bits, NumericsHelpers.Abs(divisor._sign), quotient); 2871return new BigInteger(quotient, (dividend._sign < 0) ^ (divisor._sign < 0)); 2894var result = new BigInteger(quotient, (dividend._sign < 0) ^ (divisor._sign < 0)); 2913return dividend._sign % divisor._sign; 2926uint remainder = BigIntegerCalculator.Remainder(dividend._bits, NumericsHelpers.Abs(divisor._sign)); 2927return dividend._sign < 0 ? -1 * remainder : remainder; 2944var result = new BigInteger(bits, dividend._sign < 0); 3124int sign = _sign; 3168Debug.Assert(_sign == 1 || _sign == -1); 3181Debug.Assert(_sign > int.MinValue); 3210return int.LeadingZeroCount(value._sign); 3216return (value._sign >= 0) ? uint.LeadingZeroCount(value._bits[^1]) : 0; 3226return int.PopCount(value._sign); 3231if (value._sign >= 0) 3281bool neg = value._sign < 0; 3285uint rs = BitOperations.RotateLeft((uint)value._sign, rotateAmount); 3302bool neg = value._sign < 0; 3306uint rs = BitOperations.RotateRight((uint)value._sign, rotateAmount); 3379return int.TrailingZeroCount(value._sign); 3422int value = _sign; 3436if (_sign >= 0) 3478int value = BitConverter.IsLittleEndian ? BinaryPrimitives.ReverseEndianness(_sign) : _sign; 3481else if (_sign >= 0) 3580int value = BitConverter.IsLittleEndian ? _sign : BinaryPrimitives.ReverseEndianness(_sign); 3583else if (_sign >= 0) 3681if (_sign < 0) 3731return 31 ^ uint.LeadingZeroCount((uint)(value._sign | 1)); 3785int currentSign = value._sign; 3792int targetSign = sign._sign; 3815return int.Sign(value._sign); 3818return value._sign; 3898return (value._sign & 1) == 0; 3922return value._sign < 0; 3938return (value._sign & 1) != 0; 3947return value._sign >= 0; 3963return value._sign == 0; 4503actualResult = (value._sign >= byte.MaxValue) ? byte.MaxValue : 4504(value._sign <= byte.MinValue) ? byte.MinValue : (byte)value._sign; 4520actualResult = (value._sign >= char.MaxValue) ? char.MaxValue : 4521(value._sign <= char.MinValue) ? char.MinValue : (char)value._sign; 4562actualResult = (value._sign >= short.MaxValue) ? short.MaxValue : 4563(value._sign <= short.MinValue) ? short.MinValue : (short)value._sign; 4579actualResult = (value._sign >= int.MaxValue) ? int.MaxValue : 4580(value._sign <= int.MinValue) ? int.MinValue : (int)value._sign; 4623actualResult = (value._sign >= sbyte.MaxValue) ? sbyte.MaxValue : 4624(value._sign <= sbyte.MinValue) ? sbyte.MinValue : (sbyte)value._sign; 4646actualResult = (value._sign >= ushort.MaxValue) ? ushort.MaxValue : 4647(value._sign <= ushort.MinValue) ? ushort.MinValue : (ushort)value._sign; 4709actualResult = (byte)value._sign; 4732actualResult = (char)value._sign; 4773actualResult = (short)value._sign; 4789actualResult = value._sign; 4820actualResult = value._sign; 4865actualResult = value._sign; 4896actualResult = value._sign; 4918actualResult = (sbyte)value._sign; 4947actualResult = (ushort)value._sign; 4970actualResult = (uint)value._sign; 5001actualResult = (ulong)value._sign; 5046actualResult = (UInt128)value._sign; 5077actualResult = (nuint)value._sign; 5124return new BigInteger(value._sign >>> smallShift, null); 5138bool neg = value._sign < 0; 5224return new BigInteger(value._sign >> (kcbitUint - 1), null);