Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1129)

Unified Diff: src/frames.cc

Issue 1740753002: [Interpreter] Adds translation of optimized frame to bytecode offset in FrameSummary (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Reverts to pathcset 4 and skips a failing cctest. Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | test/cctest/cctest.status » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/frames.cc
diff --git a/src/frames.cc b/src/frames.cc
index ed897f129d1d5cd02287db72754fac8592cb78c5..643ee69ce8fa3b6ba970d387574683f417707a95 100644
--- a/src/frames.cc
+++ b/src/frames.cc
@@ -955,7 +955,7 @@ void OptimizedFrame::Summarize(List<FrameSummary>* frames) {
if (frame_opcode == Translation::JS_FRAME ||
frame_opcode == Translation::INTERPRETED_FRAME) {
jsframe_count--;
- BailoutId const ast_id = BailoutId(it.Next());
+ BailoutId const bailout_id = BailoutId(it.Next());
SharedFunctionInfo* const shared_info =
SharedFunctionInfo::cast(literal_array->get(it.Next()));
it.Next(); // Skip height.
@@ -1002,14 +1002,12 @@ void OptimizedFrame::Summarize(List<FrameSummary>* frames) {
DeoptimizationOutputData* const output_data =
DeoptimizationOutputData::cast(code->deoptimization_data());
unsigned const entry =
- Deoptimizer::GetOutputInfo(output_data, ast_id, shared_info);
+ Deoptimizer::GetOutputInfo(output_data, bailout_id, shared_info);
code_offset = FullCodeGenerator::PcField::decode(entry);
abstract_code = AbstractCode::cast(code);
} else {
- // TODO(rmcilroy): Modify FrameSummary to enable us to summarize
- // based on the BytecodeArray and bytecode offset.
DCHECK_EQ(frame_opcode, Translation::INTERPRETED_FRAME);
- code_offset = 0;
+ code_offset = bailout_id.ToInt();
abstract_code = AbstractCode::cast(shared_info->bytecode_array());
}
FrameSummary summary(receiver, function, abstract_code, code_offset,
« no previous file with comments | « no previous file | test/cctest/cctest.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698