1 implementation of IPlatformAgnosticContext
Microsoft.Diagnostics.DataContractReader.Contracts (1)
Contracts\StackWalk\Context\ContextHolder.cs (1)
9public sealed class ContextHolder<T> : IPlatformAgnosticContext, IEquatable<ContextHolder<T>>
91 references to IPlatformAgnosticContext
Microsoft.Diagnostics.DataContractReader.Contracts (63)
Contracts\Debugger\Debugger_1.cs (4)
276IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 343public static void PlaceArgs(Target target, IPlatformAgnosticContext ctx, ref TargetPointer sp, ReadOnlySpan<TargetNUInt> args) 408private static void SetRegisterChecked(IPlatformAgnosticContext ctx, string register, TargetNUInt value, int pointerSize)
Contracts\StackWalk\Context\ContextHolder.cs (1)
52public IPlatformAgnosticContext Clone() => new ContextHolder<T>() { Context = Context };
Contracts\StackWalk\Context\IPlatformAgnosticContext.cs (2)
27public abstract IPlatformAgnosticContext Clone(); 42public static IPlatformAgnosticContext GetContextForPlatform(Target target)
Contracts\StackWalk\FrameHandling\BaseFrameHandler.cs (5)
13internal abstract class BaseFrameHandler(Target target, IPlatformAgnosticContext context) 17private readonly IPlatformAgnosticContext _context = context; 35IPlatformAgnosticContext otherContextHolder = IPlatformAgnosticContext.GetContextForPlatform(_target); 94protected void UpdateCalleeSavedRegistersFromOtherContext(IPlatformAgnosticContext otherContext)
Contracts\StackWalk\FrameHandling\FrameHelpers.cs (12)
219public void UpdateContextFromFrame(Data.Frame frame, IPlatformAgnosticContext context) 353IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 362IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 462private IPlatformFrameHandler GetFrameHandler(IPlatformAgnosticContext context) 602IPlatformAgnosticContext context, 632public void InterpreterVirtualUnwind(IPlatformAgnosticContext context) 647private bool VirtualUnwindInterpreterCallFrame(IPlatformAgnosticContext context) 666private void ApplyInterpreterFrameTransition(IPlatformAgnosticContext context, TargetPointer interpreterFrameAddress) 676public TargetPointer GetFirstArgRegister(IPlatformAgnosticContext context) 687private void SetFirstArgRegister(IPlatformAgnosticContext context, TargetPointer value)
Contracts\StackWalk\FrameHandling\FrameIterator.cs (1)
76public void UpdateContextFromCurrentFrame(IPlatformAgnosticContext context)
Contracts\StackWalk\GC\GcScanner.cs (3)
37IPlatformAgnosticContext context, 305private TargetPointer GetCallerSP(IPlatformAgnosticContext context, ref TargetPointer? cached) 309IPlatformAgnosticContext callerContext = context.Clone();
Contracts\StackWalk\StackWalk_1.cs (32)
33IPlatformAgnosticContext Context, 44private class StackWalkData(IPlatformAgnosticContext context, StackWalkState state, FrameIterator frameIter, ThreadData threadData) 46public IPlatformAgnosticContext Context { get; set; } = context; 136IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 145private void SetupContext(IPlatformAgnosticContext context, FrameIterator frameIterator, StackWalkState state, ref bool isFirst, out bool matchedIsInterrupted, out bool matchedHasFaulted) 152IPlatformAgnosticContext tmpContext = context.Clone(); 172IPlatformAgnosticContext tmpContext = context.Clone(); 202internal static bool HasFaultedContext(IPlatformAgnosticContext context) 207IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 216IPlatformAgnosticContext context, 256private void SkipOwningInterpreterFrame(IPlatformAgnosticContext context, StackWalkState state, FrameIterator frameIterator) 275IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 817IPlatformAgnosticContext callerContext = handle.Context.Clone(); 873IPlatformAgnosticContext recoveredContext = RetrieveHijackedContext(handle.Context, hijackKind == HijackKind.UnhandledException); 1029IPlatformAgnosticContext parentContext = handle.Context.Clone(); 1041private IPlatformAgnosticContext RetrieveHijackedContext(IPlatformAgnosticContext ctx, bool isUnhandledException) 1049IPlatformAgnosticContext recovered = IPlatformAgnosticContext.GetContextForPlatform(_target); 1054private TargetPointer ComputeRedirectStubSlot(IPlatformAgnosticContext context) 1139IPlatformAgnosticContext callerContext = handle.Context.Clone(); 1187private TargetPointer ReadGenericContextStorage(IPlatformAgnosticContext context, GenericContextStorage storage) 1214static bool TryReadRegister(IPlatformAgnosticContext context, GenericContextStorage storage, out TargetNUInt value) 1243IPlatformAgnosticContext hijacked = RetrieveHijackedContext(handle.Context, hijackKind == HijackKind.UnhandledException); 1333IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 1358IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 1414private void FillContextFromThread(IPlatformAgnosticContext context, ThreadData threadData, uint flags)
Contracts\StackWalk\StackWalk_1.ExceptionHandling.cs (3)
49IPlatformAgnosticContext callerContext = handle.Context.Clone(); 73IPlatformAgnosticContext callerCallerContext = callerContext.Clone(); 202IPlatformAgnosticContext callerContext = handle.Context.Clone();
Microsoft.Diagnostics.DataContractReader.Legacy (28)
ClrDataFrame.cs (7)
932IPlatformAgnosticContext platformContext = IPlatformAgnosticContext.GetContextForPlatform(target); 948IPlatformAgnosticContext context, 992private static NativeVarLocation[] ResolveRegByRef(IPlatformAgnosticContext context, Target target, uint register, int pointerSize) 1004private static NativeVarLocation[] ResolveStack(IPlatformAgnosticContext context, Target target, uint baseRegister, int offset, int pointerSize, bool deref) 1013private static ulong ComputeStackAddress(IPlatformAgnosticContext context, Target target, uint baseRegister, int offset) 1036private static ulong ReadRegister(IPlatformAgnosticContext context, Target target, uint registerNumber)
ClrDataStackWalk.cs (1)
339uint platformContextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size;
Dbi\DacDbiImpl.cs (18)
996IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 1295IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 1761uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 1814IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 1831uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 1903uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 2042IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 2212IPlatformAgnosticContext stripped = IPlatformAgnosticContext.GetContextForPlatform(_target); 2588IPlatformAgnosticContext leafCtx = IPlatformAgnosticContext.GetContextForPlatform(_target); 2595IPlatformAgnosticContext givenCtx = IPlatformAgnosticContext.GetContextForPlatform(_target); 2625uint allFlags = IPlatformAgnosticContext.GetContextForPlatform(_target).AllContextFlags;
SOSDacImpl.cs (2)
2308IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target);