72 references to RegMask
Microsoft.Diagnostics.DataContractReader.Contracts (72)
Contracts\StackWalk\Context\X86\GCInfoDecoding\GCArgTable.cs (21)
68private static RegMask ThreeBitEncodingToRegMask(byte val) => 710x0 => RegMask.EAX, 720x1 => RegMask.ECX, 730x2 => RegMask.EDX, 740x3 => RegMask.EBX, 750x4 => RegMask.ESP, 760x5 => RegMask.EBP, 770x6 => RegMask.ESI, 780x7 => RegMask.EDI, 82private static RegMask TwoBitEncodingToRegMask(byte val) => 850x0 => RegMask.EDI, 860x1 => RegMask.ESI, 870x2 => RegMask.EBX, 880x3 => RegMask.EBP, 234RegMask reg; 236reg = RegMask.EDI; 238reg = RegMask.ESI; 240reg = RegMask.EBX; 400AddNewTransition(new GcTransitionRegister((int)curOffs, RegMask.ESP, Action.PUSH)); 406AddNewTransition(new GcTransitionRegister((int)curOffs, RegMask.ESP, Action.PUSH, false, false, (int)pushCount)); 432AddNewTransition(new GcTransitionRegister((int)curOffs, RegMask.ESP, Action.POP, false, false, (int)popSize));
Contracts\StackWalk\Context\X86\GCInfoDecoding\GCInfo.cs (8)
58public RegMask SavedRegsMask { get; set; } = RegMask.NONE; 117RegMask savedRegs = RegMask.NONE; 122savedRegs |= RegMask.EDI; 127savedRegs |= RegMask.ESI; 132savedRegs |= RegMask.EBX; 137savedRegs |= RegMask.EBP;
Contracts\StackWalk\Context\X86\GCInfoDecoding\GCTransition.cs (14)
33public RegMask Register { get; set; } 37public CalleeSavedRegister(int codeOffset, RegMask reg) 69public RegMask Register { get; set; } 77public GcTransitionRegister(int codeOffset, RegMask reg, Action isLive, bool isThis = false, bool iptr = false, int pushCountOrPopSize = 1) 186public RegMask Register { get; set; } 189public CallRegister(RegMask reg, bool isByRef) 229RegMask reg = RegMask.EDI; 235RegMask reg = RegMask.ESI; 241RegMask reg = RegMask.EBX; 249RegMask reg = RegMask.EBP;
Contracts\StackWalk\Context\X86\X86Unwinder.cs (29)
39private static readonly RegMask[] registerOrder = 41RegMask.EBP, // last register to be pushed 42RegMask.EBX, 43RegMask.ESI, 44RegMask.EDI, // first register to be pushed 199foreach (RegMask regMask in registerOrder) 201if (regMask == RegMask.EBP) 279foreach (RegMask regMask in registerOrder) 288if (_updateAllRegs || regMask == RegMask.EBP) 332foreach (RegMask regMask in registerOrder) 367RegMask regsMask = RegMask.NONE; 371foreach (RegMask regMask in registerOrder) 400if (regsMask.HasFlag(RegMask.EBP)) 408if (regsMask.HasFlag(RegMask.EBX)) 413if (regsMask.HasFlag(RegMask.ESI)) 418if (regsMask.HasFlag(RegMask.EDI)) 490foreach (RegMask regMask in registerOrder.Reverse()) 492if (regMask == RegMask.EBP) continue; 573foreach (RegMask regMask in registerOrder.Reverse()) 575if (regMask == RegMask.EBP) continue; 862private static void SetRegValue(ref X86Context context, RegMask regMask, TargetPointer value) 867case RegMask.EAX: 870case RegMask.EBX: 873case RegMask.ECX: 876case RegMask.EDX: 879case RegMask.EBP: 882case RegMask.ESI: 885case RegMask.EDI: