4 writes to Context
Microsoft.Diagnostics.DataContractReader.Contracts (4)
Contracts\StackWalk\Context\ContextHolder.cs (4)
34Span<T> structSpan = new(ref Context); 47Span<T> structSpan = MemoryMarshal.CreateSpan(ref Context, 1); 51public IPlatformAgnosticContext Clone() => new ContextHolder<T>() { Context = Context }; 52public void Clear() => Context = default;
52 references to Context
Microsoft.Diagnostics.DataContractReader.Contracts (52)
Contracts\StackWalk\Context\ContextHolder.cs (22)
14public uint Size => Context.Size; 15public uint FullContextFlags => Context.FullContextFlags; 16public uint AllContextFlags => Context.AllContextFlags; 18public int StackPointerRegister => Context.StackPointerRegister; 20public TargetPointer StackPointer { get => Context.StackPointer; set => Context.StackPointer = value; } 21public TargetPointer InstructionPointer { get => Context.InstructionPointer; set => Context.InstructionPointer = value; } 22public TargetPointer FramePointer { get => Context.FramePointer; set => Context.FramePointer = value; } 24public uint RawContextFlags { get => Context.RawContextFlags; set => Context.RawContextFlags = value; } 51public IPlatformAgnosticContext Clone() => new ContextHolder<T>() { Context = Context }; 53public void Unwind(Target target) => Context.Unwind(target); 55public bool TrySetRegister(string fieldName, TargetNUInt value) => Context.TrySetRegister(fieldName, value); 56public bool TryReadRegister(string fieldName, out TargetNUInt value) => Context.TryReadRegister(fieldName, out value); 57public bool TrySetRegister(int number, TargetNUInt value) => Context.TrySetRegister(number, value); 58public bool TryReadRegister(int number, out TargetNUInt value) => Context.TryReadRegister(number, out value); 67return Context.Equals(other.Context); 75public override int GetHashCode() => Context.GetHashCode(); 77public override string ToString() => Context.ToString() ?? string.Empty;
Contracts\StackWalk\FrameHandling\AMD64FrameHandler.cs (3)
23_holder.Context.Rcx = next.Address.Value; 27_holder.Context.Rdi = next.Address.Value; 59_holder.Context.ContextFlags &= ~(uint)(ContextFlagsValues.CONTEXT_XSTATE & ContextFlagsValues.CONTEXT_AREA_MASK);
Contracts\StackWalk\FrameHandling\ARM64FrameHandler.cs (2)
23_holder.Context.X0 = next.Address.Value; 49_holder.Context.ContextFlags &= ~(uint)(ContextFlagsValues.CONTEXT_XSTATE & ContextFlagsValues.CONTEXT_AREA_MASK);
Contracts\StackWalk\FrameHandling\ARMFrameHandler.cs (1)
45_holder.Context.R9 = (uint)spAfterProlog;
Contracts\StackWalk\FrameHandling\LoongArch64FrameHandler.cs (1)
37_holder.Context.ContextFlags &= ~CONTEXT_UNWOUND_TO_CALL;
Contracts\StackWalk\FrameHandling\RISCV64FrameHandler.cs (1)
37_holder.Context.ContextFlags &= ~CONTEXT_UNWOUND_TO_CALL;
Contracts\StackWalk\FrameHandling\X86FrameHandler.cs (22)
20_context.Context.Esp = (uint)frame.HijackArgsPtr + hijackArgsSize; 27_context.Context.Eip = (uint)frame.ReturnAddress; 34_context.Context.Esp = (uint)(frame.Address + tailCallFrameSize); 46_context.Context.ContextFlags &= ~(uint)(ContextFlagsValues.CONTEXT_XSTATE & ContextFlagsValues.CONTEXT_AREA_MASK); 63_context.Context.Edi = evalContext.Context.Edi; 64_context.Context.Esi = evalContext.Context.Esi; 65_context.Context.Ebx = evalContext.Context.Ebx; 66_context.Context.Edx = evalContext.Context.Edx; 67_context.Context.Ecx = evalContext.Context.Ecx; 68_context.Context.Eax = evalContext.Context.Eax; 69_context.Context.Ebp = evalContext.Context.Ebp; 70_context.Context.Eip = evalContext.Context.Eip; 71_context.Context.Esp = evalContext.Context.Esp;