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

Side by Side Diff: src/compiler/ast-graph-builder.cc

Issue 515723004: Deoptimize context value in Turbofan (and Crankshaft). (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Fix tests. Created 6 years, 3 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/arm64/lithium-arm64.cc ('k') | src/compiler/common-operator.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/compiler/ast-graph-builder.h" 5 #include "src/compiler/ast-graph-builder.h"
6 6
7 #include "src/compiler.h" 7 #include "src/compiler.h"
8 #include "src/compiler/control-builders.h" 8 #include "src/compiler/control-builders.h"
9 #include "src/compiler/machine-operator.h" 9 #include "src/compiler/machine-operator.h"
10 #include "src/compiler/node-properties.h" 10 #include "src/compiler/node-properties.h"
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 218
219 219
220 Node* AstGraphBuilder::Environment::Checkpoint(BailoutId ast_id) { 220 Node* AstGraphBuilder::Environment::Checkpoint(BailoutId ast_id) {
221 UpdateStateValues(&parameters_node_, 0, parameters_count()); 221 UpdateStateValues(&parameters_node_, 0, parameters_count());
222 UpdateStateValues(&locals_node_, parameters_count(), locals_count()); 222 UpdateStateValues(&locals_node_, parameters_count(), locals_count());
223 UpdateStateValues(&stack_node_, parameters_count() + locals_count(), 223 UpdateStateValues(&stack_node_, parameters_count() + locals_count(),
224 stack_height()); 224 stack_height());
225 225
226 Operator* op = common()->FrameState(ast_id); 226 Operator* op = common()->FrameState(ast_id);
227 227
228 return graph()->NewNode(op, parameters_node_, locals_node_, stack_node_); 228 return graph()->NewNode(op, parameters_node_, locals_node_, stack_node_,
229 GetContext());
229 } 230 }
230 231
231 232
232 AstGraphBuilder::AstContext::AstContext(AstGraphBuilder* own, 233 AstGraphBuilder::AstContext::AstContext(AstGraphBuilder* own,
233 Expression::Context kind) 234 Expression::Context kind)
234 : kind_(kind), owner_(own), outer_(own->ast_context()) { 235 : kind_(kind), owner_(own), outer_(own->ast_context()) {
235 owner()->set_ast_context(this); // Push. 236 owner()->set_ast_context(this); // Push.
236 #ifdef DEBUG 237 #ifdef DEBUG
237 original_height_ = environment()->stack_height(); 238 original_height_ = environment()->stack_height();
238 #endif 239 #endif
(...skipping 1799 matching lines...) Expand 10 before | Expand all | Expand 10 after
2038 2039
2039 // Continue with the original environment. 2040 // Continue with the original environment.
2040 set_environment(continuation_env); 2041 set_environment(continuation_env);
2041 NewNode(common()->Continuation()); 2042 NewNode(common()->Continuation());
2042 } 2043 }
2043 } 2044 }
2044 2045
2045 } 2046 }
2046 } 2047 }
2047 } // namespace v8::internal::compiler 2048 } // namespace v8::internal::compiler
OLDNEW
« no previous file with comments | « src/arm64/lithium-arm64.cc ('k') | src/compiler/common-operator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698