OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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_ARM64 | 5 #if V8_TARGET_ARCH_ARM64 |
6 | 6 |
7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
8 #include "src/base/division-by-constant.h" | 8 #include "src/base/division-by-constant.h" |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 1553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1564 Ldr(scratch1, MemOperand(receiver, kMementoMapOffset)); | 1564 Ldr(scratch1, MemOperand(receiver, kMementoMapOffset)); |
1565 Cmp(scratch1, Operand(isolate()->factory()->allocation_memento_map())); | 1565 Cmp(scratch1, Operand(isolate()->factory()->allocation_memento_map())); |
1566 } | 1566 } |
1567 | 1567 |
1568 | 1568 |
1569 void MacroAssembler::InNewSpace(Register object, | 1569 void MacroAssembler::InNewSpace(Register object, |
1570 Condition cond, | 1570 Condition cond, |
1571 Label* branch) { | 1571 Label* branch) { |
1572 DCHECK(cond == eq || cond == ne); | 1572 DCHECK(cond == eq || cond == ne); |
1573 UseScratchRegisterScope temps(this); | 1573 UseScratchRegisterScope temps(this); |
1574 const int mask = | 1574 CheckPageFlag(object, temps.AcquireSameSizeAs(object), |
1575 (1 << MemoryChunk::IN_FROM_SPACE) | (1 << MemoryChunk::IN_TO_SPACE); | 1575 MemoryChunk::kIsInNewSpaceMask, cond, branch); |
1576 CheckPageFlag(object, temps.AcquireSameSizeAs(object), mask, cond, branch); | |
1577 } | 1576 } |
1578 | 1577 |
1579 | 1578 |
1580 void MacroAssembler::AssertSmi(Register object, BailoutReason reason) { | 1579 void MacroAssembler::AssertSmi(Register object, BailoutReason reason) { |
1581 if (emit_debug_code()) { | 1580 if (emit_debug_code()) { |
1582 STATIC_ASSERT(kSmiTag == 0); | 1581 STATIC_ASSERT(kSmiTag == 0); |
1583 Tst(object, kSmiTagMask); | 1582 Tst(object, kSmiTagMask); |
1584 Check(eq, reason); | 1583 Check(eq, reason); |
1585 } | 1584 } |
1586 } | 1585 } |
(...skipping 3566 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5153 } | 5152 } |
5154 | 5153 |
5155 | 5154 |
5156 #undef __ | 5155 #undef __ |
5157 | 5156 |
5158 | 5157 |
5159 } // namespace internal | 5158 } // namespace internal |
5160 } // namespace v8 | 5159 } // namespace v8 |
5161 | 5160 |
5162 #endif // V8_TARGET_ARCH_ARM64 | 5161 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |