OLD | NEW |
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/crankshaft/lithium.h" | 5 #include "src/crankshaft/lithium.h" |
6 | 6 |
7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" |
8 | 8 |
9 #if V8_TARGET_ARCH_IA32 | 9 #if V8_TARGET_ARCH_IA32 |
10 #include "src/crankshaft/ia32/lithium-ia32.h" // NOLINT | 10 #include "src/crankshaft/ia32/lithium-ia32.h" // NOLINT |
(...skipping 443 matching lines...) Loading... |
454 if (generator.GenerateCode()) { | 454 if (generator.GenerateCode()) { |
455 generator.CheckEnvironmentUsage(); | 455 generator.CheckEnvironmentUsage(); |
456 CodeGenerator::MakeCodePrologue(info(), "optimized"); | 456 CodeGenerator::MakeCodePrologue(info(), "optimized"); |
457 Handle<Code> code = CodeGenerator::MakeCodeEpilogue(&assembler, info()); | 457 Handle<Code> code = CodeGenerator::MakeCodeEpilogue(&assembler, info()); |
458 generator.FinishCode(code); | 458 generator.FinishCode(code); |
459 CommitDependencies(code); | 459 CommitDependencies(code); |
460 code->set_is_crankshafted(true); | 460 code->set_is_crankshafted(true); |
461 void* jit_handler_data = | 461 void* jit_handler_data = |
462 assembler.positions_recorder()->DetachJITHandlerData(); | 462 assembler.positions_recorder()->DetachJITHandlerData(); |
463 LOG_CODE_EVENT(info()->isolate(), | 463 LOG_CODE_EVENT(info()->isolate(), |
464 CodeEndLinePosInfoRecordEvent(*code, jit_handler_data)); | 464 CodeEndLinePosInfoRecordEvent(AbstractCode::cast(*code), |
| 465 jit_handler_data)); |
465 | 466 |
466 CodeGenerator::PrintCode(code, info()); | 467 CodeGenerator::PrintCode(code, info()); |
467 DCHECK(!(info()->isolate()->serializer_enabled() && | 468 DCHECK(!(info()->isolate()->serializer_enabled() && |
468 info()->GetMustNotHaveEagerFrame() && | 469 info()->GetMustNotHaveEagerFrame() && |
469 generator.NeedsEagerFrame())); | 470 generator.NeedsEagerFrame())); |
470 return code; | 471 return code; |
471 } | 472 } |
472 assembler.AbortedCodeGeneration(); | 473 assembler.AbortedCodeGeneration(); |
473 return Handle<Code>::null(); | 474 return Handle<Code>::null(); |
474 } | 475 } |
(...skipping 168 matching lines...) Loading... |
643 | 644 |
644 LPhase::~LPhase() { | 645 LPhase::~LPhase() { |
645 if (ShouldProduceTraceOutput()) { | 646 if (ShouldProduceTraceOutput()) { |
646 isolate()->GetHTracer()->TraceLithium(name(), chunk_); | 647 isolate()->GetHTracer()->TraceLithium(name(), chunk_); |
647 } | 648 } |
648 } | 649 } |
649 | 650 |
650 | 651 |
651 } // namespace internal | 652 } // namespace internal |
652 } // namespace v8 | 653 } // namespace v8 |
OLD | NEW |