1 write to _upper
System.Private.CoreLib (1)
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt128.cs (1)
43_upper = upper;
85 references to _upper
System.Private.CoreLib (85)
src\runtime\src\libraries\System.Private.CoreLib\src\System\UInt128.cs (85)
48internal ulong Upper => _upper; 97public override int GetHashCode() => HashCode.Combine(_lower, _upper); 186if (value._upper != 0) 204if (value._upper != 0) 218if (value._upper > uint.MaxValue) 224uint hi32 = (uint)(value._upper); 250if (value._upper == 0) 255else if ((value._upper >> 40) == 0) // value < (2^104) 273double upper = BitConverter.UInt64BitsToDouble(TwoPow128Bits | (value._upper >> 12)) - TwoPow128; 295if (value._upper != 0) 313if (value._upper != 0) 331if (value._upper != 0) 342public static explicit operator Int128(UInt128 value) => new Int128(value._upper, value._lower); 351if ((long)value._upper < 0) 355return new Int128(value._upper, value._lower); 369if (value._upper != 0) 389if (value._upper != 0) 414if (value._upper != 0) 434if (value._upper != 0) 454if (value._upper != 0) 474if (value._upper != 0) 744ulong upper = left._upper + right._upper + carry; 757ulong upper = checked(left._upper + right._upper + carry); 775if (right._upper == 0) 780if (right._upper >= left._upper) 782return left._upper == right._upper && left._lower >= right._lower 799ulong divHi = right._upper; 803ulong valMi = left._upper; 875if (left._upper < divisor) 877if (left._upper == 0) 883leftUpper = left._upper; 887(highRes, leftUpper) = Math.DivRem(left._upper, divisor); 1012if (value._upper == 0) 1016return BitOperations.LeadingZeroCount(value._upper); 1022if (value._upper == 0) 1083=> ulong.PopCount(value._lower) + ulong.PopCount(value._upper); 1098return 64 + ulong.TrailingZeroCount(value._upper); 1250if (value._upper == 0) 1254return 64 + ulong.Log2(value._upper); 1262public static UInt128 operator &(UInt128 left, UInt128 right) => new UInt128(left._upper & right._upper, left._lower & right._lower); 1265public static UInt128 operator |(UInt128 left, UInt128 right) => new UInt128(left._upper | right._upper, left._lower | right._lower); 1268public static UInt128 operator ^(UInt128 left, UInt128 right) => new UInt128(left._upper ^ right._upper, left._lower ^ right._lower); 1271public static UInt128 operator ~(UInt128 value) => new UInt128(~value._upper, ~value._lower); 1280return (left._upper < right._upper) 1281|| (left._upper == right._upper) && (left._lower < right._lower); 1287return (left._upper < right._upper) 1288|| (left._upper == right._upper) && (left._lower <= right._lower); 1294return (left._upper > right._upper) 1295|| (left._upper == right._upper) && (left._lower > right._lower); 1301return (left._upper > right._upper) 1302|| (left._upper == right._upper) && (left._lower >= right._lower); 1331public static bool operator ==(UInt128 left, UInt128 right) => (left._lower == right._lower) && (left._upper == right._upper); 1334public static bool operator !=(UInt128 left, UInt128 right) => (left._lower != right._lower) || (left._upper != right._upper); 1379upper += (left._upper * right._lower) + (left._lower * right._upper); 1410ulong ah = left._upper; 1413ulong bh = right._upper; 1416UInt128 t = Math.BigMul(ah, bl) + mull._upper; 1420return Math.BigMul(ah, bh) + t._upper + tl._upper; 2085ulong upper = (value._upper << shiftAmount) | (value._lower >> (64 - shiftAmount)); 2112ulong lower = value._upper >> shiftAmount; 2120ulong lower = (value._lower >> shiftAmount) | (value._upper << (64 - shiftAmount)); 2121ulong upper = value._upper >> shiftAmount; 2154ulong upper = left._upper - right._upper - borrow; 2167ulong upper = checked(left._upper - right._upper - borrow);