diff options
author | Swaroop Sridhar <Swaroop.Sridhar@microsoft.com> | 2016-04-20 08:55:06 -0700 |
---|---|---|
committer | Swaroop Sridhar <Swaroop.Sridhar@microsoft.com> | 2016-04-20 08:55:06 -0700 |
commit | ce80d93ba30edceb56fef854a5e9c62bd84357d3 (patch) | |
tree | ca1d63c5777811075a58d0859e46c07808922eac /src/gcinfo | |
parent | 24adf2bead2a19665c86a568af03259697ab7565 (diff) | |
parent | 8bfab0ac3a0d2ae48b39f28bde2b7f2a8ee718e4 (diff) | |
download | coreclr-ce80d93ba30edceb56fef854a5e9c62bd84357d3.tar.gz coreclr-ce80d93ba30edceb56fef854a5e9c62bd84357d3.tar.bz2 coreclr-ce80d93ba30edceb56fef854a5e9c62bd84357d3.zip |
Merge pull request #4377 from swaroop-sridhar/aagc1
ARM64: Fix GC encoding settings
Diffstat (limited to 'src/gcinfo')
-rw-r--r-- | src/gcinfo/gcinfoencoder.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gcinfo/gcinfoencoder.cpp b/src/gcinfo/gcinfoencoder.cpp index 0f34a3bd4c..e6359c86c8 100644 --- a/src/gcinfo/gcinfoencoder.cpp +++ b/src/gcinfo/gcinfoencoder.cpp @@ -1079,6 +1079,7 @@ void GcInfoEncoder::Build() } _ASSERTE( m_CodeLength > 0 ); + _ASSERTE(DENORMALIZE_CODE_LENGTH(NORMALIZE_CODE_LENGTH(m_CodeLength)) == m_CodeLength); GCINFO_WRITE_VARL_U(m_Info1, NORMALIZE_CODE_LENGTH(m_CodeLength), CODE_LENGTH_ENCBASE, CodeLengthSize); if(hasGSCookie) @@ -1216,6 +1217,7 @@ void GcInfoEncoder::Build() // (after, of course, adding the size of the call instruction to get the return PC). callSite += m_pCallSiteSizes[callSiteIndex] - 1; + _ASSERTE(DENORMALIZE_CODE_OFFSET(NORMALIZE_CODE_OFFSET(callSite)) == callSite); UINT32 normOffset = NORMALIZE_CODE_OFFSET(callSite); BOOL keepIt = TRUE; @@ -2032,7 +2034,7 @@ void GcInfoEncoder::Build() if(!IsEssential(pClause)) continue; - + UINT32 normStartOffset = NORMALIZE_CODE_OFFSET(pClause->TryStartPC); UINT32 normStopOffset = NORMALIZE_CODE_OFFSET(pClause->TryEndPC); _ASSERTE(normStopOffset > normStartOffset); |