3 instantiations of MapUnit
Microsoft.Diagnostics.DataContractReader.Contracts (3)
Contracts\ExecutionManager\Helpers\NibbleMapHelpers.cs (3)
32
public MapUnit ShiftNextNibble => new
MapUnit
(Value >>> 4);
44
return new
MapUnit
(Value >>> (int)shift);
126
return new
MapUnit
(target.Read<uint>(mapUnitAdderss));
20 references to MapUnit
Microsoft.Diagnostics.DataContractReader.Contracts (20)
Contracts\ExecutionManager\Helpers\NibbleMapConstantLookup.cs (8)
40
internal static bool IsPointer(
MapUnit
mapUnit)
42
return (mapUnit.Value &
MapUnit
.NibbleMask) > 8;
45
internal static TargetPointer DecodePointer(TargetPointer baseAddress,
MapUnit
mapUnit)
47
uint nibble = mapUnit.Value &
MapUnit
.NibbleMask;
48
uint relativePointer = (mapUnit.Value & ~
MapUnit
.NibbleMask) + ((nibble - 9) << 2);
54
uint nibble = ((relativeAddress &
MapUnit
.NibbleMask) >>> 2) + 9;
55
return (relativeAddress & ~
MapUnit
.NibbleMask) + nibble;
63
MapUnit
t = mapIdx.ReadMapUnit(_target, mapStart);
Contracts\ExecutionManager\Helpers\NibbleMapHelpers.cs (12)
17
internal const ulong BytesPerBucket = 8 *
MapUnit
.SizeInBytes;
32
public
MapUnit
ShiftNextNibble => new MapUnit(Value >>> 4);
41
public
MapUnit
FocusOnIndexedNibble(MapKey mapIdx)
68
return (uint)(Value - 1) *
MapUnit
.SizeInBytes;
84
public ulong ContainingMapUnitIndex => _mapIdx /
MapUnit
.SizeInNibbles;
87
public ulong ContainingMapUnitByteOffset => ContainingMapUnitIndex *
MapUnit
.SizeInBytes;
90
public uint NibbleIndexInMapUnit => (uint)(_mapIdx & (
MapUnit
.SizeInNibbles - 1));
104
public MapKey PrevMapUnit => new MapKey(_mapIdx -
MapUnit
.SizeInNibbles);
107
public MapKey AlignDownToMapUnit() =>new MapKey(_mapIdx & (~(
MapUnit
.SizeInNibbles - 1)));
111
public bool InFirstMapUnit => _mapIdx <
MapUnit
.SizeInNibbles;
122
internal
MapUnit
ReadMapUnit(Target target, TargetPointer mapStart)
153
bucketByteIndex = new Nibble((bucketByteOffset /
MapUnit
.SizeInBytes) + 1);