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 #include <limits.h> // For LONG_MIN, LONG_MAX. | 5 #include <limits.h> // For LONG_MIN, LONG_MAX. |
6 | 6 |
7 #include "src/v8.h" | 7 #include "src/v8.h" |
8 | 8 |
9 #if V8_TARGET_ARCH_MIPS64 | 9 #if V8_TARGET_ARCH_MIPS64 |
10 | 10 |
(...skipping 5835 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5846 int mask, | 5846 int mask, |
5847 Condition cc, | 5847 Condition cc, |
5848 Label* condition_met) { | 5848 Label* condition_met) { |
5849 And(scratch, object, Operand(~Page::kPageAlignmentMask)); | 5849 And(scratch, object, Operand(~Page::kPageAlignmentMask)); |
5850 ld(scratch, MemOperand(scratch, MemoryChunk::kFlagsOffset)); | 5850 ld(scratch, MemOperand(scratch, MemoryChunk::kFlagsOffset)); |
5851 And(scratch, scratch, Operand(mask)); | 5851 And(scratch, scratch, Operand(mask)); |
5852 Branch(condition_met, cc, scratch, Operand(zero_reg)); | 5852 Branch(condition_met, cc, scratch, Operand(zero_reg)); |
5853 } | 5853 } |
5854 | 5854 |
5855 | 5855 |
5856 void MacroAssembler::CheckMapDeprecated(Handle<Map> map, | |
5857 Register scratch, | |
5858 Label* if_deprecated) { | |
5859 if (map->CanBeDeprecated()) { | |
5860 li(scratch, Operand(map)); | |
5861 ld(scratch, FieldMemOperand(scratch, Map::kBitField3Offset)); | |
5862 And(scratch, scratch, Operand(Map::Deprecated::kMask)); | |
5863 Branch(if_deprecated, ne, scratch, Operand(zero_reg)); | |
5864 } | |
5865 } | |
5866 | |
5867 | |
5868 void MacroAssembler::JumpIfBlack(Register object, | 5856 void MacroAssembler::JumpIfBlack(Register object, |
5869 Register scratch0, | 5857 Register scratch0, |
5870 Register scratch1, | 5858 Register scratch1, |
5871 Label* on_black) { | 5859 Label* on_black) { |
5872 HasColor(object, scratch0, scratch1, on_black, 1, 0); // kBlackBitPattern. | 5860 HasColor(object, scratch0, scratch1, on_black, 1, 0); // kBlackBitPattern. |
5873 DCHECK(strcmp(Marking::kBlackBitPattern, "10") == 0); | 5861 DCHECK(strcmp(Marking::kBlackBitPattern, "10") == 0); |
5874 } | 5862 } |
5875 | 5863 |
5876 | 5864 |
5877 void MacroAssembler::HasColor(Register object, | 5865 void MacroAssembler::HasColor(Register object, |
(...skipping 453 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6331 } | 6319 } |
6332 if (mag.shift > 0) sra(result, result, mag.shift); | 6320 if (mag.shift > 0) sra(result, result, mag.shift); |
6333 srl(at, dividend, 31); | 6321 srl(at, dividend, 31); |
6334 Addu(result, result, Operand(at)); | 6322 Addu(result, result, Operand(at)); |
6335 } | 6323 } |
6336 | 6324 |
6337 | 6325 |
6338 } } // namespace v8::internal | 6326 } } // namespace v8::internal |
6339 | 6327 |
6340 #endif // V8_TARGET_ARCH_MIPS64 | 6328 #endif // V8_TARGET_ARCH_MIPS64 |
OLD | NEW |