| OLD | NEW |
| 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/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
| 6 | 6 |
| 7 #include "src/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" |
| 8 #include "src/compiler/linkage.h" | 8 #include "src/compiler/linkage.h" |
| 9 #include "src/compiler/pipeline.h" | 9 #include "src/compiler/pipeline.h" |
| 10 | 10 |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 | 100 |
| 101 | 101 |
| 102 void CodeGenerator::AssembleInstruction(Instruction* instr) { | 102 void CodeGenerator::AssembleInstruction(Instruction* instr) { |
| 103 if (instr->IsBlockStart()) { | 103 if (instr->IsBlockStart()) { |
| 104 // Bind a label for a block start and handle parallel moves. | 104 // Bind a label for a block start and handle parallel moves. |
| 105 BlockStartInstruction* block_start = BlockStartInstruction::cast(instr); | 105 BlockStartInstruction* block_start = BlockStartInstruction::cast(instr); |
| 106 current_block_ = block_start->rpo_number(); | 106 current_block_ = block_start->rpo_number(); |
| 107 if (FLAG_code_comments) { | 107 if (FLAG_code_comments) { |
| 108 // TODO(titzer): these code comments are a giant memory leak. | 108 // TODO(titzer): these code comments are a giant memory leak. |
| 109 Vector<char> buffer = Vector<char>::New(32); | 109 Vector<char> buffer = Vector<char>::New(32); |
| 110 // TODO(dcarney): should not be rpo number there | 110 SNPrintF(buffer, "-- B%d start --", block_start->id().ToInt()); |
| 111 SNPrintF(buffer, "-- B%d (rpo) start --", current_block_.ToInt()); | |
| 112 masm()->RecordComment(buffer.start()); | 111 masm()->RecordComment(buffer.start()); |
| 113 } | 112 } |
| 114 masm()->bind(block_start->label()); | 113 masm()->bind(block_start->label()); |
| 115 } | 114 } |
| 116 if (instr->IsGapMoves()) { | 115 if (instr->IsGapMoves()) { |
| 117 // Handle parallel moves associated with the gap instruction. | 116 // Handle parallel moves associated with the gap instruction. |
| 118 AssembleGap(GapInstruction::cast(instr)); | 117 AssembleGap(GapInstruction::cast(instr)); |
| 119 } else if (instr->IsSourcePosition()) { | 118 } else if (instr->IsSourcePosition()) { |
| 120 AssembleSourcePosition(SourcePositionInstruction::cast(instr)); | 119 AssembleSourcePosition(SourcePositionInstruction::cast(instr)); |
| 121 } else { | 120 } else { |
| (...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 506 } | 505 } |
| 507 | 506 |
| 508 | 507 |
| 509 void CodeGenerator::AddNopForSmiCodeInlining() { UNIMPLEMENTED(); } | 508 void CodeGenerator::AddNopForSmiCodeInlining() { UNIMPLEMENTED(); } |
| 510 | 509 |
| 511 #endif // !V8_TURBOFAN_BACKEND | 510 #endif // !V8_TURBOFAN_BACKEND |
| 512 | 511 |
| 513 } // namespace compiler | 512 } // namespace compiler |
| 514 } // namespace internal | 513 } // namespace internal |
| 515 } // namespace v8 | 514 } // namespace v8 |
| OLD | NEW |