| 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 2891 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2902 } | 2902 } |
| 2903 | 2903 |
| 2904 | 2904 |
| 2905 void MacroAssembler::JumpIfEitherSmi(Register reg1, Register reg2, | 2905 void MacroAssembler::JumpIfEitherSmi(Register reg1, Register reg2, |
| 2906 Label* on_either_smi) { | 2906 Label* on_either_smi) { |
| 2907 STATIC_ASSERT(kSmiTag == 0); | 2907 STATIC_ASSERT(kSmiTag == 0); |
| 2908 JumpIfSmi(reg1, on_either_smi); | 2908 JumpIfSmi(reg1, on_either_smi); |
| 2909 JumpIfSmi(reg2, on_either_smi); | 2909 JumpIfSmi(reg2, on_either_smi); |
| 2910 } | 2910 } |
| 2911 | 2911 |
| 2912 void MacroAssembler::AssertNotNumber(Register object) { |
| 2913 if (emit_debug_code()) { |
| 2914 STATIC_ASSERT(kSmiTag == 0); |
| 2915 TestIfSmi(object, r0); |
| 2916 Check(ne, kOperandIsANumber, cr0); |
| 2917 push(object); |
| 2918 CompareObjectType(object, object, object, HEAP_NUMBER_TYPE); |
| 2919 pop(object); |
| 2920 Check(ne, kOperandIsANumber); |
| 2921 } |
| 2922 } |
| 2912 | 2923 |
| 2913 void MacroAssembler::AssertNotSmi(Register object) { | 2924 void MacroAssembler::AssertNotSmi(Register object) { |
| 2914 if (emit_debug_code()) { | 2925 if (emit_debug_code()) { |
| 2915 STATIC_ASSERT(kSmiTag == 0); | 2926 STATIC_ASSERT(kSmiTag == 0); |
| 2916 TestIfSmi(object, r0); | 2927 TestIfSmi(object, r0); |
| 2917 Check(ne, kOperandIsASmi, cr0); | 2928 Check(ne, kOperandIsASmi, cr0); |
| 2918 } | 2929 } |
| 2919 } | 2930 } |
| 2920 | 2931 |
| 2921 | 2932 |
| (...skipping 1708 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4630 } | 4641 } |
| 4631 if (mag.shift > 0) srawi(result, result, mag.shift); | 4642 if (mag.shift > 0) srawi(result, result, mag.shift); |
| 4632 ExtractBit(r0, dividend, 31); | 4643 ExtractBit(r0, dividend, 31); |
| 4633 add(result, result, r0); | 4644 add(result, result, r0); |
| 4634 } | 4645 } |
| 4635 | 4646 |
| 4636 } // namespace internal | 4647 } // namespace internal |
| 4637 } // namespace v8 | 4648 } // namespace v8 |
| 4638 | 4649 |
| 4639 #endif // V8_TARGET_ARCH_PPC | 4650 #endif // V8_TARGET_ARCH_PPC |
| OLD | NEW |