Index: src/x64/ic-x64.cc |
=================================================================== |
--- src/x64/ic-x64.cc (revision 7267) |
+++ src/x64/ic-x64.cc (working copy) |
@@ -579,7 +579,7 @@ |
rax, |
NULL, |
&slow); |
- __ IncrementCounter(&Counters::keyed_load_generic_smi, 1); |
+ __ IncrementCounter(COUNTERS->keyed_load_generic_smi(), 1); |
__ ret(0); |
__ bind(&check_number_dictionary); |
@@ -601,7 +601,7 @@ |
// Slow case: Jump to runtime. |
// rdx: receiver |
// rax: key |
- __ IncrementCounter(&Counters::keyed_load_generic_slow, 1); |
+ __ IncrementCounter(COUNTERS->keyed_load_generic_slow(), 1); |
GenerateRuntimeGetProperty(masm); |
__ bind(&check_string); |
@@ -652,7 +652,7 @@ |
__ movzxbq(rcx, FieldOperand(rbx, Map::kInstanceSizeOffset)); |
__ addq(rcx, rdi); |
__ movq(rax, FieldOperand(rdx, rcx, times_pointer_size, 0)); |
- __ IncrementCounter(&Counters::keyed_load_generic_lookup_cache, 1); |
+ __ IncrementCounter(COUNTERS->keyed_load_generic_lookup_cache(), 1); |
__ ret(0); |
// Load property array property. |
@@ -660,7 +660,7 @@ |
__ movq(rax, FieldOperand(rdx, JSObject::kPropertiesOffset)); |
__ movq(rax, FieldOperand(rax, rdi, times_pointer_size, |
FixedArray::kHeaderSize)); |
- __ IncrementCounter(&Counters::keyed_load_generic_lookup_cache, 1); |
+ __ IncrementCounter(COUNTERS->keyed_load_generic_lookup_cache(), 1); |
__ ret(0); |
// Do a quick inline probe of the receiver's dictionary, if it |
@@ -675,7 +675,7 @@ |
GenerateGlobalInstanceTypeCheck(masm, rcx, &slow); |
GenerateDictionaryLoad(masm, &slow, rbx, rax, rcx, rdi, rax); |
- __ IncrementCounter(&Counters::keyed_load_generic_symbol, 1); |
+ __ IncrementCounter(COUNTERS->keyed_load_generic_symbol(), 1); |
__ ret(0); |
__ bind(&index_string); |
@@ -880,7 +880,8 @@ |
Code::kNoExtraICState, |
NORMAL, |
argc); |
- StubCache::GenerateProbe(masm, flags, rdx, rcx, rbx, rax); |
+ Isolate::Current()->stub_cache()->GenerateProbe(masm, flags, rdx, rcx, rbx, |
+ rax); |
// If the stub cache probing failed, the receiver might be a value. |
// For value objects, we use the map of the prototype objects for |
@@ -916,7 +917,8 @@ |
// Probe the stub cache for the value object. |
__ bind(&probe); |
- StubCache::GenerateProbe(masm, flags, rdx, rcx, rbx, no_reg); |
+ Isolate::Current()->stub_cache()->GenerateProbe(masm, flags, rdx, rcx, rbx, |
+ no_reg); |
__ bind(&miss); |
} |
@@ -986,9 +988,9 @@ |
// ----------------------------------- |
if (id == IC::kCallIC_Miss) { |
- __ IncrementCounter(&Counters::call_miss, 1); |
+ __ IncrementCounter(COUNTERS->call_miss(), 1); |
} else { |
- __ IncrementCounter(&Counters::keyed_call_miss, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_miss(), 1); |
} |
// Get the receiver of the function from the stack; 1 ~ return address. |
@@ -1114,7 +1116,7 @@ |
GenerateFastArrayLoad( |
masm, rdx, rcx, rax, rbx, rdi, &check_number_dictionary, &slow_load); |
- __ IncrementCounter(&Counters::keyed_call_generic_smi_fast, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_generic_smi_fast(), 1); |
__ bind(&do_call); |
// receiver in rdx is not used after this point. |
@@ -1132,13 +1134,13 @@ |
__ SmiToInteger32(rbx, rcx); |
// ebx: untagged index |
GenerateNumberDictionaryLoad(masm, &slow_load, rax, rcx, rbx, r9, rdi, rdi); |
- __ IncrementCounter(&Counters::keyed_call_generic_smi_dict, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_generic_smi_dict(), 1); |
__ jmp(&do_call); |
__ bind(&slow_load); |
// This branch is taken when calling KeyedCallIC_Miss is neither required |
// nor beneficial. |
- __ IncrementCounter(&Counters::keyed_call_generic_slow_load, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_generic_slow_load(), 1); |
__ EnterInternalFrame(); |
__ push(rcx); // save the key |
__ push(rdx); // pass the receiver |
@@ -1165,11 +1167,11 @@ |
__ j(not_equal, &lookup_monomorphic_cache); |
GenerateDictionaryLoad(masm, &slow_load, rbx, rcx, rax, rdi, rdi); |
- __ IncrementCounter(&Counters::keyed_call_generic_lookup_dict, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_generic_lookup_dict(), 1); |
__ jmp(&do_call); |
__ bind(&lookup_monomorphic_cache); |
- __ IncrementCounter(&Counters::keyed_call_generic_lookup_cache, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_generic_lookup_cache(), 1); |
GenerateMonomorphicCacheProbe(masm, argc, Code::KEYED_CALL_IC); |
// Fall through on miss. |
@@ -1180,7 +1182,7 @@ |
// - the value loaded is not a function, |
// - there is hope that the runtime will create a monomorphic call stub |
// that will get fetched next time. |
- __ IncrementCounter(&Counters::keyed_call_generic_slow, 1); |
+ __ IncrementCounter(COUNTERS->keyed_call_generic_slow(), 1); |
GenerateMiss(masm, argc); |
__ bind(&index_string); |
@@ -1238,7 +1240,8 @@ |
Code::Flags flags = Code::ComputeFlags(Code::LOAD_IC, |
NOT_IN_LOOP, |
MONOMORPHIC); |
- StubCache::GenerateProbe(masm, flags, rax, rcx, rbx, rdx); |
+ Isolate::Current()->stub_cache()->GenerateProbe(masm, flags, rax, rcx, rbx, |
+ rdx); |
// Cache miss: Jump to runtime. |
StubCompiler::GenerateLoadMiss(masm, Code::LOAD_IC); |
@@ -1273,7 +1276,7 @@ |
// -- rsp[0] : return address |
// ----------------------------------- |
- __ IncrementCounter(&Counters::load_miss, 1); |
+ __ IncrementCounter(COUNTERS->load_miss(), 1); |
__ pop(rbx); |
__ push(rax); // receiver |
@@ -1356,7 +1359,7 @@ |
// (-1) or we should be clearing the inlined version. |
ASSERT(*reinterpret_cast<int*>(offset_address) == kMaxInt - 1 || |
*reinterpret_cast<int*>(offset_address) == -1 || |
- (offset == 0 && map == Heap::null_value())); |
+ (offset == 0 && map == HEAP->null_value())); |
*reinterpret_cast<int*>(offset_address) = offset - kHeapObjectTag; |
// Patch the offset in the write-barrier code. The offset is the |
@@ -1366,7 +1369,7 @@ |
// (-1) or we should be clearing the inlined version. |
ASSERT(*reinterpret_cast<int*>(offset_address) == kMaxInt || |
*reinterpret_cast<int*>(offset_address) == -1 || |
- (offset == 0 && map == Heap::null_value())); |
+ (offset == 0 && map == HEAP->null_value())); |
*reinterpret_cast<int*>(offset_address) = offset - kHeapObjectTag; |
return true; |
@@ -1417,7 +1420,7 @@ |
// -- rsp[0] : return address |
// ----------------------------------- |
- __ IncrementCounter(&Counters::keyed_load_miss, 1); |
+ __ IncrementCounter(COUNTERS->keyed_load_miss(), 1); |
__ pop(rbx); |
__ push(rdx); // receiver |
@@ -1461,7 +1464,8 @@ |
NOT_IN_LOOP, |
MONOMORPHIC, |
strict_mode); |
- StubCache::GenerateProbe(masm, flags, rdx, rcx, rbx, no_reg); |
+ Isolate::Current()->stub_cache()->GenerateProbe(masm, flags, rdx, rcx, rbx, |
+ no_reg); |
// Cache miss: Jump to runtime. |
GenerateMiss(masm); |
@@ -1558,11 +1562,11 @@ |
GenerateStringDictionaryReceiverCheck(masm, rdx, rbx, rdi, &miss); |
GenerateDictionaryStore(masm, &miss, rbx, rcx, rax, r8, r9); |
- __ IncrementCounter(&Counters::store_normal_hit, 1); |
+ __ IncrementCounter(COUNTERS->store_normal_hit(), 1); |
__ ret(0); |
__ bind(&miss); |
- __ IncrementCounter(&Counters::store_normal_miss, 1); |
+ __ IncrementCounter(COUNTERS->store_normal_miss(), 1); |
GenerateMiss(masm); |
} |