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

Side by Side Diff: src/compiler.cc

Issue 527963002: Implement loads and calls from 'super' (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: CR feedback 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 | « no previous file | src/full-codegen.cc » ('j') | src/ia32/full-codegen-ia32.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/compiler.h" 7 #include "src/compiler.h"
8 8
9 #include "src/bootstrapper.h" 9 #include "src/bootstrapper.h"
10 #include "src/codegen.h" 10 #include "src/codegen.h"
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after
399 } 399 }
400 } 400 }
401 401
402 DCHECK(info()->shared_info()->has_deoptimization_support()); 402 DCHECK(info()->shared_info()->has_deoptimization_support());
403 403
404 // Check the whitelist for TurboFan. 404 // Check the whitelist for TurboFan.
405 if (info()->closure()->PassesFilter(FLAG_turbo_filter) && 405 if (info()->closure()->PassesFilter(FLAG_turbo_filter) &&
406 // TODO(turbofan): Make try-catch work and remove this bailout. 406 // TODO(turbofan): Make try-catch work and remove this bailout.
407 info()->function()->dont_optimize_reason() != kTryCatchStatement && 407 info()->function()->dont_optimize_reason() != kTryCatchStatement &&
408 info()->function()->dont_optimize_reason() != kTryFinallyStatement && 408 info()->function()->dont_optimize_reason() != kTryFinallyStatement &&
409 // TODO(turbofan): Make super work and remove this bailout.
410 info()->function()->dont_optimize_reason() != kSuperReference &&
409 // TODO(turbofan): Make OSR work and remove this bailout. 411 // TODO(turbofan): Make OSR work and remove this bailout.
410 !info()->is_osr()) { 412 !info()->is_osr()) {
411 compiler::Pipeline pipeline(info()); 413 compiler::Pipeline pipeline(info());
412 pipeline.GenerateCode(); 414 pipeline.GenerateCode();
413 if (!info()->code().is_null()) { 415 if (!info()->code().is_null()) {
414 if (FLAG_turbo_deoptimization) { 416 if (FLAG_turbo_deoptimization) {
415 info()->context()->native_context()->AddOptimizedCode(*info()->code()); 417 info()->context()->native_context()->AddOptimizedCode(*info()->code());
416 } 418 }
417 return SetLastStatus(SUCCEEDED); 419 return SetLastStatus(SUCCEEDED);
418 } 420 }
(...skipping 960 matching lines...) Expand 10 before | Expand all | Expand 10 after
1379 AllowHandleDereference allow_deref; 1381 AllowHandleDereference allow_deref;
1380 bool tracing_on = info()->IsStub() 1382 bool tracing_on = info()->IsStub()
1381 ? FLAG_trace_hydrogen_stubs 1383 ? FLAG_trace_hydrogen_stubs
1382 : (FLAG_trace_hydrogen && 1384 : (FLAG_trace_hydrogen &&
1383 info()->closure()->PassesFilter(FLAG_trace_hydrogen_filter)); 1385 info()->closure()->PassesFilter(FLAG_trace_hydrogen_filter));
1384 return (tracing_on && 1386 return (tracing_on &&
1385 base::OS::StrChr(const_cast<char*>(FLAG_trace_phase), name_[0]) != NULL); 1387 base::OS::StrChr(const_cast<char*>(FLAG_trace_phase), name_[0]) != NULL);
1386 } 1388 }
1387 1389
1388 } } // namespace v8::internal 1390 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « no previous file | src/full-codegen.cc » ('j') | src/ia32/full-codegen-ia32.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698