| 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 2429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2440 void Assembler::dd(uint32_t data) { | 2440 void Assembler::dd(uint32_t data) { |
| 2441 CheckBuffer(); | 2441 CheckBuffer(); |
| 2442 *reinterpret_cast<uint32_t*>(pc_) = data; | 2442 *reinterpret_cast<uint32_t*>(pc_) = data; |
| 2443 pc_ += sizeof(uint32_t); | 2443 pc_ += sizeof(uint32_t); |
| 2444 } | 2444 } |
| 2445 | 2445 |
| 2446 | 2446 |
| 2447 void Assembler::dd(Label* label) { | 2447 void Assembler::dd(Label* label) { |
| 2448 CheckBuffer(); | 2448 CheckBuffer(); |
| 2449 RecordRelocInfo(RelocInfo::INTERNAL_REFERENCE); | 2449 RecordRelocInfo(RelocInfo::INTERNAL_REFERENCE); |
| 2450 uint32_t data; |
| 2450 if (label->is_bound()) { | 2451 if (label->is_bound()) { |
| 2451 uint32_t data = reinterpret_cast<uint32_t>(buffer_ + label->pos()); | 2452 data = reinterpret_cast<uint32_t>(buffer_ + label->pos()); |
| 2452 *reinterpret_cast<uint32_t*>(pc_) = data; | |
| 2453 pc_ += sizeof(uint32_t); | |
| 2454 } else { | 2453 } else { |
| 2455 uint32_t target_pos = jump_address(label); | 2454 data = jump_address(label); |
| 2456 emit(target_pos); | |
| 2457 internal_reference_positions_.insert(label->pos()); | 2455 internal_reference_positions_.insert(label->pos()); |
| 2458 } | 2456 } |
| 2457 *reinterpret_cast<uint32_t*>(pc_) = data; |
| 2458 pc_ += sizeof(uint32_t); |
| 2459 } | 2459 } |
| 2460 | 2460 |
| 2461 | 2461 |
| 2462 void Assembler::emit_code_stub_address(Code* stub) { | 2462 void Assembler::emit_code_stub_address(Code* stub) { |
| 2463 CheckBuffer(); | 2463 CheckBuffer(); |
| 2464 *reinterpret_cast<uint32_t*>(pc_) = | 2464 *reinterpret_cast<uint32_t*>(pc_) = |
| 2465 reinterpret_cast<uint32_t>(stub->instruction_start()); | 2465 reinterpret_cast<uint32_t>(stub->instruction_start()); |
| 2466 pc_ += sizeof(uint32_t); | 2466 pc_ += sizeof(uint32_t); |
| 2467 } | 2467 } |
| 2468 | 2468 |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2750 void Assembler::PopulateConstantPool(ConstantPoolArray* constant_pool) { | 2750 void Assembler::PopulateConstantPool(ConstantPoolArray* constant_pool) { |
| 2751 // No out-of-line constant pool support. | 2751 // No out-of-line constant pool support. |
| 2752 DCHECK(!FLAG_enable_ool_constant_pool); | 2752 DCHECK(!FLAG_enable_ool_constant_pool); |
| 2753 return; | 2753 return; |
| 2754 } | 2754 } |
| 2755 | 2755 |
| 2756 | 2756 |
| 2757 } } // namespace v8::internal | 2757 } } // namespace v8::internal |
| 2758 | 2758 |
| 2759 #endif // V8_TARGET_ARCH_MIPS | 2759 #endif // V8_TARGET_ARCH_MIPS |
| OLD | NEW |