Index: src/ia32/assembler-ia32-inl.h |
diff --git a/src/ia32/assembler-ia32-inl.h b/src/ia32/assembler-ia32-inl.h |
index a75932894e6cd3a3b7c11dc5bb113d60aa5f90b9..d957872cabfaedffa8f1ce955c967fbaf678f3ef 100644 |
--- a/src/ia32/assembler-ia32-inl.h |
+++ b/src/ia32/assembler-ia32-inl.h |
@@ -104,7 +104,8 @@ int RelocInfo::target_address_size() { |
void RelocInfo::set_target_address(Address target, |
WriteBarrierMode write_barrier_mode, |
ICacheFlushMode icache_flush_mode) { |
- Assembler::set_target_address_at(pc_, host_, target, icache_flush_mode); |
+ Assembler::set_target_address_at(isolate_, pc_, host_, target, |
+ icache_flush_mode); |
DCHECK(IsCodeTarget(rmode_) || IsRuntimeEntry(rmode_)); |
if (write_barrier_mode == UPDATE_WRITE_BARRIER && host() != NULL && |
IsCodeTarget(rmode_)) { |
@@ -229,8 +230,8 @@ void RelocInfo::set_code_age_stub(Code* stub, |
ICacheFlushMode icache_flush_mode) { |
DCHECK(*pc_ == kCallOpcode); |
DCHECK(rmode_ == RelocInfo::CODE_AGE_SEQUENCE); |
- Assembler::set_target_address_at(pc_ + 1, host_, stub->instruction_start(), |
- icache_flush_mode); |
+ Assembler::set_target_address_at( |
+ isolate_, pc_ + 1, host_, stub->instruction_start(), icache_flush_mode); |
} |
@@ -244,7 +245,7 @@ Address RelocInfo::debug_call_address() { |
void RelocInfo::set_debug_call_address(Address target) { |
DCHECK(IsDebugBreakSlot(rmode()) && IsPatchedDebugBreakSlotSequence()); |
Address location = pc_ + Assembler::kPatchDebugBreakSlotAddressOffset; |
- Assembler::set_target_address_at(location, host_, target); |
+ Assembler::set_target_address_at(isolate_, location, host_, target); |
if (host() != NULL) { |
Object* target_code = Code::GetCodeFromTargetAddress(target); |
host()->GetHeap()->incremental_marking()->RecordWriteIntoCode( |
@@ -259,7 +260,8 @@ void RelocInfo::WipeOut() { |
Memory::Address_at(pc_) = NULL; |
} else if (IsCodeTarget(rmode_) || IsRuntimeEntry(rmode_)) { |
// Effectively write zero into the relocation. |
- Assembler::set_target_address_at(pc_, host_, pc_ + sizeof(int32_t)); |
+ Assembler::set_target_address_at(isolate_, pc_, host_, |
+ pc_ + sizeof(int32_t)); |
} else { |
UNREACHABLE(); |
} |
@@ -453,13 +455,13 @@ Address Assembler::target_address_at(Address pc, Address constant_pool) { |
} |
-void Assembler::set_target_address_at(Address pc, Address constant_pool, |
- Address target, |
+void Assembler::set_target_address_at(Isolate* isolate, Address pc, |
+ Address constant_pool, Address target, |
ICacheFlushMode icache_flush_mode) { |
int32_t* p = reinterpret_cast<int32_t*>(pc); |
*p = target - (pc + sizeof(int32_t)); |
if (icache_flush_mode != SKIP_ICACHE_FLUSH) { |
- Assembler::FlushICacheWithoutIsolate(p, sizeof(int32_t)); |
+ Assembler::FlushICache(isolate, p, sizeof(int32_t)); |
} |
} |
@@ -499,7 +501,7 @@ void Assembler::emit_near_disp(Label* L) { |
void Assembler::deserialization_set_target_internal_reference_at( |
- Address pc, Address target, RelocInfo::Mode mode) { |
+ Isolate* isolate, Address pc, Address target, RelocInfo::Mode mode) { |
Memory::Address_at(pc) = target; |
} |