1 implementation of IPlatformAgnosticContext
Microsoft.Diagnostics.DataContractReader.Contracts (1)
Contracts\StackWalk\Context\ContextHolder.cs (1)
9public sealed class ContextHolder<T> : IPlatformAgnosticContext, IEquatable<ContextHolder<T>>
108 references to IPlatformAgnosticContext
Microsoft.Diagnostics.DataContractReader.Contracts (62)
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)
143public void UpdateContextFromFrame(Data.Frame frame, IPlatformAgnosticContext context) 250IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 259IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 359private IPlatformFrameHandler GetFrameHandler(IPlatformAgnosticContext context) 476IPlatformAgnosticContext context, 506public void InterpreterVirtualUnwind(IPlatformAgnosticContext context) 521private bool VirtualUnwindInterpreterCallFrame(IPlatformAgnosticContext context) 540private void ApplyInterpreterFrameTransition(IPlatformAgnosticContext context, TargetPointer interpreterFrameAddress) 546private TargetPointer GetFirstArgRegister(IPlatformAgnosticContext context) 557private void SetFirstArgRegister(IPlatformAgnosticContext context, TargetPointer value)
Contracts\StackWalk\FrameHandling\FrameIterator.cs (1)
63public void UpdateContextFromCurrentFrame(IPlatformAgnosticContext context)
Contracts\StackWalk\GC\GcScanner.cs (3)
37IPlatformAgnosticContext context, 383private TargetPointer GetCallerSP(IPlatformAgnosticContext context, ref TargetPointer? cached) 387IPlatformAgnosticContext callerContext = context.Clone();
Contracts\StackWalk\StackWalk_1.cs (31)
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, 266IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 816IPlatformAgnosticContext callerContext = handle.Context.Clone(); 872IPlatformAgnosticContext recoveredContext = RetrieveHijackedContext(handle.Context, hijackKind == HijackKind.UnhandledException); 1008IPlatformAgnosticContext parentContext = handle.Context.Clone(); 1020private IPlatformAgnosticContext RetrieveHijackedContext(IPlatformAgnosticContext ctx, bool isUnhandledException) 1028IPlatformAgnosticContext recovered = IPlatformAgnosticContext.GetContextForPlatform(_target); 1033private TargetPointer ComputeRedirectStubSlot(IPlatformAgnosticContext context) 1118IPlatformAgnosticContext callerContext = handle.Context.Clone(); 1166private TargetPointer ReadGenericContextStorage(IPlatformAgnosticContext context, GenericContextStorage storage) 1193static bool TryReadRegister(IPlatformAgnosticContext context, GenericContextStorage storage, out TargetNUInt value) 1222IPlatformAgnosticContext hijacked = RetrieveHijackedContext(handle.Context, hijackKind == HijackKind.UnhandledException); 1312IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 1337IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 1393private 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 (46)
ClrDataFrame.cs (11)
81IPlatformAgnosticContext contextStruct = IPlatformAgnosticContext.GetContextForPlatform(_target); 82IPlatformAgnosticContext localContextStruct = IPlatformAgnosticContext.GetContextForPlatform(_target); 898IPlatformAgnosticContext platformContext = IPlatformAgnosticContext.GetContextForPlatform(target); 914IPlatformAgnosticContext context, 958private static NativeVarLocation[] ResolveRegByRef(IPlatformAgnosticContext context, Target target, uint register, int pointerSize) 970private static NativeVarLocation[] ResolveStack(IPlatformAgnosticContext context, Target target, uint baseRegister, int offset, int pointerSize, bool deref) 979private static ulong ComputeStackAddress(IPlatformAgnosticContext context, Target target, uint baseRegister, int offset) 1002private static ulong ReadRegister(IPlatformAgnosticContext context, Target target, uint registerNumber)
ClrDataStackWalk.cs (5)
116IPlatformAgnosticContext contextStruct = IPlatformAgnosticContext.GetContextForPlatform(_target); 117IPlatformAgnosticContext localContextStruct = IPlatformAgnosticContext.GetContextForPlatform(_target); 326uint platformContextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size;
Dbi\DacDbiImpl.cs (28)
945IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 1236IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target); 1690uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 1712IPlatformAgnosticContext cdacCtx = IPlatformAgnosticContext.GetContextForPlatform(_target); 1713IPlatformAgnosticContext dacCtx = IPlatformAgnosticContext.GetContextForPlatform(_target); 1742IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 1759uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 1829uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 1965IPlatformAgnosticContext ctx = IPlatformAgnosticContext.GetContextForPlatform(_target); 2063uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 2134IPlatformAgnosticContext stripped = IPlatformAgnosticContext.GetContextForPlatform(_target); 2506IPlatformAgnosticContext leafCtx = IPlatformAgnosticContext.GetContextForPlatform(_target); 2513IPlatformAgnosticContext givenCtx = IPlatformAgnosticContext.GetContextForPlatform(_target); 2542uint allFlags = IPlatformAgnosticContext.GetContextForPlatform(_target).AllContextFlags; 2555uint contextSize = IPlatformAgnosticContext.GetContextForPlatform(_target).Size; 2564IPlatformAgnosticContext contextStruct = IPlatformAgnosticContext.GetContextForPlatform(_target); 2565IPlatformAgnosticContext localContextStruct = IPlatformAgnosticContext.GetContextForPlatform(_target);
SOSDacImpl.cs (2)
2209IPlatformAgnosticContext context = IPlatformAgnosticContext.GetContextForPlatform(_target);