44 references to NumericsHelpers
System.Runtime.Numerics (44)
System\Number.BigInteger.cs (1)
274
NumericsHelpers
.DangerousMakeTwosComplement(bits);
System\Numerics\BigInteger.cs (42)
172
NumericsHelpers
.GetDoubleParts(value, out int sign, out int exp, out ulong man, out _);
467
NumericsHelpers
.DangerousMakeTwosComplement(val); // Mutates val
631
NumericsHelpers
.DangerousMakeTwosComplement(value);
669
NumericsHelpers
.DangerousMakeTwosComplement(value);
866
return new BigInteger((int)
NumericsHelpers
.Abs(value._sign), value._bits);
924
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient, out nuint rest);
1036
return BigIntegerCalculator.Gcd(
NumericsHelpers
.Abs(left._sign),
NumericsHelpers
.Abs(right._sign));
1043
? BigIntegerCalculator.Gcd(right._bits,
NumericsHelpers
.Abs(left._sign))
1051
? BigIntegerCalculator.Gcd(left._bits,
NumericsHelpers
.Abs(right._sign))
1120
nuint bitsResult = trivialValue && trivialExponent ? BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign),
NumericsHelpers
.Abs(exponent._sign),
NumericsHelpers
.Abs(modulus._sign)) :
1121
trivialValue ? BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), exponent._bits!,
NumericsHelpers
.Abs(modulus._sign)) :
1122
trivialExponent ? BigIntegerCalculator.Pow(value._bits!,
NumericsHelpers
.Abs(exponent._sign),
NumericsHelpers
.Abs(modulus._sign)) :
1123
BigIntegerCalculator.Pow(value._bits!, exponent._bits!,
NumericsHelpers
.Abs(modulus._sign));
1135
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign),
NumericsHelpers
.Abs(exponent._sign), modulus._bits!, bits);
1139
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), exponent._bits!, modulus._bits!, bits);
1144
BigIntegerCalculator.Pow(value._bits!,
NumericsHelpers
.Abs(exponent._sign), modulus._bits!, bits);
1175
nuint power =
NumericsHelpers
.Abs(exponent);
1198
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), power, bits);
1743
NumericsHelpers
.DangerousMakeTwosComplement(buffer.Slice(0, buffer.Length - 1)); // Mutates limbs
1887
BigIntegerCalculator.Add(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
1898
BigIntegerCalculator.Add(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
1956
BigIntegerCalculator.Subtract(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
1967
BigIntegerCalculator.Subtract(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
2062
return
NumericsHelpers
.GetDoubleFromParts(sign, exp, man);
2631
nuint m =
NumericsHelpers
.Abs(value);
2859
BigIntegerCalculator.Multiply(right,
NumericsHelpers
.Abs(leftSign), bits);
2870
BigIntegerCalculator.Multiply(left,
NumericsHelpers
.Abs(rightSign), bits);
2923
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient);
2972
nuint remainder = BigIntegerCalculator.Remainder(dividend._bits,
NumericsHelpers
.Abs(divisor._sign));
3354
NumericsHelpers
.DangerousMakeTwosComplement(zd);
3473
NumericsHelpers
.DangerousMakeTwosComplement(zd);
3534
NumericsHelpers
.DangerousMakeOnesComplement(zd.Slice(leadingZeroCount + 1));
3541
NumericsHelpers
.DangerousMakeTwosComplement(zd);
5305
NumericsHelpers
.DangerousMakeOnesComplement(zd.Slice(negLeadingZeroCount + 1));
5310
NumericsHelpers
.DangerousMakeOnesComplement(zd);
5324
NumericsHelpers
.DangerousMakeTwosComplement(zd);
System\Numerics\BigIntegerCalculator.Bitwise.cs (1)
84
mag = i == 0 ? (isNegative ?
NumericsHelpers
.Abs((int)inlineValue) : inlineValue) : 0;