Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Lapounov <antonl@microsoft.com>2016-01-20 04:47:59 +0300
committerAnton Lapounov <antonl@microsoft.com>2016-01-20 04:47:59 +0300
commit9110707510ef360f9e93feeacb1de83d7f3d3b8f (patch)
tree5837f8694e6ea3edebcfcad4252ad0e59944b894 /src/Native/Runtime/ICodeManager.h
parentedbd36cfb8493001eeb82d36a21830cae64954c9 (diff)
Add GS cookie offset to GC info format.
The old format is binary compatible with the new one, which means programs compiled with the old tool chain should work with the new runtime. Since we had no free bits left in the first 4 bytes of the header (at least on x64), I repurposed the dynamicAlign bit to indicate there is extra data about the frame. At present that extra data consist of dynamic stack alignment and GS cookie offset (both of which are optional). I reserved three bits to allow future extensions of this extra data section. The gsCookieOffset field is inserted after the epilogCount field to improve memory layout. CR: petersol, jkotas [tfs-changeset: 1566536]
Diffstat (limited to 'src/Native/Runtime/ICodeManager.h')
-rw-r--r--src/Native/Runtime/ICodeManager.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Native/Runtime/ICodeManager.h b/src/Native/Runtime/ICodeManager.h
index 98878df11..45fb761c5 100644
--- a/src/Native/Runtime/ICodeManager.h
+++ b/src/Native/Runtime/ICodeManager.h
@@ -39,8 +39,8 @@ enum GCRefKind : unsigned char
//
class MethodInfo
{
- TADDR dummyPtrs[6];
- Int32 dummyInts[6];
+ TADDR dummyPtrs[5];
+ Int32 dummyInts[8];
};
class EHEnumState