| Index: src/ia32/assembler-ia32-inl.h
|
| diff --git a/src/ia32/assembler-ia32-inl.h b/src/ia32/assembler-ia32-inl.h
|
| index 2e9fcb6c54d2c23859d5593db994f668c0dce08e..5f67077ad014cfdf0d9824c1f4865558272018b2 100644
|
| --- a/src/ia32/assembler-ia32-inl.h
|
| +++ b/src/ia32/assembler-ia32-inl.h
|
| @@ -78,7 +78,9 @@ Address RelocInfo::target_address() {
|
|
|
|
|
| Address RelocInfo::target_address_address() {
|
| - ASSERT(IsCodeTarget(rmode_) || rmode_ == RUNTIME_ENTRY);
|
| + ASSERT(IsCodeTarget(rmode_) || rmode_ == RUNTIME_ENTRY
|
| + || rmode_ == EMBEDDED_OBJECT
|
| + || rmode_ == EXTERNAL_REFERENCE);
|
| return reinterpret_cast<Address>(pc_);
|
| }
|
|
|
| @@ -224,7 +226,7 @@ void RelocInfo::Visit(ObjectVisitor* visitor) {
|
| } else if (mode == RelocInfo::GLOBAL_PROPERTY_CELL) {
|
| visitor->VisitGlobalPropertyCell(this);
|
| } else if (mode == RelocInfo::EXTERNAL_REFERENCE) {
|
| - visitor->VisitExternalReference(target_reference_address());
|
| + visitor->VisitExternalReference(this);
|
| CPU::FlushICache(pc_, sizeof(Address));
|
| #ifdef ENABLE_DEBUGGER_SUPPORT
|
| // TODO(isolates): Get a cached isolate below.
|
| @@ -252,7 +254,7 @@ void RelocInfo::Visit(Heap* heap) {
|
| } else if (mode == RelocInfo::GLOBAL_PROPERTY_CELL) {
|
| StaticVisitor::VisitGlobalPropertyCell(heap, this);
|
| } else if (mode == RelocInfo::EXTERNAL_REFERENCE) {
|
| - StaticVisitor::VisitExternalReference(target_reference_address());
|
| + StaticVisitor::VisitExternalReference(this);
|
| CPU::FlushICache(pc_, sizeof(Address));
|
| #ifdef ENABLE_DEBUGGER_SUPPORT
|
| } else if (heap->isolate()->debug()->has_break_points() &&
|
|
|