From 1d1f66bfbf74b9e9351dee14116715e290a49ecb Mon Sep 17 00:00:00 2001 From: Carol Eidt Date: Thu, 5 Apr 2018 16:01:35 -0700 Subject: [PATCH] Re-enable arg assert in scanArgRegTable This assert was formerly enabled only for the "full arg info case", i.e. when there was not a frame on x86. WIth PR #10782 the sense of the first condition was inadvertently changed. With PR #17363 the tracking of `argCnt` vs. `argHigh` was fixed so that the assert is correct for the "partial arg info" case. The first condition should be removed to make it cover the "full argo info case" as well (as before #10782). --- src/vm/eetwain.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/vm/eetwain.cpp b/src/vm/eetwain.cpp index 1fb332ecd42a..d740eee681e7 100644 --- a/src/vm/eetwain.cpp +++ b/src/vm/eetwain.cpp @@ -2658,9 +2658,8 @@ unsigned scanArgRegTableI(PTR_CBYTE table, } while (argOfs); - _ASSERTE(!hasPartialArgInfo || - isZero(argHigh) || - (argHigh == CONSTRUCT_ptrArgTP(1, (argCnt-1)))); + // At this point, either we have no more args, or the next arg is in the position corresponding to argCnt. + _ASSERTE(isZero(argHigh) || (argHigh == CONSTRUCT_ptrArgTP(1, (argCnt-1)))); if (hasPartialArgInfo) {