42 references to NumericsHelpers
System.Runtime.Numerics (42)
System\Number.BigInteger.cs (1)
274NumericsHelpers.DangerousMakeTwosComplement(bits);
System\Numerics\BigInteger.cs (40)
172NumericsHelpers.GetDoubleParts(value, out int sign, out int exp, out ulong man, out _); 467NumericsHelpers.DangerousMakeTwosComplement(val); // Mutates val 631NumericsHelpers.DangerousMakeTwosComplement(value); 669NumericsHelpers.DangerousMakeTwosComplement(value); 866return new BigInteger((int)NumericsHelpers.Abs(value._sign), value._bits); 923BigIntegerCalculator.Divide(dividend._bits, NumericsHelpers.Abs(divisor._sign), quotient, out nuint rest); 1037return BigIntegerCalculator.Gcd(NumericsHelpers.Abs(left._sign), NumericsHelpers.Abs(right._sign)); 1044? BigIntegerCalculator.Gcd(right._bits, NumericsHelpers.Abs(left._sign)) 1052? BigIntegerCalculator.Gcd(left._bits, NumericsHelpers.Abs(right._sign)) 1121nuint bitsResult = trivialValue && trivialExponent ? BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), NumericsHelpers.Abs(exponent._sign), NumericsHelpers.Abs(modulus._sign)) : 1122trivialValue ? BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), exponent._bits!, NumericsHelpers.Abs(modulus._sign)) : 1123trivialExponent ? BigIntegerCalculator.Pow(value._bits!, NumericsHelpers.Abs(exponent._sign), NumericsHelpers.Abs(modulus._sign)) : 1124BigIntegerCalculator.Pow(value._bits!, exponent._bits!, NumericsHelpers.Abs(modulus._sign)); 1136BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), NumericsHelpers.Abs(exponent._sign), modulus._bits!, bits); 1140BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), exponent._bits!, modulus._bits!, bits); 1145BigIntegerCalculator.Pow(value._bits!, NumericsHelpers.Abs(exponent._sign), modulus._bits!, bits); 1176nuint power = NumericsHelpers.Abs(exponent); 1199BigIntegerCalculator.Pow(NumericsHelpers.Abs(value._sign), power, bits); 1744NumericsHelpers.DangerousMakeTwosComplement(buffer.Slice(0, buffer.Length - 1)); // Mutates limbs 1888BigIntegerCalculator.Add(rightBits, NumericsHelpers.Abs(leftSign), bits); 1899BigIntegerCalculator.Add(leftBits, NumericsHelpers.Abs(rightSign), bits); 1957BigIntegerCalculator.Subtract(rightBits, NumericsHelpers.Abs(leftSign), bits); 1968BigIntegerCalculator.Subtract(leftBits, NumericsHelpers.Abs(rightSign), bits); 2063return NumericsHelpers.GetDoubleFromParts(sign, exp, man); 2632nuint m = NumericsHelpers.Abs(value); 2860BigIntegerCalculator.Multiply(right, NumericsHelpers.Abs(leftSign), bits); 2871BigIntegerCalculator.Multiply(left, NumericsHelpers.Abs(rightSign), bits); 2924BigIntegerCalculator.Divide(dividend._bits, NumericsHelpers.Abs(divisor._sign), quotient); 2973nuint remainder = BigIntegerCalculator.Remainder(dividend._bits, NumericsHelpers.Abs(divisor._sign)); 3293NumericsHelpers.DangerousMakeOnesComplement(zd.Slice(leadingZeroCount + 1)); 3300NumericsHelpers.DangerousMakeTwosComplement(zd); 5064NumericsHelpers.DangerousMakeOnesComplement(zd.Slice(negLeadingZeroCount + 1)); 5069NumericsHelpers.DangerousMakeOnesComplement(zd); 5083NumericsHelpers.DangerousMakeTwosComplement(zd);
System\Numerics\BigIntegerCalculator.Bitwise.cs (1)
84mag = i == 0 ? (isNegative ? NumericsHelpers.Abs((int)inlineValue) : inlineValue) : 0;