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 2559 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2570 } | 2570 } |
2571 | 2571 |
2572 | 2572 |
2573 void Assembler::dd(uint32_t data) { | 2573 void Assembler::dd(uint32_t data) { |
2574 CheckBuffer(); | 2574 CheckBuffer(); |
2575 *reinterpret_cast<uint32_t*>(pc_) = data; | 2575 *reinterpret_cast<uint32_t*>(pc_) = data; |
2576 pc_ += sizeof(uint32_t); | 2576 pc_ += sizeof(uint32_t); |
2577 } | 2577 } |
2578 | 2578 |
2579 | 2579 |
| 2580 void Assembler::dq(uint64_t data) { |
| 2581 CheckBuffer(); |
| 2582 *reinterpret_cast<uint64_t*>(pc_) = data; |
| 2583 pc_ += sizeof(uint64_t); |
| 2584 } |
| 2585 |
| 2586 |
2580 void Assembler::dd(Label* label) { | 2587 void Assembler::dd(Label* label) { |
2581 CheckBuffer(); | 2588 CheckBuffer(); |
2582 RecordRelocInfo(RelocInfo::INTERNAL_REFERENCE); | 2589 RecordRelocInfo(RelocInfo::INTERNAL_REFERENCE); |
2583 uint32_t data; | 2590 uint32_t data; |
2584 if (label->is_bound()) { | 2591 if (label->is_bound()) { |
2585 data = reinterpret_cast<uint32_t>(buffer_ + label->pos()); | 2592 data = reinterpret_cast<uint32_t>(buffer_ + label->pos()); |
2586 } else { | 2593 } else { |
2587 data = jump_address(label); | 2594 data = jump_address(label); |
2588 internal_reference_positions_.insert(label->pos()); | 2595 internal_reference_positions_.insert(label->pos()); |
2589 } | 2596 } |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2866 } | 2873 } |
2867 patched = true; | 2874 patched = true; |
2868 } | 2875 } |
2869 | 2876 |
2870 if (patched) { | 2877 if (patched) { |
2871 CpuFeatures::FlushICache(pc + 2, sizeof(Address)); | 2878 CpuFeatures::FlushICache(pc + 2, sizeof(Address)); |
2872 } | 2879 } |
2873 } | 2880 } |
2874 | 2881 |
2875 | 2882 |
2876 Handle<ConstantPoolArray> Assembler::NewConstantPool(Isolate* isolate) { | |
2877 // No out-of-line constant pool support. | |
2878 DCHECK(!FLAG_enable_ool_constant_pool); | |
2879 return isolate->factory()->empty_constant_pool_array(); | |
2880 } | |
2881 | |
2882 | |
2883 void Assembler::PopulateConstantPool(ConstantPoolArray* constant_pool) { | |
2884 // No out-of-line constant pool support. | |
2885 DCHECK(!FLAG_enable_ool_constant_pool); | |
2886 return; | |
2887 } | |
2888 | |
2889 | |
2890 } } // namespace v8::internal | 2883 } } // namespace v8::internal |
2891 | 2884 |
2892 #endif // V8_TARGET_ARCH_MIPS | 2885 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |