44 references to NumericsHelpers
System.Runtime.Numerics (44)
System\Number.BigInteger.cs (1)
315
NumericsHelpers
.DangerousMakeTwosComplement(bits);
System\Numerics\BigInteger.cs (42)
176
NumericsHelpers
.GetDoubleParts(value, out int sign, out int exp, out ulong man, out _);
471
NumericsHelpers
.DangerousMakeTwosComplement(val); // Mutates val
635
NumericsHelpers
.DangerousMakeTwosComplement(value);
673
NumericsHelpers
.DangerousMakeTwosComplement(value);
888
return new BigInteger((int)
NumericsHelpers
.Abs(value._sign), value._bits);
946
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient, out nuint rest);
1099
return BigIntegerCalculator.Gcd(
NumericsHelpers
.Abs(left._sign),
NumericsHelpers
.Abs(right._sign));
1106
? BigIntegerCalculator.Gcd(right._bits,
NumericsHelpers
.Abs(left._sign))
1114
? BigIntegerCalculator.Gcd(left._bits,
NumericsHelpers
.Abs(right._sign))
1194
nuint magnitude =
NumericsHelpers
.Abs(value._sign);
1342
nuint bitsResult = trivialValue && trivialExponent ? BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign),
NumericsHelpers
.Abs(exponent._sign),
NumericsHelpers
.Abs(modulus._sign)) :
1343
trivialValue ? BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), exponent._bits!,
NumericsHelpers
.Abs(modulus._sign)) :
1344
trivialExponent ? BigIntegerCalculator.Pow(value._bits!,
NumericsHelpers
.Abs(exponent._sign),
NumericsHelpers
.Abs(modulus._sign)) :
1345
BigIntegerCalculator.Pow(value._bits!, exponent._bits!,
NumericsHelpers
.Abs(modulus._sign));
1357
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign),
NumericsHelpers
.Abs(exponent._sign), modulus._bits!, bits);
1361
BigIntegerCalculator.Pow(
NumericsHelpers
.Abs(value._sign), exponent._bits!, modulus._bits!, bits);
1366
BigIntegerCalculator.Pow(value._bits!,
NumericsHelpers
.Abs(exponent._sign), modulus._bits!, bits);
1408
nuint power =
NumericsHelpers
.Abs(exponent);
1423
nuint magnitude =
NumericsHelpers
.Abs(value._sign);
2204
NumericsHelpers
.DangerousMakeTwosComplement(buffer.Slice(0, buffer.Length - 1)); // Mutates limbs
2357
BigIntegerCalculator.Add(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
2368
BigIntegerCalculator.Add(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
2435
BigIntegerCalculator.Subtract(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
2446
BigIntegerCalculator.Subtract(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
3355
nuint m =
NumericsHelpers
.Abs(value);
3610
BigIntegerCalculator.Multiply(right,
NumericsHelpers
.Abs(leftSign), bits);
3621
BigIntegerCalculator.Multiply(left,
NumericsHelpers
.Abs(rightSign), bits);
3674
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient);
3741
nuint remainder = BigIntegerCalculator.Remainder(dividend._bits,
NumericsHelpers
.Abs(divisor._sign));
4145
NumericsHelpers
.DangerousMakeTwosComplement(zd);
4264
NumericsHelpers
.DangerousMakeTwosComplement(zd);
4325
NumericsHelpers
.DangerousMakeOnesComplement(zd.Slice(leadingZeroCount + 1));
4332
NumericsHelpers
.DangerousMakeTwosComplement(zd);
6099
NumericsHelpers
.DangerousMakeOnesComplement(zd.Slice(negLeadingZeroCount + 1));
6104
NumericsHelpers
.DangerousMakeOnesComplement(zd);
6118
NumericsHelpers
.DangerousMakeTwosComplement(zd);
System\Numerics\BigIntegerCalculator.Bitwise.cs (1)
84
mag = i == 0 ? (isNegative ?
NumericsHelpers
.Abs((int)inlineValue) : inlineValue) : 0;