1 write to _reader
Microsoft.Diagnostics.DataContractReader.Contracts (1)
Contracts\GCInfo\GCInfoDecoder.cs (1)
148
_reader
= new NativeReader(targetStream, _target.IsLittleEndian);
91 references to _reader
Microsoft.Diagnostics.DataContractReader.Contracts (91)
Contracts\GCInfo\GCInfoDecoder.cs (91)
194
if (
_reader
.ReadBits(1, ref _bitOffset) != 0)
196
_numRegisters =
_reader
.DecodeVarLengthUnsigned(TTraits.NUM_REGISTERS_ENCBASE, ref _bitOffset);
200
if (
_reader
.ReadBits(1, ref _bitOffset) != 0)
202
numStackSlots =
_reader
.DecodeVarLengthUnsigned(TTraits.NUM_STACK_SLOTS_ENCBASE, ref _bitOffset);
203
_numUntrackedSlots =
_reader
.DecodeVarLengthUnsigned(TTraits.NUM_UNTRACKED_SLOTS_ENCBASE, ref _bitOffset);
212
uint regNum =
_reader
.DecodeVarLengthUnsigned(TTraits.REGISTER_ENCBASE, ref _bitOffset);
213
GcSlotFlags flags = (GcSlotFlags)
_reader
.ReadBits(2, ref _bitOffset);
221
regNum =
_reader
.DecodeVarLengthUnsigned(TTraits.REGISTER_ENCBASE, ref _bitOffset);
222
flags = (GcSlotFlags)
_reader
.ReadBits(2, ref _bitOffset);
226
regNum +=
_reader
.DecodeVarLengthUnsigned(TTraits.REGISTER_DELTA_ENCBASE, ref _bitOffset) + 1;
236
GcStackSlotBase spBase = (GcStackSlotBase)
_reader
.ReadBits(2, ref _bitOffset);
237
int normSpOffset =
_reader
.DecodeVarLengthSigned(TTraits.STACK_SLOT_ENCBASE, ref _bitOffset);
239
GcSlotFlags flags = (GcSlotFlags)
_reader
.ReadBits(2, ref _bitOffset);
245
spBase = (GcStackSlotBase)
_reader
.ReadBits(2, ref _bitOffset);
250
normSpOffset =
_reader
.DecodeVarLengthSigned(TTraits.STACK_SLOT_ENCBASE, ref _bitOffset);
252
flags = (GcSlotFlags)
_reader
.ReadBits(2, ref _bitOffset);
256
int normSpOffsetDelta = (int)
_reader
.DecodeVarLengthUnsigned(TTraits.STACK_SLOT_DELTA_ENCBASE, ref _bitOffset);
268
GcStackSlotBase spBase = (GcStackSlotBase)
_reader
.ReadBits(2, ref _bitOffset);
269
int normSpOffset =
_reader
.DecodeVarLengthSigned(TTraits.STACK_SLOT_ENCBASE, ref _bitOffset);
271
GcSlotFlags flags = (GcSlotFlags)
_reader
.ReadBits(2, ref _bitOffset);
277
spBase = (GcStackSlotBase)
_reader
.ReadBits(2, ref _bitOffset);
282
normSpOffset =
_reader
.DecodeVarLengthSigned(TTraits.STACK_SLOT_ENCBASE, ref _bitOffset);
284
flags = (GcSlotFlags)
_reader
.ReadBits(2, ref _bitOffset);
288
int normSpOffsetDelta = (int)
_reader
.DecodeVarLengthUnsigned(TTraits.STACK_SLOT_DELTA_ENCBASE, ref _bitOffset);
312
uint normStartDelta =
_reader
.DecodeVarLengthUnsigned(TTraits.INTERRUPTIBLE_RANGE_DELTA1_ENCBASE, ref _bitOffset);
313
uint normStopDelta =
_reader
.DecodeVarLengthUnsigned(TTraits.INTERRUPTIBLE_RANGE_DELTA2_ENCBASE, ref _bitOffset) + 1;
340
uint offset = TTraits.DenormalizeCodeOffset((uint)
_reader
.ReadBits((int)numBitsPerOffset, ref _bitOffset));
349
_slimHeader =
_reader
.ReadBits(1, ref _bitOffset) == 0;
363
if (
_reader
.ReadBits(1, ref _bitOffset) != 0)
376
_codeLength = TTraits.DenormalizeCodeLength(
_reader
.DecodeVarLengthUnsigned(TTraits.CODE_LENGTH_ENCBASE, ref _bitOffset));
401
_numSafePoints =
_reader
.DecodeVarLengthUnsigned(TTraits.NUM_SAFE_POINTS_ENCBASE, ref _bitOffset);
409
_headerFlags = (GcInfoHeaderFlags)
_reader
.ReadBits((int)GcInfoHeaderFlags.GC_INFO_FLAGS_BIT_SIZE, ref _bitOffset);
413
_codeLength = TTraits.DenormalizeCodeLength(
_reader
.DecodeVarLengthUnsigned(TTraits.CODE_LENGTH_ENCBASE, ref _bitOffset));
423
uint normPrologSize =
_reader
.DecodeVarLengthUnsigned(TTraits.NORM_PROLOG_SIZE_ENCBASE, ref _bitOffset) + 1;
424
uint normEpilogSize =
_reader
.DecodeVarLengthUnsigned(TTraits.NORM_EPILOG_SIZE_ENCBASE, ref _bitOffset);
433
uint normPrologSize =
_reader
.DecodeVarLengthUnsigned(TTraits.NORM_PROLOG_SIZE_ENCBASE, ref _bitOffset) + 1;
446
TTraits.DenormalizeStackSlot(
_reader
.DecodeVarLengthSigned(TTraits.GS_COOKIE_STACK_SLOT_ENCBASE, ref _bitOffset)) :
454
TTraits.DenormalizeStackSlot(
_reader
.DecodeVarLengthSigned(TTraits.GENERICS_INST_CONTEXT_STACK_SLOT_ENCBASE, ref _bitOffset)) :
459
TTraits.DenormalizeStackBaseRegister(
_reader
.DecodeVarLengthUnsigned(TTraits.STACK_BASE_REGISTER_ENCBASE, ref _bitOffset)) :
464
_sizeOfEnCPreservedArea =
_reader
.DecodeVarLengthUnsigned(TTraits.SIZE_OF_EDIT_AND_CONTINUE_PRESERVED_AREA_ENCBASE, ref _bitOffset);
470
_sizeOfEnCFixedStackFrame =
_reader
.DecodeVarLengthUnsigned(TTraits.SIZE_OF_EDIT_AND_CONTINUE_FIXED_STACK_FRAME_ENCBASE, ref _bitOffset);
481
TTraits.DenormalizeStackSlot(
_reader
.DecodeVarLengthSigned(TTraits.REVERSE_PINVOKE_FRAME_ENCBASE, ref _bitOffset)) :
488
TTraits.DenormalizeSizeOfStackArea(
_reader
.DecodeVarLengthUnsigned(TTraits.SIZE_OF_STACK_AREA_ENCBASE, ref _bitOffset));
493
_numSafePoints =
_reader
.DecodeVarLengthUnsigned(TTraits.NUM_SAFE_POINTS_ENCBASE, ref _bitOffset);
496
_numInterruptibleRanges =
_reader
.DecodeVarLengthUnsigned(TTraits.NUM_INTERRUPTIBLE_RANGES_ENCBASE, ref _bitOffset);
663
if (
_reader
.ReadBits(1, ref safePointBitPos) != 0)
665
numBitsPerOffset = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.POINTER_SIZE_ENCBASE, ref safePointBitPos) + 1;
686
uint liveStatesOffset = (uint)
_reader
.ReadBits((int)numBitsPerOffset, ref spOffsetBit);
690
if (
_reader
.ReadBits(1, ref spBitOffset) != 0)
693
bool fSkip =
_reader
.ReadBits(1, ref spBitOffset) == 0;
695
uint readSlots = (uint)
_reader
.DecodeVarLengthUnsigned(
700
uint cnt = (uint)
_reader
.DecodeVarLengthUnsigned(
715
curLive[si] =
_reader
.ReadBits(1, ref spBitOffset) != 0;
723
curLive[si] =
_reader
.ReadBits(1, ref spBitOffset) != 0;
759
if (_numSafePoints > 0 &&
_reader
.ReadBits(1, ref bitOffset) != 0)
761
_reader
.DecodeVarLengthUnsigned(TTraits.POINTER_SIZE_ENCBASE, ref bitOffset);
775
uint numBitsPerPointer = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.POINTER_SIZE_ENCBASE, ref bitOffset);
788
uint chunkPointer = (uint)
_reader
.ReadBits((int)numBitsPerPointer, ref bitOffset);
806
uint finalState = (uint)
_reader
.ReadBits(1, ref finalStateBitOffset);
810
while (
_reader
.ReadBits(1, ref transitionBitOffset) != 0)
812
uint transOffset = (uint)
_reader
.ReadBits(TTraits.NUM_NORM_CODE_OFFSETS_PER_CHUNK_LOG2, ref transitionBitOffset);
861
if (
_reader
.ReadBits(1, ref bitOffset) != 0)
864
bool fSkip =
_reader
.ReadBits(1, ref bitOffset) == 0;
866
uint readSlots = (uint)
_reader
.DecodeVarLengthUnsigned(
871
uint cnt = (uint)
_reader
.DecodeVarLengthUnsigned(
887
if (
_reader
.ReadBits(1, ref bitOffset) != 0)
1003
if (_numSafePoints > 0 &&
_reader
.ReadBits(1, ref bitOffset) != 0)
1005
numBitsPerOffset = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.POINTER_SIZE_ENCBASE, ref bitOffset) + 1;
1015
uint liveStatesOffset = (uint)
_reader
.ReadBits((int)numBitsPerOffset, ref bitOffset);
1019
if (
_reader
.ReadBits(1, ref bitOffset) != 0)
1022
bool fSkip =
_reader
.ReadBits(1, ref bitOffset) == 0;
1024
uint readSlots = (uint)
_reader
.DecodeVarLengthUnsigned(
1029
uint cnt = (uint)
_reader
.DecodeVarLengthUnsigned(
1052
if (
_reader
.ReadBits(1, ref bitOffset) != 0)
1079
uint numBitsPerPointer = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.POINTER_SIZE_ENCBASE, ref bitOffset);
1091
chunkPointer = (uint)
_reader
.ReadBits((int)numBitsPerPointer, ref bitOffset);
1106
if (
_reader
.ReadBits(1, ref bitOffset) != 0)
1109
bool fSkipCBL =
_reader
.ReadBits(1, ref bitOffset) == 0;
1111
uint readSlots = (uint)
_reader
.DecodeVarLengthUnsigned(
1116
uint cnt = (uint)
_reader
.DecodeVarLengthUnsigned(
1130
if (
_reader
.ReadBits(1, ref bitOffset) != 0)
1143
bool cblSimple =
_reader
.ReadBits(1, ref cblOffset) == 0;
1149
cblSkipFirst =
_reader
.ReadBits(1, ref cblOffset) == 0;
1157
while (
_reader
.ReadBits(1, ref cblOffset) == 0)
1166
uint tmp = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.LIVESTATE_RLE_SKIP_ENCBASE, ref cblOffset) + 1;
1168
cblCnt = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.LIVESTATE_RLE_RUN_ENCBASE, ref cblOffset);
1172
uint tmp = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.LIVESTATE_RLE_RUN_ENCBASE, ref cblOffset) + 1;
1174
cblCnt = (uint)
_reader
.DecodeVarLengthUnsigned(TTraits.LIVESTATE_RLE_SKIP_ENCBASE, ref cblOffset);
1177
uint isLive = (uint)
_reader
.ReadBits(1, ref finalStateBitOffset);
1184
if (
_reader
.ReadBits(1, ref transitionBitOffset) == 0)
1187
uint transitionOffset = (uint)
_reader
.ReadBits(TTraits.NUM_NORM_CODE_OFFSETS_PER_CHUNK_LOG2, ref transitionBitOffset);