OLD | NEW |
1 | 1 |
2 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 2 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
3 // All Rights Reserved. | 3 // All Rights Reserved. |
4 // | 4 // |
5 // Redistribution and use in source and binary forms, with or without | 5 // Redistribution and use in source and binary forms, with or without |
6 // modification, are permitted provided that the following conditions are | 6 // modification, are permitted provided that the following conditions are |
7 // met: | 7 // met: |
8 // | 8 // |
9 // - Redistributions of source code must retain the above copyright notice, | 9 // - Redistributions of source code must retain the above copyright notice, |
10 // this list of conditions and the following disclaimer. | 10 // this list of conditions and the following disclaimer. |
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
207 void RelocInfo::set_target_object(Object* target, | 207 void RelocInfo::set_target_object(Object* target, |
208 WriteBarrierMode write_barrier_mode, | 208 WriteBarrierMode write_barrier_mode, |
209 ICacheFlushMode icache_flush_mode) { | 209 ICacheFlushMode icache_flush_mode) { |
210 DCHECK(IsCodeTarget(rmode_) || rmode_ == EMBEDDED_OBJECT); | 210 DCHECK(IsCodeTarget(rmode_) || rmode_ == EMBEDDED_OBJECT); |
211 Assembler::set_target_address_at(isolate_, pc_, host_, | 211 Assembler::set_target_address_at(isolate_, pc_, host_, |
212 reinterpret_cast<Address>(target), | 212 reinterpret_cast<Address>(target), |
213 icache_flush_mode); | 213 icache_flush_mode); |
214 if (write_barrier_mode == UPDATE_WRITE_BARRIER && | 214 if (write_barrier_mode == UPDATE_WRITE_BARRIER && |
215 host() != NULL && | 215 host() != NULL && |
216 target->IsHeapObject()) { | 216 target->IsHeapObject()) { |
217 host()->GetHeap()->incremental_marking()->RecordWrite( | 217 host()->GetHeap()->incremental_marking()->RecordWriteIntoCode( |
218 host(), &Memory::Object_at(pc_), HeapObject::cast(target)); | 218 host(), this, HeapObject::cast(target)); |
219 } | 219 } |
220 } | 220 } |
221 | 221 |
222 | 222 |
223 Address RelocInfo::target_external_reference() { | 223 Address RelocInfo::target_external_reference() { |
224 DCHECK(rmode_ == EXTERNAL_REFERENCE); | 224 DCHECK(rmode_ == EXTERNAL_REFERENCE); |
225 return Assembler::target_address_at(pc_, host_); | 225 return Assembler::target_address_at(pc_, host_); |
226 } | 226 } |
227 | 227 |
228 | 228 |
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
482 CheckBuffer(); | 482 CheckBuffer(); |
483 } | 483 } |
484 EmitHelper(x, is_compact_branch); | 484 EmitHelper(x, is_compact_branch); |
485 } | 485 } |
486 | 486 |
487 | 487 |
488 } // namespace internal | 488 } // namespace internal |
489 } // namespace v8 | 489 } // namespace v8 |
490 | 490 |
491 #endif // V8_MIPS_ASSEMBLER_MIPS_INL_H_ | 491 #endif // V8_MIPS_ASSEMBLER_MIPS_INL_H_ |
OLD | NEW |