Pass frame construct events to unwind info writer for JSFunction calls

Unwinding info keeps track of the frame pointer by tracking the changes
to the stack if a frame wasn't constructed. Once the frame is constructed
we no longer need to keep track of this. The code generator informs
the unwinding info writer about frame constructions. This information
was not passed for JSFunctions calls. This cl fixes it to pass also
for JSFunctions.

Bug: 
Change-Id: Ia39980039a5f063435fa3b3ab145256909011606
Reviewed-on: https://chromium-review.googlesource.com/718596
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Commit-Queue: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#48537}
This commit is contained in:
Mythri 2017-10-13 11:58:51 +01:00 committed by Commit Bot
parent 6af4cb3cc2
commit 52d34c23f3

View File

@ -3044,9 +3044,7 @@ void CodeGenerator::AssembleConstructFrame() {
__ StubPrologue(info()->GetOutputStackFrameType());
}
if (!descriptor->IsJSFunctionCall()) {
unwinding_info_writer_.MarkFrameConstructed(pc_base);
}
unwinding_info_writer_.MarkFrameConstructed(pc_base);
}
int shrink_slots =
frame()->GetTotalFrameSlotCount() - descriptor->CalculateFixedFrameSize();