| 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/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/double.h" | 7 #include "src/double.h" |
| 8 #include "src/factory.h" | 8 #include "src/factory.h" |
| 9 #include "src/hydrogen-infer-representation.h" | 9 #include "src/hydrogen-infer-representation.h" |
| 10 #include "src/property-details-inl.h" | 10 #include "src/property-details-inl.h" |
| (...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 518 | 518 |
| 519 void HValue::SetBlock(HBasicBlock* block) { | 519 void HValue::SetBlock(HBasicBlock* block) { |
| 520 ASSERT(block_ == NULL || block == NULL); | 520 ASSERT(block_ == NULL || block == NULL); |
| 521 block_ = block; | 521 block_ = block; |
| 522 if (id_ == kNoNumber && block != NULL) { | 522 if (id_ == kNoNumber && block != NULL) { |
| 523 id_ = block->graph()->GetNextValueID(this); | 523 id_ = block->graph()->GetNextValueID(this); |
| 524 } | 524 } |
| 525 } | 525 } |
| 526 | 526 |
| 527 | 527 |
| 528 OStream& operator<<(OStream& os, const HValue& v) { |
| 529 // TODO(svenpanne) Temporary impedance matching, to be removed later. |
| 530 HeapStringAllocator allocator; |
| 531 StringStream stream(&allocator); |
| 532 const_cast<HValue*>(&v)->PrintTo(&stream); |
| 533 return os << stream.ToCString().get(); |
| 534 } |
| 535 |
| 536 |
| 528 void HValue::PrintTypeTo(StringStream* stream) { | 537 void HValue::PrintTypeTo(StringStream* stream) { |
| 529 if (!representation().IsTagged() || type().Equals(HType::Tagged())) return; | 538 if (!representation().IsTagged() || type().Equals(HType::Tagged())) return; |
| 530 stream->Add(" type:%s", type().ToString()); | 539 stream->Add(" type:%s", type().ToString()); |
| 531 } | 540 } |
| 532 | 541 |
| 533 | 542 |
| 534 void HValue::PrintChangesTo(StringStream* stream) { | 543 void HValue::PrintChangesTo(StringStream* stream) { |
| 535 GVNFlagSet changes_flags = ChangesFlags(); | 544 GVNFlagSet changes_flags = ChangesFlags(); |
| 536 if (changes_flags.IsEmpty()) return; | 545 if (changes_flags.IsEmpty()) return; |
| 537 stream->Add(" changes["); | 546 stream->Add(" changes["); |
| (...skipping 669 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1207 : SecondSuccessor(); | 1216 : SecondSuccessor(); |
| 1208 return true; | 1217 return true; |
| 1209 } | 1218 } |
| 1210 *block = NULL; | 1219 *block = NULL; |
| 1211 return false; | 1220 return false; |
| 1212 } | 1221 } |
| 1213 | 1222 |
| 1214 | 1223 |
| 1215 void HBranch::PrintDataTo(StringStream* stream) { | 1224 void HBranch::PrintDataTo(StringStream* stream) { |
| 1216 HUnaryControlInstruction::PrintDataTo(stream); | 1225 HUnaryControlInstruction::PrintDataTo(stream); |
| 1217 stream->Add(" "); | 1226 OStringStream os; |
| 1218 expected_input_types().Print(stream); | 1227 os << " " << expected_input_types(); |
| 1228 stream->Add(os.c_str()); |
| 1219 } | 1229 } |
| 1220 | 1230 |
| 1221 | 1231 |
| 1222 void HCompareMap::PrintDataTo(StringStream* stream) { | 1232 void HCompareMap::PrintDataTo(StringStream* stream) { |
| 1223 value()->PrintNameTo(stream); | 1233 value()->PrintNameTo(stream); |
| 1224 stream->Add(" (%p)", *map().handle()); | 1234 stream->Add(" (%p)", *map().handle()); |
| 1225 HControlInstruction::PrintDataTo(stream); | 1235 HControlInstruction::PrintDataTo(stream); |
| 1226 if (known_successor_index() == 0) { | 1236 if (known_successor_index() == 0) { |
| 1227 stream->Add(" [true]"); | 1237 stream->Add(" [true]"); |
| 1228 } else if (known_successor_index() == 1) { | 1238 } else if (known_successor_index() == 1) { |
| (...skipping 3642 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4871 break; | 4881 break; |
| 4872 case kExternalMemory: | 4882 case kExternalMemory: |
| 4873 stream->Add("[external-memory]"); | 4883 stream->Add("[external-memory]"); |
| 4874 break; | 4884 break; |
| 4875 } | 4885 } |
| 4876 | 4886 |
| 4877 stream->Add("@%d", offset()); | 4887 stream->Add("@%d", offset()); |
| 4878 } | 4888 } |
| 4879 | 4889 |
| 4880 } } // namespace v8::internal | 4890 } } // namespace v8::internal |
| OLD | NEW |