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 572 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
583 reinterpret_cast<byte*>(pc_)); | 583 reinterpret_cast<byte*>(pc_)); |
584 constpool_.Clear(); | 584 constpool_.Clear(); |
585 next_constant_pool_check_ = 0; | 585 next_constant_pool_check_ = 0; |
586 next_veneer_pool_check_ = kMaxInt; | 586 next_veneer_pool_check_ = kMaxInt; |
587 no_const_pool_before_ = 0; | 587 no_const_pool_before_ = 0; |
588 ClearRecordedAstId(); | 588 ClearRecordedAstId(); |
589 } | 589 } |
590 | 590 |
591 | 591 |
592 void Assembler::GetCode(CodeDesc* desc) { | 592 void Assembler::GetCode(CodeDesc* desc) { |
| 593 reloc_info_writer.Finish(); |
593 // Emit constant pool if necessary. | 594 // Emit constant pool if necessary. |
594 CheckConstPool(true, false); | 595 CheckConstPool(true, false); |
595 DCHECK(constpool_.IsEmpty()); | 596 DCHECK(constpool_.IsEmpty()); |
596 | 597 |
597 // Set up code descriptor. | 598 // Set up code descriptor. |
598 if (desc) { | 599 if (desc) { |
599 desc->buffer = reinterpret_cast<byte*>(buffer_); | 600 desc->buffer = reinterpret_cast<byte*>(buffer_); |
600 desc->buffer_size = buffer_size_; | 601 desc->buffer_size = buffer_size_; |
601 desc->instr_size = pc_offset(); | 602 desc->instr_size = pc_offset(); |
602 desc->reloc_size = (reinterpret_cast<byte*>(buffer_) + buffer_size_) - | 603 desc->reloc_size = (reinterpret_cast<byte*>(buffer_) + buffer_size_) - |
(...skipping 2552 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3155 movz(scratch, (target_offset >> 16) & 0xFFFF, 16); | 3156 movz(scratch, (target_offset >> 16) & 0xFFFF, 16); |
3156 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); | 3157 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); |
3157 DCHECK((target_offset >> 48) == 0); | 3158 DCHECK((target_offset >> 48) == 0); |
3158 add(rd, rd, scratch); | 3159 add(rd, rd, scratch); |
3159 } | 3160 } |
3160 | 3161 |
3161 | 3162 |
3162 } } // namespace v8::internal | 3163 } } // namespace v8::internal |
3163 | 3164 |
3164 #endif // V8_TARGET_ARCH_ARM64 | 3165 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |