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

Side by Side Diff: src/compiler/instruction-scheduler.cc

Issue 1702423002: [turbofan] Further fixing ES6 tail call elimination in Turbofan. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@tco-turbo
Patch Set: Addressing comments Created 4 years, 9 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 | « src/compiler/instruction-codes.h ('k') | src/compiler/instruction-selector.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 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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/instruction-scheduler.h" 5 #include "src/compiler/instruction-scheduler.h"
6 6
7 #include "src/base/adapters.h" 7 #include "src/base/adapters.h"
8 #include "src/base/utils/random-number-generator.h" 8 #include "src/base/utils/random-number-generator.h"
9 9
10 namespace v8 { 10 namespace v8 {
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 // must not be reordered with instruction with side effects. 213 // must not be reordered with instruction with side effects.
214 return kIsLoadOperation; 214 return kIsLoadOperation;
215 215
216 case kArchPrepareCallCFunction: 216 case kArchPrepareCallCFunction:
217 case kArchPrepareTailCall: 217 case kArchPrepareTailCall:
218 case kArchCallCFunction: 218 case kArchCallCFunction:
219 case kArchCallCodeObject: 219 case kArchCallCodeObject:
220 case kArchCallJSFunction: 220 case kArchCallJSFunction:
221 return kHasSideEffect; 221 return kHasSideEffect;
222 222
223 case kArchTailCallCodeObjectFromJSFunction:
223 case kArchTailCallCodeObject: 224 case kArchTailCallCodeObject:
225 case kArchTailCallJSFunctionFromJSFunction:
224 case kArchTailCallJSFunction: 226 case kArchTailCallJSFunction:
225 return kHasSideEffect | kIsBlockTerminator; 227 return kHasSideEffect | kIsBlockTerminator;
226 228
227 case kArchDeoptimize: 229 case kArchDeoptimize:
228 case kArchJmp: 230 case kArchJmp:
229 case kArchLookupSwitch: 231 case kArchLookupSwitch:
230 case kArchTableSwitch: 232 case kArchTableSwitch:
231 case kArchRet: 233 case kArchRet:
232 case kArchThrowTerminator: 234 case kArchThrowTerminator:
233 return kIsBlockTerminator; 235 return kIsBlockTerminator;
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 } 308 }
307 } 309 }
308 310
309 node->set_total_latency(max_latency + node->latency()); 311 node->set_total_latency(max_latency + node->latency());
310 } 312 }
311 } 313 }
312 314
313 } // namespace compiler 315 } // namespace compiler
314 } // namespace internal 316 } // namespace internal
315 } // namespace v8 317 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/instruction-codes.h ('k') | src/compiler/instruction-selector.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698