| 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 #include "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #if V8_TARGET_ARCH_ARM64 | 7 #if V8_TARGET_ARCH_ARM64 |
| 8 | 8 |
| 9 #include "src/ic/call-optimization.h" | 9 #include "src/ic/call-optimization.h" |
| 10 #include "src/ic/handler-compiler.h" | 10 #include "src/ic/handler-compiler.h" |
| (...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 396 __ Mov(this->name(), Operand(name)); | 396 __ Mov(this->name(), Operand(name)); |
| 397 } | 397 } |
| 398 } | 398 } |
| 399 | 399 |
| 400 | 400 |
| 401 void NamedStoreHandlerCompiler::GenerateRestoreName(Handle<Name> name) { | 401 void NamedStoreHandlerCompiler::GenerateRestoreName(Handle<Name> name) { |
| 402 __ Mov(this->name(), Operand(name)); | 402 __ Mov(this->name(), Operand(name)); |
| 403 } | 403 } |
| 404 | 404 |
| 405 | 405 |
| 406 void NamedStoreHandlerCompiler::GeneratePushMap(Register map_reg, |
| 407 Register scratch) { |
| 408 DCHECK(false); // Not implemented. |
| 409 } |
| 410 |
| 411 |
| 406 void NamedStoreHandlerCompiler::GenerateRestoreMap(Handle<Map> transition, | 412 void NamedStoreHandlerCompiler::GenerateRestoreMap(Handle<Map> transition, |
| 413 Register map_reg, |
| 407 Register scratch, | 414 Register scratch, |
| 408 Label* miss) { | 415 Label* miss) { |
| 409 Handle<WeakCell> cell = Map::WeakCellForMap(transition); | 416 Handle<WeakCell> cell = Map::WeakCellForMap(transition); |
| 410 Register map_reg = StoreTransitionDescriptor::MapRegister(); | |
| 411 DCHECK(!map_reg.is(scratch)); | 417 DCHECK(!map_reg.is(scratch)); |
| 412 __ LoadWeakValue(map_reg, cell, miss); | 418 __ LoadWeakValue(map_reg, cell, miss); |
| 413 if (transition->CanBeDeprecated()) { | 419 if (transition->CanBeDeprecated()) { |
| 414 __ Ldrsw(scratch, FieldMemOperand(map_reg, Map::kBitField3Offset)); | 420 __ Ldrsw(scratch, FieldMemOperand(map_reg, Map::kBitField3Offset)); |
| 415 __ TestAndBranchIfAnySet(scratch, Map::Deprecated::kMask, miss); | 421 __ TestAndBranchIfAnySet(scratch, Map::Deprecated::kMask, miss); |
| 416 } | 422 } |
| 417 } | 423 } |
| 418 | 424 |
| 419 | 425 |
| 420 void NamedStoreHandlerCompiler::GenerateConstantCheck(Register map_reg, | 426 void NamedStoreHandlerCompiler::GenerateConstantCheck(Register map_reg, |
| (...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 797 // Return the generated code. | 803 // Return the generated code. |
| 798 return GetCode(kind(), Code::FAST, name); | 804 return GetCode(kind(), Code::FAST, name); |
| 799 } | 805 } |
| 800 | 806 |
| 801 | 807 |
| 802 #undef __ | 808 #undef __ |
| 803 } // namespace internal | 809 } // namespace internal |
| 804 } // namespace v8 | 810 } // namespace v8 |
| 805 | 811 |
| 806 #endif // V8_TARGET_ARCH_IA32 | 812 #endif // V8_TARGET_ARCH_IA32 |
| OLD | NEW |