| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 255 } | 255 } |
| 256 | 256 |
| 257 | 257 |
| 258 void LUnaryMathOperation::PrintDataTo(StringStream* stream) { | 258 void LUnaryMathOperation::PrintDataTo(StringStream* stream) { |
| 259 stream->Add("/%s ", hydrogen()->OpName()); | 259 stream->Add("/%s ", hydrogen()->OpName()); |
| 260 InputAt(0)->PrintTo(stream); | 260 InputAt(0)->PrintTo(stream); |
| 261 } | 261 } |
| 262 | 262 |
| 263 | 263 |
| 264 void LLoadContextSlot::PrintDataTo(StringStream* stream) { | 264 void LLoadContextSlot::PrintDataTo(StringStream* stream) { |
| 265 stream->Add("(%d, %d)", context_chain_length(), slot_index()); | 265 InputAt(0)->PrintTo(stream); |
| 266 stream->Add("[%d]", slot_index()); |
| 266 } | 267 } |
| 267 | 268 |
| 268 | 269 |
| 269 void LCallKeyed::PrintDataTo(StringStream* stream) { | 270 void LCallKeyed::PrintDataTo(StringStream* stream) { |
| 270 stream->Add("[ecx] #%d / ", arity()); | 271 stream->Add("[ecx] #%d / ", arity()); |
| 271 } | 272 } |
| 272 | 273 |
| 273 | 274 |
| 274 void LCallNamed::PrintDataTo(StringStream* stream) { | 275 void LCallNamed::PrintDataTo(StringStream* stream) { |
| 275 SmartPointer<char> name_string = name()->ToCString(); | 276 SmartPointer<char> name_string = name()->ToCString(); |
| (...skipping 766 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1042 } | 1043 } |
| 1043 | 1044 |
| 1044 | 1045 |
| 1045 LInstruction* LChunkBuilder::DoPushArgument(HPushArgument* instr) { | 1046 LInstruction* LChunkBuilder::DoPushArgument(HPushArgument* instr) { |
| 1046 ++argument_count_; | 1047 ++argument_count_; |
| 1047 LOperand* argument = UseOrConstant(instr->argument()); | 1048 LOperand* argument = UseOrConstant(instr->argument()); |
| 1048 return new LPushArgument(argument); | 1049 return new LPushArgument(argument); |
| 1049 } | 1050 } |
| 1050 | 1051 |
| 1051 | 1052 |
| 1053 LInstruction* LChunkBuilder::DoContext(HContext* instr) { |
| 1054 Abort("Unimplemented: DoContext"); |
| 1055 return NULL; |
| 1056 } |
| 1057 |
| 1058 |
| 1059 LInstruction* LChunkBuilder::DoOuterContext(HOuterContext* instr) { |
| 1060 Abort("Unimplemented: DoOuterContext"); |
| 1061 return NULL; |
| 1062 } |
| 1063 |
| 1064 |
| 1052 LInstruction* LChunkBuilder::DoGlobalObject(HGlobalObject* instr) { | 1065 LInstruction* LChunkBuilder::DoGlobalObject(HGlobalObject* instr) { |
| 1053 return DefineAsRegister(new LGlobalObject); | 1066 return DefineAsRegister(new LGlobalObject); |
| 1054 } | 1067 } |
| 1055 | 1068 |
| 1056 | 1069 |
| 1057 LInstruction* LChunkBuilder::DoGlobalReceiver(HGlobalReceiver* instr) { | 1070 LInstruction* LChunkBuilder::DoGlobalReceiver(HGlobalReceiver* instr) { |
| 1058 return DefineAsRegister(new LGlobalReceiver); | 1071 return DefineAsRegister(new LGlobalReceiver); |
| 1059 } | 1072 } |
| 1060 | 1073 |
| 1061 | 1074 |
| (...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1465 | 1478 |
| 1466 LInstruction* LChunkBuilder::DoLoadGlobal(HLoadGlobal* instr) { | 1479 LInstruction* LChunkBuilder::DoLoadGlobal(HLoadGlobal* instr) { |
| 1467 LLoadGlobal* result = new LLoadGlobal; | 1480 LLoadGlobal* result = new LLoadGlobal; |
| 1468 return instr->check_hole_value() | 1481 return instr->check_hole_value() |
| 1469 ? AssignEnvironment(DefineAsRegister(result)) | 1482 ? AssignEnvironment(DefineAsRegister(result)) |
| 1470 : DefineAsRegister(result); | 1483 : DefineAsRegister(result); |
| 1471 } | 1484 } |
| 1472 | 1485 |
| 1473 | 1486 |
| 1474 LInstruction* LChunkBuilder::DoStoreGlobal(HStoreGlobal* instr) { | 1487 LInstruction* LChunkBuilder::DoStoreGlobal(HStoreGlobal* instr) { |
| 1475 return new LStoreGlobal(UseRegisterAtStart(instr->value()));} | 1488 return new LStoreGlobal(UseRegisterAtStart(instr->value())); |
| 1489 } |
| 1476 | 1490 |
| 1477 | 1491 |
| 1478 LInstruction* LChunkBuilder::DoLoadContextSlot(HLoadContextSlot* instr) { | 1492 LInstruction* LChunkBuilder::DoLoadContextSlot(HLoadContextSlot* instr) { |
| 1479 Abort("Unimplemented: %s", "DoLoadContextSlot"); | 1493 Abort("Unimplemented: %s", "DoLoadContextSlot"); |
| 1480 return NULL; | 1494 return NULL; |
| 1481 } | 1495 } |
| 1482 | 1496 |
| 1483 | 1497 |
| 1498 LInstruction* LChunkBuilder::DoStoreContextSlot(HStoreContextSlot* instr) { |
| 1499 Abort("Unimplemented: DoStoreContextSlot"); |
| 1500 return NULL; |
| 1501 } |
| 1502 |
| 1503 |
| 1484 LInstruction* LChunkBuilder::DoLoadNamedField(HLoadNamedField* instr) { | 1504 LInstruction* LChunkBuilder::DoLoadNamedField(HLoadNamedField* instr) { |
| 1485 ASSERT(instr->representation().IsTagged()); | 1505 ASSERT(instr->representation().IsTagged()); |
| 1486 LOperand* obj = UseRegisterAtStart(instr->object()); | 1506 LOperand* obj = UseRegisterAtStart(instr->object()); |
| 1487 return DefineAsRegister(new LLoadNamedField(obj)); | 1507 return DefineAsRegister(new LLoadNamedField(obj)); |
| 1488 } | 1508 } |
| 1489 | 1509 |
| 1490 | 1510 |
| 1491 LInstruction* LChunkBuilder::DoLoadNamedGeneric(HLoadNamedGeneric* instr) { | 1511 LInstruction* LChunkBuilder::DoLoadNamedGeneric(HLoadNamedGeneric* instr) { |
| 1492 Abort("Unimplemented: %s", "DoLoadNamedGeneric"); | 1512 Abort("Unimplemented: %s", "DoLoadNamedGeneric"); |
| 1493 return NULL; | 1513 return NULL; |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1699 | 1719 |
| 1700 | 1720 |
| 1701 LInstruction* LChunkBuilder::DoLeaveInlined(HLeaveInlined* instr) { | 1721 LInstruction* LChunkBuilder::DoLeaveInlined(HLeaveInlined* instr) { |
| 1702 Abort("Unimplemented: %s", "DoLeaveInlined"); | 1722 Abort("Unimplemented: %s", "DoLeaveInlined"); |
| 1703 return NULL; | 1723 return NULL; |
| 1704 } | 1724 } |
| 1705 | 1725 |
| 1706 } } // namespace v8::internal | 1726 } } // namespace v8::internal |
| 1707 | 1727 |
| 1708 #endif // V8_TARGET_ARCH_X64 | 1728 #endif // V8_TARGET_ARCH_X64 |
| OLD | NEW |