43 references to NumericsHelpers
System.Runtime.Numerics (43)
System\Number.BigInteger.cs (1)
314
NumericsHelpers
.DangerousMakeTwosComplement(bits);
System\Numerics\BigInteger.cs (41)
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);
884
return new BigInteger((int)
NumericsHelpers
.Abs(value._sign), value._bits);
942
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient, out nuint rest);
1054
return BigIntegerCalculator.Gcd(
NumericsHelpers
.Abs(left._sign),
NumericsHelpers
.Abs(right._sign));
1061
? BigIntegerCalculator.Gcd(right._bits,
NumericsHelpers
.Abs(left._sign))
1069
? BigIntegerCalculator.Gcd(left._bits,
NumericsHelpers
.Abs(right._sign))
1138
nuint bitsResult = trivialValue && trivialExponent ? BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign),
NumericsHelpers
.Abs(exponent._sign),
NumericsHelpers
.Abs(modulus._sign)) :
1139
trivialValue ? BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), exponent._bits!,
NumericsHelpers
.Abs(modulus._sign)) :
1140
trivialExponent ? BigIntegerCalculator.Pow(value._bits!,
NumericsHelpers
.Abs(exponent._sign),
NumericsHelpers
.Abs(modulus._sign)) :
1141
BigIntegerCalculator.Pow(value._bits!, exponent._bits!,
NumericsHelpers
.Abs(modulus._sign));
1153
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign),
NumericsHelpers
.Abs(exponent._sign), modulus._bits!, bits);
1157
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), exponent._bits!, modulus._bits!, bits);
1162
BigIntegerCalculator.Pow(value._bits!,
NumericsHelpers
.Abs(exponent._sign), modulus._bits!, bits);
1193
nuint power =
NumericsHelpers
.Abs(exponent);
1216
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), power, bits);
1761
NumericsHelpers
.DangerousMakeTwosComplement(buffer.Slice(0, buffer.Length - 1)); // Mutates limbs
1905
BigIntegerCalculator.Add(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
1916
BigIntegerCalculator.Add(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
1974
BigIntegerCalculator.Subtract(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
1985
BigIntegerCalculator.Subtract(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
2823
nuint m =
NumericsHelpers
.Abs(value);
3051
BigIntegerCalculator.Multiply(right,
NumericsHelpers
.Abs(leftSign), bits);
3062
BigIntegerCalculator.Multiply(left,
NumericsHelpers
.Abs(rightSign), bits);
3115
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient);
3164
nuint remainder = BigIntegerCalculator.Remainder(dividend._bits,
NumericsHelpers
.Abs(divisor._sign));
3546
NumericsHelpers
.DangerousMakeTwosComplement(zd);
3665
NumericsHelpers
.DangerousMakeTwosComplement(zd);
3726
NumericsHelpers
.DangerousMakeOnesComplement(zd.Slice(leadingZeroCount + 1));
3733
NumericsHelpers
.DangerousMakeTwosComplement(zd);
5497
NumericsHelpers
.DangerousMakeOnesComplement(zd.Slice(negLeadingZeroCount + 1));
5502
NumericsHelpers
.DangerousMakeOnesComplement(zd);
5516
NumericsHelpers
.DangerousMakeTwosComplement(zd);
System\Numerics\BigIntegerCalculator.Bitwise.cs (1)
84
mag = i == 0 ? (isNegative ?
NumericsHelpers
.Abs((int)inlineValue) : inlineValue) : 0;