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