[arm64] Fix AssertStackConsistency.

The implementation temporarily modifies jssp to avoid needing a scratch
register, then restores it afterwards. However, the exception path
wasn't properly restoring the value.

With this patch, failures in this part of AssertStackConsistency get
reported properly (with backtrace and a BailoutReason).

BUG=

Review URL: https://codereview.chromium.org/1556993004

Cr-Commit-Position: refs/heads/master@{#33135}
This commit is contained in:
jacob.bramley 2016-01-06 01:43:26 -08:00 committed by Commit bot
parent b784f25656
commit f7c7cb8fe4

View File

@ -1343,6 +1343,8 @@ void MacroAssembler::AssertStackConsistency() {
// Avoid generating AssertStackConsistency checks for the Push in Abort.
{ DontEmitDebugCodeScope dont_emit_debug_code_scope(this);
// Restore StackPointer().
sub(StackPointer(), csp, StackPointer());
Abort(kTheCurrentStackPointerIsBelowCsp);
}