| 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 #if V8_TARGET_ARCH_MIPS64 | 5 #if V8_TARGET_ARCH_MIPS64 |
| 6 | 6 |
| 7 // Note on Mips implementation: | 7 // Note on Mips implementation: |
| 8 // | 8 // |
| 9 // The result_register() for mips is the 'v0' register, which is defined | 9 // The result_register() for mips is the 'v0' register, which is defined |
| 10 // by the ABI to contain function return values. However, the first | 10 // by the ABI to contain function return values. However, the first |
| (...skipping 2416 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2427 PushOperands(scratch, v0, v0, scratch); | 2427 PushOperands(scratch, v0, v0, scratch); |
| 2428 PushOperand(key->value()); | 2428 PushOperand(key->value()); |
| 2429 | 2429 |
| 2430 // Stack here: | 2430 // Stack here: |
| 2431 // - home_object | 2431 // - home_object |
| 2432 // - this (receiver) | 2432 // - this (receiver) |
| 2433 // - this (receiver) <-- LoadFromSuper will pop here and below. | 2433 // - this (receiver) <-- LoadFromSuper will pop here and below. |
| 2434 // - home_object | 2434 // - home_object |
| 2435 // - key | 2435 // - key |
| 2436 CallRuntimeWithOperands(Runtime::kLoadFromSuper); | 2436 CallRuntimeWithOperands(Runtime::kLoadFromSuper); |
| 2437 PrepareForBailoutForId(prop->LoadId(), TOS_REG); |
| 2437 | 2438 |
| 2438 // Replace home_object with target function. | 2439 // Replace home_object with target function. |
| 2439 __ sd(v0, MemOperand(sp, kPointerSize)); | 2440 __ sd(v0, MemOperand(sp, kPointerSize)); |
| 2440 | 2441 |
| 2441 // Stack here: | 2442 // Stack here: |
| 2442 // - target function | 2443 // - target function |
| 2443 // - this (receiver) | 2444 // - this (receiver) |
| 2444 EmitCall(expr); | 2445 EmitCall(expr); |
| 2445 } | 2446 } |
| 2446 | 2447 |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2485 PushOperands(scratch, v0, v0, scratch); | 2486 PushOperands(scratch, v0, v0, scratch); |
| 2486 VisitForStackValue(prop->key()); | 2487 VisitForStackValue(prop->key()); |
| 2487 | 2488 |
| 2488 // Stack here: | 2489 // Stack here: |
| 2489 // - home_object | 2490 // - home_object |
| 2490 // - this (receiver) | 2491 // - this (receiver) |
| 2491 // - this (receiver) <-- LoadKeyedFromSuper will pop here and below. | 2492 // - this (receiver) <-- LoadKeyedFromSuper will pop here and below. |
| 2492 // - home_object | 2493 // - home_object |
| 2493 // - key | 2494 // - key |
| 2494 CallRuntimeWithOperands(Runtime::kLoadKeyedFromSuper); | 2495 CallRuntimeWithOperands(Runtime::kLoadKeyedFromSuper); |
| 2496 PrepareForBailoutForId(prop->LoadId(), TOS_REG); |
| 2495 | 2497 |
| 2496 // Replace home_object with target function. | 2498 // Replace home_object with target function. |
| 2497 __ sd(v0, MemOperand(sp, kPointerSize)); | 2499 __ sd(v0, MemOperand(sp, kPointerSize)); |
| 2498 | 2500 |
| 2499 // Stack here: | 2501 // Stack here: |
| 2500 // - target function | 2502 // - target function |
| 2501 // - this (receiver) | 2503 // - this (receiver) |
| 2502 EmitCall(expr); | 2504 EmitCall(expr); |
| 2503 } | 2505 } |
| 2504 | 2506 |
| (...skipping 1482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3987 reinterpret_cast<uint64_t>( | 3989 reinterpret_cast<uint64_t>( |
| 3988 isolate->builtins()->OnStackReplacement()->entry())); | 3990 isolate->builtins()->OnStackReplacement()->entry())); |
| 3989 return ON_STACK_REPLACEMENT; | 3991 return ON_STACK_REPLACEMENT; |
| 3990 } | 3992 } |
| 3991 | 3993 |
| 3992 | 3994 |
| 3993 } // namespace internal | 3995 } // namespace internal |
| 3994 } // namespace v8 | 3996 } // namespace v8 |
| 3995 | 3997 |
| 3996 #endif // V8_TARGET_ARCH_MIPS64 | 3998 #endif // V8_TARGET_ARCH_MIPS64 |
| OLD | NEW |