Unwinding Follow-up. Fix a bug in JitUnwindWindows where ... (#1238)
... in case of "Vector" unwind codes the remaining unwind codes could be corrupted. Nits.
This commit is contained in:
parent
da3fd3f71b
commit
3b70a28087
5 changed files with 101 additions and 73 deletions
|
@ -1,20 +1,18 @@
|
|||
using ARMeilleure.IntermediateRepresentation;
|
||||
|
||||
namespace ARMeilleure.CodeGen.Unwinding
|
||||
{
|
||||
struct UnwindPushEntry
|
||||
{
|
||||
public int Index { get; }
|
||||
public UnwindPseudoOp PseudoOp { get; }
|
||||
public int PrologOffset { get; }
|
||||
public int RegIndex { get; }
|
||||
public int StackOffsetOrAllocSize { get; }
|
||||
|
||||
public RegisterType Type { get; }
|
||||
|
||||
public int StreamEndOffset { get; }
|
||||
|
||||
public UnwindPushEntry(int index, RegisterType type, int streamEndOffset)
|
||||
public UnwindPushEntry(UnwindPseudoOp pseudoOp, int prologOffset, int regIndex = -1, int stackOffsetOrAllocSize = -1)
|
||||
{
|
||||
Index = index;
|
||||
Type = type;
|
||||
StreamEndOffset = streamEndOffset;
|
||||
PseudoOp = pseudoOp;
|
||||
PrologOffset = prologOffset;
|
||||
RegIndex = regIndex;
|
||||
StackOffsetOrAllocSize = stackOffsetOrAllocSize;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue