summaryrefslogtreecommitdiff
path: root/src/gc/gcpriv.h
diff options
context:
space:
mode:
authorSean Gillespie <sean@swgillespie.me>2017-03-30 10:11:28 -0700
committerGitHub <noreply@github.com>2017-03-30 10:11:28 -0700
commit11f2dbd1d8376358727a686126024984b01e3383 (patch)
tree7a6c1d63a2c6497d766d246d54ef1f041460cdda /src/gc/gcpriv.h
parent44d4a46497a3a3e0881793c998f392a18dfe3a91 (diff)
downloadcoreclr-11f2dbd1d8376358727a686126024984b01e3383.tar.gz
coreclr-11f2dbd1d8376358727a686126024984b01e3383.tar.bz2
coreclr-11f2dbd1d8376358727a686126024984b01e3383.zip
Fix an issue where the DAC and GC versions of the heap_segment data structure did not agree on the location of the heap field (#10576)
Diffstat (limited to 'src/gc/gcpriv.h')
-rw-r--r--src/gc/gcpriv.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gc/gcpriv.h b/src/gc/gcpriv.h
index 92868bbbbe..7bd6883271 100644
--- a/src/gc/gcpriv.h
+++ b/src/gc/gcpriv.h
@@ -4171,12 +4171,11 @@ public:
size_t flags;
PTR_heap_segment next;
uint8_t* background_allocated;
- uint8_t* plan_allocated;
- uint8_t* saved_bg_allocated;
-
#ifdef MULTIPLE_HEAPS
gc_heap* heap;
#endif //MULTIPLE_HEAPS
+ uint8_t* plan_allocated;
+ uint8_t* saved_bg_allocated;
#ifdef _MSC_VER
// Disable this warning - we intentionally want __declspec(align()) to insert padding for us
@@ -4196,6 +4195,9 @@ static_assert(offsetof(dac_heap_segment, mem) == offsetof(heap_segment, mem), "D
static_assert(offsetof(dac_heap_segment, flags) == offsetof(heap_segment, flags), "DAC heap segment layout mismatch");
static_assert(offsetof(dac_heap_segment, next) == offsetof(heap_segment, next), "DAC heap segment layout mismatch");
static_assert(offsetof(dac_heap_segment, background_allocated) == offsetof(heap_segment, background_allocated), "DAC heap segment layout mismatch");
+#ifdef MULTIPLE_HEAPS
+static_assert(offsetof(dac_heap_segment, heap) == offsetof(heap_segment, heap), "DAC heap segment layout mismatch");
+#endif // MULTIPLE_HEAPS
inline
uint8_t*& heap_segment_reserved (heap_segment* inst)