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 <assert.h> // For assert | 5 #include <assert.h> // For assert |
6 #include <limits.h> // For LONG_MIN, LONG_MAX. | 6 #include <limits.h> // For LONG_MIN, LONG_MAX. |
7 | 7 |
8 #if V8_TARGET_ARCH_PPC | 8 #if V8_TARGET_ARCH_PPC |
9 | 9 |
10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
(...skipping 1532 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1543 andi(r0, scratch, Operand(kIsNotStringMask)); | 1543 andi(r0, scratch, Operand(kIsNotStringMask)); |
1544 bne(fail, cr0); | 1544 bne(fail, cr0); |
1545 } | 1545 } |
1546 | 1546 |
1547 | 1547 |
1548 void MacroAssembler::MaybeDropFrames() { | 1548 void MacroAssembler::MaybeDropFrames() { |
1549 // Check whether we need to drop frames to restart a function on the stack. | 1549 // Check whether we need to drop frames to restart a function on the stack. |
1550 ExternalReference restart_fp = | 1550 ExternalReference restart_fp = |
1551 ExternalReference::debug_restart_fp_address(isolate()); | 1551 ExternalReference::debug_restart_fp_address(isolate()); |
1552 mov(r4, Operand(restart_fp)); | 1552 mov(r4, Operand(restart_fp)); |
1553 LoadWordArith(r4, MemOperand(r4)); | 1553 LoadP(r4, MemOperand(r4)); |
1554 cmpi(r4, Operand::Zero()); | 1554 cmpi(r4, Operand::Zero()); |
1555 Jump(isolate()->builtins()->FrameDropperTrampoline(), RelocInfo::CODE_TARGET, | 1555 Jump(isolate()->builtins()->FrameDropperTrampoline(), RelocInfo::CODE_TARGET, |
1556 ne); | 1556 ne); |
1557 } | 1557 } |
1558 | 1558 |
1559 void MacroAssembler::PushStackHandler() { | 1559 void MacroAssembler::PushStackHandler() { |
1560 // Adjust this code if not the case. | 1560 // Adjust this code if not the case. |
1561 STATIC_ASSERT(StackHandlerConstants::kSize == 1 * kPointerSize); | 1561 STATIC_ASSERT(StackHandlerConstants::kSize == 1 * kPointerSize); |
1562 STATIC_ASSERT(StackHandlerConstants::kNextOffset == 0 * kPointerSize); | 1562 STATIC_ASSERT(StackHandlerConstants::kNextOffset == 0 * kPointerSize); |
1563 | 1563 |
(...skipping 2675 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4239 } | 4239 } |
4240 if (mag.shift > 0) srawi(result, result, mag.shift); | 4240 if (mag.shift > 0) srawi(result, result, mag.shift); |
4241 ExtractBit(r0, dividend, 31); | 4241 ExtractBit(r0, dividend, 31); |
4242 add(result, result, r0); | 4242 add(result, result, r0); |
4243 } | 4243 } |
4244 | 4244 |
4245 } // namespace internal | 4245 } // namespace internal |
4246 } // namespace v8 | 4246 } // namespace v8 |
4247 | 4247 |
4248 #endif // V8_TARGET_ARCH_PPC | 4248 #endif // V8_TARGET_ARCH_PPC |
OLD | NEW |