53 references to NumericsHelpers
System.Runtime.Numerics (53)
System\Number.BigInteger.cs (2)
260NumericsHelpers.DangerousMakeTwosComplement(bits); 808ulong uuRes = NumericsHelpers.MakeUInt64(base1E9Buffer[iuDst], uCarry);
System\Numerics\BigInteger.cs (51)
170NumericsHelpers.GetDoubleParts(value, out sign, out exp, out man, out _); 425NumericsHelpers.DangerousMakeTwosComplement(val); // Mutates val 613NumericsHelpers.DangerousMakeTwosComplement(value); 784BigIntegerCalculator.Divide(dividend._bits, NumericsHelpers.Abs(divisor._sign), quotient, out rest); 884return BigIntegerCalculator.Gcd(NumericsHelpers.Abs(left._sign), NumericsHelpers.Abs(right._sign)); 891? BigIntegerCalculator.Gcd(right._bits, NumericsHelpers.Abs(left._sign)) 899? BigIntegerCalculator.Gcd(left._bits, NumericsHelpers.Abs(right._sign)) 987uint bits = trivialValue && trivialExponent ? BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), NumericsHelpers.Abs(exponent._sign), NumericsHelpers.Abs(modulus._sign)) : 988trivialValue ? BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), exponent._bits!, NumericsHelpers.Abs(modulus._sign)) : 989trivialExponent ? BigIntegerCalculator.Pow(value._bits!, NumericsHelpers.Abs(exponent._sign), NumericsHelpers.Abs(modulus._sign)) : 990BigIntegerCalculator.Pow(value._bits!, exponent._bits!, NumericsHelpers.Abs(modulus._sign)); 1006BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), NumericsHelpers.Abs(exponent._sign), modulus._bits!, bits); 1010BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), exponent._bits!, modulus._bits!, bits); 1015BigIntegerCalculator.Pow(value._bits!, NumericsHelpers.Abs(exponent._sign), modulus._bits!, bits); 1044uint power = NumericsHelpers.Abs(exponent); 1063BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), power, bits); 1119return NumericsHelpers.MakeUInt64(_bits[1], _bits[0]) == uu; 1137return NumericsHelpers.MakeUInt64(_bits[1], _bits[0]) == other; 1158ulong uuTmp = cu == 2 ? NumericsHelpers.MakeUInt64(_bits[1], _bits[0]) : _bits[0]; 1174ulong uuTmp = cu == 2 ? NumericsHelpers.MakeUInt64(_bits[1], _bits[0]) : _bits[0]; 1532NumericsHelpers.DangerousMakeTwosComplement(buffer.Slice(0, buffer.Length - 1)); // Mutates dwords 1663BigIntegerCalculator.Add(rightBits, NumericsHelpers.Abs(leftSign), bits); 1675BigIntegerCalculator.Add(leftBits, NumericsHelpers.Abs(rightSign), bits); 1741BigIntegerCalculator.Subtract(rightBits, NumericsHelpers.Abs(leftSign), bits); 1753BigIntegerCalculator.Subtract(leftBits, NumericsHelpers.Abs(rightSign), bits); 1857return NumericsHelpers.GetDoubleFromParts(sign, exp, man); 1914uu = NumericsHelpers.MakeUInt64(value._bits[1], value._bits[0]); 1954NumericsHelpers.MakeUInt64((len > 3) ? value._bits[3] : 0, value._bits[2]), 1955NumericsHelpers.MakeUInt64(value._bits[1], value._bits[0]) 1960uu = NumericsHelpers.MakeUInt64(value._bits[1], value._bits[0]); 2044return NumericsHelpers.MakeUInt64(value._bits[1], value._bits[0]); 2072NumericsHelpers.MakeUInt64((len > 3) ? value._bits[3] : 0, value._bits[2]), 2073NumericsHelpers.MakeUInt64(value._bits[1], value._bits[0]) 2078return NumericsHelpers.MakeUInt64(value._bits[1], value._bits[0]); 2585NumericsHelpers.DangerousMakeTwosComplement(xd); // Mutates xd 2632NumericsHelpers.DangerousMakeTwosComplement(zd); // Mutates zd 2716BigIntegerCalculator.Multiply(right, NumericsHelpers.Abs(leftSign), bits); 2728BigIntegerCalculator.Multiply(left, NumericsHelpers.Abs(rightSign), bits); 2808BigIntegerCalculator.Divide(dividend._bits, NumericsHelpers.Abs(divisor._sign), quotient); 2864uint remainder = BigIntegerCalculator.Remainder(dividend._bits, NumericsHelpers.Abs(divisor._sign)); 3280NumericsHelpers.DangerousMakeTwosComplement(xd); 3356NumericsHelpers.DangerousMakeTwosComplement(zd); 3415NumericsHelpers.DangerousMakeTwosComplement(xd); 3490NumericsHelpers.DangerousMakeTwosComplement(zd); 5258NumericsHelpers.DangerousMakeTwosComplement(xd); // Mutates xd