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

Side by Side Diff: src/compiler/control-builders.cc

Issue 2174313002: [turbofan] Fix loop exit rename for return/throw. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 5 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/control-builders.h" 5 #include "src/compiler/control-builders.h"
6 6
7 namespace v8 { 7 namespace v8 {
8 namespace internal { 8 namespace internal {
9 namespace compiler { 9 namespace compiler {
10 10
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 control_if.End(); 84 control_if.End();
85 } 85 }
86 86
87 void LoopBuilder::ExitLoop(Node** extra_value_to_rename) { 87 void LoopBuilder::ExitLoop(Node** extra_value_to_rename) {
88 if (extra_value_to_rename) { 88 if (extra_value_to_rename) {
89 environment()->Push(*extra_value_to_rename); 89 environment()->Push(*extra_value_to_rename);
90 } 90 }
91 environment()->PrepareForLoopExit(loop_environment_->GetControlDependency(), 91 environment()->PrepareForLoopExit(loop_environment_->GetControlDependency(),
92 assigned_); 92 assigned_);
93 if (extra_value_to_rename) { 93 if (extra_value_to_rename) {
94 environment()->Pop(); 94 *extra_value_to_rename = environment()->Pop();
95 } 95 }
96 } 96 }
97 97
98 void SwitchBuilder::BeginSwitch() { 98 void SwitchBuilder::BeginSwitch() {
99 body_environment_ = environment()->CopyAsUnreachable(); 99 body_environment_ = environment()->CopyAsUnreachable();
100 label_environment_ = environment()->CopyAsUnreachable(); 100 label_environment_ = environment()->CopyAsUnreachable();
101 break_environment_ = environment()->CopyAsUnreachable(); 101 break_environment_ = environment()->CopyAsUnreachable();
102 } 102 }
103 103
104 104
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 } 235 }
236 236
237 237
238 void TryFinallyBuilder::EndFinally() { 238 void TryFinallyBuilder::EndFinally() {
239 // Nothing to be done here. 239 // Nothing to be done here.
240 } 240 }
241 241
242 } // namespace compiler 242 } // namespace compiler
243 } // namespace internal 243 } // namespace internal
244 } // namespace v8 244 } // namespace v8
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698