| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // | 2 // |
| 3 // Redistribution and use in source and binary forms, with or without | 3 // Redistribution and use in source and binary forms, with or without |
| 4 // modification, are permitted provided that the following conditions are | 4 // modification, are permitted provided that the following conditions are |
| 5 // met: | 5 // met: |
| 6 // | 6 // |
| 7 // * Redistributions of source code must retain the above copyright | 7 // * Redistributions of source code must retain the above copyright |
| 8 // notice, this list of conditions and the following disclaimer. | 8 // notice, this list of conditions and the following disclaimer. |
| 9 // * Redistributions in binary form must reproduce the above | 9 // * Redistributions in binary form must reproduce the above |
| 10 // copyright notice, this list of conditions and the following | 10 // copyright notice, this list of conditions and the following |
| (...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 433 unique_entries_.clear(); | 433 unique_entries_.clear(); |
| 434 first_use_ = -1; | 434 first_use_ = -1; |
| 435 } | 435 } |
| 436 | 436 |
| 437 | 437 |
| 438 bool ConstPool::CanBeShared(RelocInfo::Mode mode) { | 438 bool ConstPool::CanBeShared(RelocInfo::Mode mode) { |
| 439 // Constant pool currently does not support 32-bit entries. | 439 // Constant pool currently does not support 32-bit entries. |
| 440 DCHECK(mode != RelocInfo::NONE32); | 440 DCHECK(mode != RelocInfo::NONE32); |
| 441 | 441 |
| 442 return RelocInfo::IsNone(mode) || | 442 return RelocInfo::IsNone(mode) || |
| 443 (!assm_->serializer_enabled() && (mode >= RelocInfo::CELL)); | 443 (!assm_->serializer_enabled() && |
| 444 (mode >= RelocInfo::FIRST_SHAREABLE_RELOC_MODE)); |
| 444 } | 445 } |
| 445 | 446 |
| 446 | 447 |
| 447 void ConstPool::EmitMarker() { | 448 void ConstPool::EmitMarker() { |
| 448 // A constant pool size is expressed in number of 32-bits words. | 449 // A constant pool size is expressed in number of 32-bits words. |
| 449 // Currently all entries are 64-bit. | 450 // Currently all entries are 64-bit. |
| 450 // + 1 is for the crash guard. | 451 // + 1 is for the crash guard. |
| 451 // + 0/1 for alignment. | 452 // + 0/1 for alignment. |
| 452 int word_count = EntryCount() * 2 + 1 + | 453 int word_count = EntryCount() * 2 + 1 + |
| 453 (IsAligned(assm_->pc_offset(), 8) ? 0 : 1); | 454 (IsAligned(assm_->pc_offset(), 8) ? 0 : 1); |
| (...skipping 2686 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3140 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); | 3141 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); |
| 3141 DCHECK((target_offset >> 48) == 0); | 3142 DCHECK((target_offset >> 48) == 0); |
| 3142 add(rd, rd, scratch); | 3143 add(rd, rd, scratch); |
| 3143 } | 3144 } |
| 3144 | 3145 |
| 3145 | 3146 |
| 3146 } // namespace internal | 3147 } // namespace internal |
| 3147 } // namespace v8 | 3148 } // namespace v8 |
| 3148 | 3149 |
| 3149 #endif // V8_TARGET_ARCH_ARM64 | 3150 #endif // V8_TARGET_ARCH_ARM64 |
| OLD | NEW |