1 implementation of IPlatformAgnosticContext
Microsoft.Diagnostics.DataContractReader.Contracts (1)
Contracts\StackWalk\Context\ContextHolder.cs (1)
9
public sealed class ContextHolder<T> :
IPlatformAgnosticContext
, IEquatable<ContextHolder<T>>
90 references to IPlatformAgnosticContext
Microsoft.Diagnostics.DataContractReader.Contracts (62)
Contracts\Debugger\Debugger_1.cs (4)
276
IPlatformAgnosticContext
ctx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
343
public static void PlaceArgs(Target target,
IPlatformAgnosticContext
ctx, ref TargetPointer sp, ReadOnlySpan<TargetNUInt> args)
408
private static void SetRegisterChecked(
IPlatformAgnosticContext
ctx, string register, TargetNUInt value, int pointerSize)
Contracts\StackWalk\Context\ContextHolder.cs (1)
52
public
IPlatformAgnosticContext
Clone() => new ContextHolder<T>() { Context = Context };
Contracts\StackWalk\Context\IPlatformAgnosticContext.cs (2)
27
public abstract
IPlatformAgnosticContext
Clone();
42
public static
IPlatformAgnosticContext
GetContextForPlatform(Target target)
Contracts\StackWalk\FrameHandling\BaseFrameHandler.cs (5)
13
internal abstract class BaseFrameHandler(Target target,
IPlatformAgnosticContext
context)
17
private readonly
IPlatformAgnosticContext
_context = context;
35
IPlatformAgnosticContext
otherContextHolder =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
94
protected void UpdateCalleeSavedRegistersFromOtherContext(
IPlatformAgnosticContext
otherContext)
Contracts\StackWalk\FrameHandling\FrameHelpers.cs (12)
143
public void UpdateContextFromFrame(Data.Frame frame,
IPlatformAgnosticContext
context)
250
IPlatformAgnosticContext
ctx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
259
IPlatformAgnosticContext
ctx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
359
private IPlatformFrameHandler GetFrameHandler(
IPlatformAgnosticContext
context)
476
IPlatformAgnosticContext
context,
506
public void InterpreterVirtualUnwind(
IPlatformAgnosticContext
context)
521
private bool VirtualUnwindInterpreterCallFrame(
IPlatformAgnosticContext
context)
540
private void ApplyInterpreterFrameTransition(
IPlatformAgnosticContext
context, TargetPointer interpreterFrameAddress)
546
private TargetPointer GetFirstArgRegister(
IPlatformAgnosticContext
context)
557
private void SetFirstArgRegister(
IPlatformAgnosticContext
context, TargetPointer value)
Contracts\StackWalk\FrameHandling\FrameIterator.cs (1)
63
public void UpdateContextFromCurrentFrame(
IPlatformAgnosticContext
context)
Contracts\StackWalk\GC\GcScanner.cs (3)
37
IPlatformAgnosticContext
context,
383
private TargetPointer GetCallerSP(
IPlatformAgnosticContext
context, ref TargetPointer? cached)
387
IPlatformAgnosticContext
callerContext = context.Clone();
Contracts\StackWalk\StackWalk_1.cs (31)
33
IPlatformAgnosticContext
Context,
44
private class StackWalkData(
IPlatformAgnosticContext
context, StackWalkState state, FrameIterator frameIter, ThreadData threadData)
46
public
IPlatformAgnosticContext
Context { get; set; } = context;
136
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
145
private void SetupContext(
IPlatformAgnosticContext
context, FrameIterator frameIterator, StackWalkState state, ref bool isFirst, out bool matchedIsInterrupted, out bool matchedHasFaulted)
152
IPlatformAgnosticContext
tmpContext = context.Clone();
172
IPlatformAgnosticContext
tmpContext = context.Clone();
202
internal static bool HasFaultedContext(
IPlatformAgnosticContext
context)
207
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
216
IPlatformAgnosticContext
context,
266
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
816
IPlatformAgnosticContext
callerContext = handle.Context.Clone();
872
IPlatformAgnosticContext
recoveredContext = RetrieveHijackedContext(handle.Context, hijackKind == HijackKind.UnhandledException);
1008
IPlatformAgnosticContext
parentContext = handle.Context.Clone();
1020
private
IPlatformAgnosticContext
RetrieveHijackedContext(
IPlatformAgnosticContext
ctx, bool isUnhandledException)
1028
IPlatformAgnosticContext
recovered =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
1033
private TargetPointer ComputeRedirectStubSlot(
IPlatformAgnosticContext
context)
1118
IPlatformAgnosticContext
callerContext = handle.Context.Clone();
1166
private TargetPointer ReadGenericContextStorage(
IPlatformAgnosticContext
context, GenericContextStorage storage)
1193
static bool TryReadRegister(
IPlatformAgnosticContext
context, GenericContextStorage storage, out TargetNUInt value)
1222
IPlatformAgnosticContext
hijacked = RetrieveHijackedContext(handle.Context, hijackKind == HijackKind.UnhandledException);
1312
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
1337
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
1393
private void FillContextFromThread(
IPlatformAgnosticContext
context, ThreadData threadData, uint flags)
Contracts\StackWalk\StackWalk_1.ExceptionHandling.cs (3)
49
IPlatformAgnosticContext
callerContext = handle.Context.Clone();
73
IPlatformAgnosticContext
callerCallerContext = callerContext.Clone();
202
IPlatformAgnosticContext
callerContext = handle.Context.Clone();
Microsoft.Diagnostics.DataContractReader.Legacy (28)
ClrDataFrame.cs (7)
932
IPlatformAgnosticContext
platformContext =
IPlatformAgnosticContext
.GetContextForPlatform(target);
948
IPlatformAgnosticContext
context,
992
private static NativeVarLocation[] ResolveRegByRef(
IPlatformAgnosticContext
context, Target target, uint register, int pointerSize)
1004
private static NativeVarLocation[] ResolveStack(
IPlatformAgnosticContext
context, Target target, uint baseRegister, int offset, int pointerSize, bool deref)
1013
private static ulong ComputeStackAddress(
IPlatformAgnosticContext
context, Target target, uint baseRegister, int offset)
1036
private static ulong ReadRegister(
IPlatformAgnosticContext
context, Target target, uint registerNumber)
ClrDataStackWalk.cs (1)
339
uint platformContextSize =
IPlatformAgnosticContext
.GetContextForPlatform(_target).Size;
Dbi\DacDbiImpl.cs (18)
996
IPlatformAgnosticContext
ctx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
1295
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
1761
uint contextSize =
IPlatformAgnosticContext
.GetContextForPlatform(_target).Size;
1814
IPlatformAgnosticContext
ctx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
1831
uint contextSize =
IPlatformAgnosticContext
.GetContextForPlatform(_target).Size;
1903
uint contextSize =
IPlatformAgnosticContext
.GetContextForPlatform(_target).Size;
2042
IPlatformAgnosticContext
ctx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
2212
IPlatformAgnosticContext
stripped =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
2588
IPlatformAgnosticContext
leafCtx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
2595
IPlatformAgnosticContext
givenCtx =
IPlatformAgnosticContext
.GetContextForPlatform(_target);
2625
uint allFlags =
IPlatformAgnosticContext
.GetContextForPlatform(_target).AllContextFlags;
SOSDacImpl.cs (2)
2308
IPlatformAgnosticContext
context =
IPlatformAgnosticContext
.GetContextForPlatform(_target);