55 references to ReadByteAt
Microsoft.Diagnostics.DataContractReader.Contracts (55)
Contracts\StackWalk\Context\AMD64\AMD64Unwinder.cs (55)
193
if ((
ReadByteAt
(nextByte) == SIZE64_PREFIX) &&
194
(
ReadByteAt
(nextByte + 1) == ADD_IMM8_OP) &&
195
(
ReadByteAt
(nextByte + 2) == 0xc4))
205
else if ((
ReadByteAt
(nextByte) == SIZE64_PREFIX) &&
206
(
ReadByteAt
(nextByte + 1) == ADD_IMM32_OP) &&
207
(
ReadByteAt
(nextByte + 2) == 0xc4))
217
else if (((
ReadByteAt
(nextByte) & 0xfe) == SIZE64_PREFIX) &&
218
(
ReadByteAt
(nextByte + 1) == LEA_OP))
220
frameRegister = (uint)(((
ReadByteAt
(nextByte) & 0x1) << 3) | (
ReadByteAt
(nextByte + 2) & 0x7));
226
if ((
ReadByteAt
(nextByte + 2) & 0xf8) == 0x60)
236
else if ((
ReadByteAt
(nextByte + 2) & 0xf8) == 0xa0)
256
if ((
ReadByteAt
(nextByte) & 0xf8) == POP_OP)
260
else if (IsRexPrefix(
ReadByteAt
(nextByte)) &&
261
((
ReadByteAt
(nextByte + 1) & 0xf8) == POP_OP))
276
if (
ReadByteAt
(nextByte) == REPNE_PREFIX)
289
if ((
ReadByteAt
(nextByte) == RET_OP) ||
290
(
ReadByteAt
(nextByte) == RET_OP_2) ||
291
((
ReadByteAt
(nextByte) == REP_PREFIX) && (
ReadByteAt
(nextByte + 1) == RET_OP)))
301
else if ((
ReadByteAt
(nextByte) == JMP_IMM8_OP) ||
302
(
ReadByteAt
(nextByte) == JMP_IMM32_OP))
311
if (
ReadByteAt
(nextByte) == JMP_IMM8_OP)
314
branchTarget += 2u + (ulong)(sbyte)
ReadByteAt
(nextByte + 1);
319
int delta =
ReadByteAt
(nextByte + 1) |
320
(
ReadByteAt
(nextByte + 2) << 8) |
321
(
ReadByteAt
(nextByte + 3) << 16) |
322
(
ReadByteAt
(nextByte + 4) << 24);
367
else if ((
ReadByteAt
(nextByte) == JMP_IND_OP) && (
ReadByteAt
(nextByte + 1) == 0x25))
378
else if (((
ReadByteAt
(nextByte) & 0xf8) == SIZE64_PREFIX) &&
379
(
ReadByteAt
(nextByte + 1) == 0xff) &&
380
(
ReadByteAt
(nextByte + 2) & 0x38) == 0x20)
410
if ((
ReadByteAt
(nextByte) & 0xf8) == SIZE64_PREFIX)
413
if (
ReadByteAt
(nextByte + 1) == ADD_IMM8_OP)
420
context.Rsp +=
ReadByteAt
(nextByte + 3);
424
else if (
ReadByteAt
(nextByte + 1) == ADD_IMM32_OP)
431
int displacement =
ReadByteAt
(nextByte + 3) |
432
(
ReadByteAt
(nextByte + 4) << 8) |
433
(
ReadByteAt
(nextByte + 5) << 16) |
434
(
ReadByteAt
(nextByte + 6) << 24);
439
else if (
ReadByteAt
(nextByte + 1) == LEA_OP)
441
if ((
ReadByteAt
(nextByte + 2) & 0xf8) == 0x60)
449
context.Rsp +=
ReadByteAt
(nextByte + 3);
453
else if ((
ReadByteAt
(nextByte + 2) & 0xf8) == 0xa0)
460
int displacement =
ReadByteAt
(nextByte + 3) |
461
(
ReadByteAt
(nextByte + 4) << 8) |
462
(
ReadByteAt
(nextByte + 5) << 16) |
463
(
ReadByteAt
(nextByte + 6) << 24);
479
if ((
ReadByteAt
(nextByte) & 0xf8) == POP_OP)
486
byte registerNumber = (byte)(
ReadByteAt
(nextByte) & 0x7);
492
else if (IsRexPrefix(
ReadByteAt
(nextByte)) &&
493
(
ReadByteAt
(nextByte + 1) & 0xf8) == POP_OP)
500
byte registerNumber = (byte)(((
ReadByteAt
(nextByte) & 1) << 3) | (
ReadByteAt
(nextByte + 1) & 0x7));