OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
6 // met: | 6 // met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 2735 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2746 } | 2746 } |
2747 | 2747 |
2748 | 2748 |
2749 void Assembler::dd(uint32_t data) { | 2749 void Assembler::dd(uint32_t data) { |
2750 CheckBuffer(); | 2750 CheckBuffer(); |
2751 *reinterpret_cast<uint32_t*>(pc_) = data; | 2751 *reinterpret_cast<uint32_t*>(pc_) = data; |
2752 pc_ += sizeof(uint32_t); | 2752 pc_ += sizeof(uint32_t); |
2753 } | 2753 } |
2754 | 2754 |
2755 | 2755 |
| 2756 void Assembler::dq(uint64_t data) { |
| 2757 CheckBuffer(); |
| 2758 *reinterpret_cast<uint64_t*>(pc_) = data; |
| 2759 pc_ += sizeof(uint64_t); |
| 2760 } |
| 2761 |
| 2762 |
2756 void Assembler::dd(Label* label) { | 2763 void Assembler::dd(Label* label) { |
2757 CheckBuffer(); | 2764 CheckBuffer(); |
2758 RecordRelocInfo(RelocInfo::INTERNAL_REFERENCE); | 2765 RecordRelocInfo(RelocInfo::INTERNAL_REFERENCE); |
2759 uint64_t data; | 2766 uint64_t data; |
2760 if (label->is_bound()) { | 2767 if (label->is_bound()) { |
2761 data = reinterpret_cast<uint64_t>(buffer_ + label->pos()); | 2768 data = reinterpret_cast<uint64_t>(buffer_ + label->pos()); |
2762 } else { | 2769 } else { |
2763 data = jump_address(label); | 2770 data = jump_address(label); |
2764 internal_reference_positions_.insert(label->pos()); | 2771 internal_reference_positions_.insert(label->pos()); |
2765 } | 2772 } |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2954 | ((itarget >> 16) & kImm16Mask); | 2961 | ((itarget >> 16) & kImm16Mask); |
2955 *(p + 3) = ORI | (rt_code << kRsShift) | (rt_code << kRtShift) | 2962 *(p + 3) = ORI | (rt_code << kRsShift) | (rt_code << kRtShift) |
2956 | (itarget & kImm16Mask); | 2963 | (itarget & kImm16Mask); |
2957 | 2964 |
2958 if (icache_flush_mode != SKIP_ICACHE_FLUSH) { | 2965 if (icache_flush_mode != SKIP_ICACHE_FLUSH) { |
2959 CpuFeatures::FlushICache(pc, 4 * Assembler::kInstrSize); | 2966 CpuFeatures::FlushICache(pc, 4 * Assembler::kInstrSize); |
2960 } | 2967 } |
2961 } | 2968 } |
2962 | 2969 |
2963 | 2970 |
2964 Handle<ConstantPoolArray> Assembler::NewConstantPool(Isolate* isolate) { | |
2965 // No out-of-line constant pool support. | |
2966 DCHECK(!FLAG_enable_ool_constant_pool); | |
2967 return isolate->factory()->empty_constant_pool_array(); | |
2968 } | |
2969 | |
2970 | |
2971 void Assembler::PopulateConstantPool(ConstantPoolArray* constant_pool) { | |
2972 // No out-of-line constant pool support. | |
2973 DCHECK(!FLAG_enable_ool_constant_pool); | |
2974 return; | |
2975 } | |
2976 | |
2977 | |
2978 } } // namespace v8::internal | 2971 } } // namespace v8::internal |
2979 | 2972 |
2980 #endif // V8_TARGET_ARCH_MIPS64 | 2973 #endif // V8_TARGET_ARCH_MIPS64 |
OLD | NEW |