57 references to NumericsHelpers
System.Runtime.Numerics (57)
System\Number.BigInteger.cs (2)
260
NumericsHelpers
.DangerousMakeTwosComplement(bits);
808
ulong uuRes =
NumericsHelpers
.MakeUInt64(base1E9Buffer[iuDst], uCarry);
System\Numerics\BigInteger.cs (55)
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];
1559
NumericsHelpers
.DangerousMakeTwosComplement(buffer.Slice(0, buffer.Length - 1)); // Mutates dwords
1690
BigIntegerCalculator.Add(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
1702
BigIntegerCalculator.Add(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
1768
BigIntegerCalculator.Subtract(rightBits,
NumericsHelpers
.Abs(leftSign), bits);
1780
BigIntegerCalculator.Subtract(leftBits,
NumericsHelpers
.Abs(rightSign), bits);
1884
return
NumericsHelpers
.GetDoubleFromParts(sign, exp, man);
1941
uu =
NumericsHelpers
.MakeUInt64(value._bits[1], value._bits[0]);
1981
NumericsHelpers
.MakeUInt64((len > 3) ? value._bits[3] : 0, value._bits[2]),
1982
NumericsHelpers
.MakeUInt64(value._bits[1], value._bits[0])
1987
uu =
NumericsHelpers
.MakeUInt64(value._bits[1], value._bits[0]);
2071
return
NumericsHelpers
.MakeUInt64(value._bits[1], value._bits[0]);
2099
NumericsHelpers
.MakeUInt64((len > 3) ? value._bits[3] : 0, value._bits[2]),
2100
NumericsHelpers
.MakeUInt64(value._bits[1], value._bits[0])
2105
return
NumericsHelpers
.MakeUInt64(value._bits[1], value._bits[0]);
2612
NumericsHelpers
.DangerousMakeTwosComplement(xd); // Mutates xd
2659
NumericsHelpers
.DangerousMakeTwosComplement(zd); // Mutates zd
2743
BigIntegerCalculator.Multiply(right,
NumericsHelpers
.Abs(leftSign), bits);
2755
BigIntegerCalculator.Multiply(left,
NumericsHelpers
.Abs(rightSign), bits);
2835
BigIntegerCalculator.Divide(dividend._bits,
NumericsHelpers
.Abs(divisor._sign), quotient);
2891
uint remainder = BigIntegerCalculator.Remainder(dividend._bits,
NumericsHelpers
.Abs(divisor._sign));
3271
uint smallBits =
NumericsHelpers
.Abs(value._sign);
3326
NumericsHelpers
.DangerousMakeTwosComplement(xd);
3402
NumericsHelpers
.DangerousMakeTwosComplement(zd);
3426
uint smallBits =
NumericsHelpers
.Abs(value._sign);
3481
NumericsHelpers
.DangerousMakeTwosComplement(xd);
3549
NumericsHelpers
.DangerousMakeTwosComplement(zd);
5302
uint smallBits =
NumericsHelpers
.Abs(value._sign);
5336
NumericsHelpers
.DangerousMakeTwosComplement(xd); // Mutates xd
5367
NumericsHelpers
.DangerousMakeTwosComplement(zd);