| OLD | NEW |
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #if V8_TARGET_ARCH_PPC | 5 #if V8_TARGET_ARCH_PPC |
| 6 | 6 |
| 7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" |
| 8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" |
| 9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
| 10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
| (...skipping 1541 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1552 break; | 1552 break; |
| 1553 | 1553 |
| 1554 case ObjectLiteral::Property::SETTER: | 1554 case ObjectLiteral::Property::SETTER: |
| 1555 PushOperand(Smi::FromInt(NONE)); | 1555 PushOperand(Smi::FromInt(NONE)); |
| 1556 CallRuntimeWithOperands(Runtime::kDefineSetterPropertyUnchecked); | 1556 CallRuntimeWithOperands(Runtime::kDefineSetterPropertyUnchecked); |
| 1557 break; | 1557 break; |
| 1558 } | 1558 } |
| 1559 } | 1559 } |
| 1560 } | 1560 } |
| 1561 | 1561 |
| 1562 if (expr->has_function()) { | |
| 1563 DCHECK(result_saved); | |
| 1564 __ LoadP(r3, MemOperand(sp)); | |
| 1565 __ push(r3); | |
| 1566 __ CallRuntime(Runtime::kToFastProperties); | |
| 1567 } | |
| 1568 | |
| 1569 if (result_saved) { | 1562 if (result_saved) { |
| 1570 context()->PlugTOS(); | 1563 context()->PlugTOS(); |
| 1571 } else { | 1564 } else { |
| 1572 context()->Plug(r3); | 1565 context()->Plug(r3); |
| 1573 } | 1566 } |
| 1574 } | 1567 } |
| 1575 | 1568 |
| 1576 | 1569 |
| 1577 void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { | 1570 void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { |
| 1578 Comment cmnt(masm_, "[ ArrayLiteral"); | 1571 Comment cmnt(masm_, "[ ArrayLiteral"); |
| (...skipping 2567 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4146 | 4139 |
| 4147 DCHECK(Assembler::IsCrSet(Assembler::instr_at(cmp_address))); | 4140 DCHECK(Assembler::IsCrSet(Assembler::instr_at(cmp_address))); |
| 4148 | 4141 |
| 4149 DCHECK(interrupt_address == | 4142 DCHECK(interrupt_address == |
| 4150 isolate->builtins()->OnStackReplacement()->entry()); | 4143 isolate->builtins()->OnStackReplacement()->entry()); |
| 4151 return ON_STACK_REPLACEMENT; | 4144 return ON_STACK_REPLACEMENT; |
| 4152 } | 4145 } |
| 4153 } // namespace internal | 4146 } // namespace internal |
| 4154 } // namespace v8 | 4147 } // namespace v8 |
| 4155 #endif // V8_TARGET_ARCH_PPC | 4148 #endif // V8_TARGET_ARCH_PPC |
| OLD | NEW |