Index: src/arm/ic-arm.cc |
diff --git a/src/arm/ic-arm.cc b/src/arm/ic-arm.cc |
index d92406bdc0adc1a6b86bf9307aba2a53b629bf93..9f9b63ce5ca5cb0ac8d58ee2c1ea2b96f00164a5 100644 |
--- a/src/arm/ic-arm.cc |
+++ b/src/arm/ic-arm.cc |
@@ -663,7 +663,7 @@ static void GenerateCallMiss(MacroAssembler* masm, int argc, IC::UtilityId id) { |
// Call the entry. |
__ mov(r0, Operand(2)); |
- __ mov(r1, Operand(ExternalReference(IC_Utility(id)))); |
+ __ mov(r1, Operand(ExternalReference(IC_Utility(id), masm->isolate()))); |
CEntryStub stub(1); |
__ CallStub(&stub); |
@@ -918,7 +918,8 @@ void LoadIC::GenerateMiss(MacroAssembler* masm) { |
__ Push(r3, r2); |
// Perform tail call to the entry. |
- ExternalReference ref = ExternalReference(IC_Utility(kLoadIC_Miss)); |
+ ExternalReference ref = |
+ ExternalReference(IC_Utility(kLoadIC_Miss), masm->isolate()); |
__ TailCallExternalReference(ref, 2, 1); |
} |
@@ -1148,7 +1149,8 @@ void KeyedLoadIC::GenerateMiss(MacroAssembler* masm) { |
__ Push(r1, r0); |
- ExternalReference ref = ExternalReference(IC_Utility(kKeyedLoadIC_Miss)); |
+ ExternalReference ref = |
+ ExternalReference(IC_Utility(kKeyedLoadIC_Miss), masm->isolate()); |
__ TailCallExternalReference(ref, 2, 1); |
} |
@@ -1242,7 +1244,8 @@ void KeyedLoadIC::GenerateGeneric(MacroAssembler* masm) { |
// Load the key (consisting of map and symbol) from the cache and |
// check for match. |
- ExternalReference cache_keys = ExternalReference::keyed_lookup_cache_keys(); |
+ ExternalReference cache_keys = |
+ ExternalReference::keyed_lookup_cache_keys(masm->isolate()); |
__ mov(r4, Operand(cache_keys)); |
__ add(r4, r4, Operand(r3, LSL, kPointerSizeLog2 + 1)); |
__ ldr(r5, MemOperand(r4, kPointerSize, PostIndex)); // Move r4 to symbol. |
@@ -1257,8 +1260,8 @@ void KeyedLoadIC::GenerateGeneric(MacroAssembler* masm) { |
// r1 : receiver |
// r2 : receiver's map |
// r3 : lookup cache index |
- ExternalReference cache_field_offsets |
- = ExternalReference::keyed_lookup_cache_field_offsets(); |
+ ExternalReference cache_field_offsets = |
+ ExternalReference::keyed_lookup_cache_field_offsets(masm->isolate()); |
__ mov(r4, Operand(cache_field_offsets)); |
__ ldr(r5, MemOperand(r4, r3, LSL, kPointerSizeLog2)); |
__ ldrb(r6, FieldMemOperand(r2, Map::kInObjectPropertiesOffset)); |
@@ -1365,8 +1368,11 @@ void KeyedLoadIC::GenerateIndexedInterceptor(MacroAssembler* masm) { |
__ Push(r1, r0); // Receiver, key. |
// Perform tail call to the entry. |
- __ TailCallExternalReference(ExternalReference( |
- IC_Utility(kKeyedLoadPropertyWithInterceptor)), 2, 1); |
+ __ TailCallExternalReference( |
+ ExternalReference(IC_Utility(kKeyedLoadPropertyWithInterceptor), |
+ masm->isolate()), |
+ 2, |
+ 1); |
__ bind(&slow); |
GenerateMiss(masm); |
@@ -1384,7 +1390,8 @@ void KeyedStoreIC::GenerateMiss(MacroAssembler* masm) { |
// Push receiver, key and value for runtime call. |
__ Push(r2, r1, r0); |
- ExternalReference ref = ExternalReference(IC_Utility(kKeyedStoreIC_Miss)); |
+ ExternalReference ref = |
+ ExternalReference(IC_Utility(kKeyedStoreIC_Miss), masm->isolate()); |
__ TailCallExternalReference(ref, 3, 1); |
} |
@@ -1550,7 +1557,8 @@ void StoreIC::GenerateMiss(MacroAssembler* masm) { |
__ Push(r1, r2, r0); |
// Perform tail call to the entry. |
- ExternalReference ref = ExternalReference(IC_Utility(kStoreIC_Miss)); |
+ ExternalReference ref = |
+ ExternalReference(IC_Utility(kStoreIC_Miss), masm->isolate()); |
__ TailCallExternalReference(ref, 3, 1); |
} |
@@ -1595,7 +1603,8 @@ void StoreIC::GenerateArrayLength(MacroAssembler* masm) { |
// Prepare tail call to StoreIC_ArrayLength. |
__ Push(receiver, value); |
- ExternalReference ref = ExternalReference(IC_Utility(kStoreIC_ArrayLength)); |
+ ExternalReference ref = |
+ ExternalReference(IC_Utility(kStoreIC_ArrayLength), masm->isolate()); |
__ TailCallExternalReference(ref, 2, 1); |
__ bind(&miss); |