diff options
author | Tomas Rylek <trylek@microsoft.com> | 2017-09-18 22:16:12 +0300 |
---|---|---|
committer | Tomas Rylek <trylek@microsoft.com> | 2017-09-18 22:16:12 +0300 |
commit | 1847508ddfaa0c89a21f3d5be26bcafb71c3ba6a (patch) | |
tree | e3500ea1d79da5e0d891fc89e2e1f199ac4e9f6d /src/Native | |
parent | 5548fabcc371bc90ef4e55c450fd9dbd9530da44 (diff) |
Jan Vorlicek's fix for ARM build break
This change, produced by JanV, fixes the official ProjectN build break on ARM caused by GIT integration CS# 1674402. I have locally verified that the change indeed fixes the build break and I ran a small private ToF run on ARM to validate basic runtime functionality.
Thanks
Tomas
[tfs-changeset: 1674685]
Diffstat (limited to 'src/Native')
-rw-r--r-- | src/Native/Runtime/inc/rhbinder.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/Native/Runtime/inc/rhbinder.h b/src/Native/Runtime/inc/rhbinder.h index 49e39f6a7..060ee515b 100644 --- a/src/Native/Runtime/inc/rhbinder.h +++ b/src/Native/Runtime/inc/rhbinder.h @@ -632,17 +632,23 @@ enum PInvokeTransitionFrameFlags #pragma warning(disable:4200) // nonstandard extension used: zero-sized array in struct/union class Thread; #ifdef USE_PORTABLE_HELPERS -//the members of this structure are currently unused except m_pThread and exist only to allow compilation -//of StackFrameIterator their values are not currently being filled in and will require significant rework +//the members of this structure are currently unused except m_pThread and exist only to allow compilation +//of StackFrameIterator their values are not currently being filled in and will require significant rework //in order to satisfy the runtime requirements of StackFrameIterator struct PInvokeTransitionFrame { +#ifdef _TARGET_ARM_ + void* m_ChainPointer; // R11, used by OS to walk stack quickly +#endif void* m_RIP; void* m_FramePointer; Thread* m_pThread; // unused by stack crawler, this is so GetThread is only called once per method // can be an invalid pointer in universal transition cases (which never need to call GetThread) uint32_t m_dwFlags; // PInvokeTransitionFrameFlags - uint64_t m_PreservedRegs[]; +#ifdef _TARGET_AMD64_ + UInt32 m_dwAlignPad2; +#endif + size_t m_PreservedRegs[]; }; #else struct PInvokeTransitionFrame |