Index: src/ia32/code-stubs-ia32.cc |
diff --git a/src/ia32/code-stubs-ia32.cc b/src/ia32/code-stubs-ia32.cc |
index eaff1b8fad1dd608b57950067808ebabe28ea183..2db3e65a4718b2dc929d0c21befd77a6ea10d209 100644 |
--- a/src/ia32/code-stubs-ia32.cc |
+++ b/src/ia32/code-stubs-ia32.cc |
@@ -364,7 +364,8 @@ void GenericBinaryOpStub::GenerateCall( |
// Update flags to indicate that arguments are in registers. |
SetArgsInRegisters(); |
- __ IncrementCounter(COUNTERS->generic_binary_stub_calls_regs(), 1); |
+ __ IncrementCounter( |
+ masm->isolate()->counters()->generic_binary_stub_calls_regs(), 1); |
} |
// Call the stub. |
@@ -400,7 +401,8 @@ void GenericBinaryOpStub::GenerateCall( |
// Update flags to indicate that arguments are in registers. |
SetArgsInRegisters(); |
- __ IncrementCounter(COUNTERS->generic_binary_stub_calls_regs(), 1); |
+ __ IncrementCounter( |
+ masm->isolate()->counters()->generic_binary_stub_calls_regs(), 1); |
} |
// Call the stub. |
@@ -435,7 +437,8 @@ void GenericBinaryOpStub::GenerateCall( |
} |
// Update flags to indicate that arguments are in registers. |
SetArgsInRegisters(); |
- __ IncrementCounter(COUNTERS->generic_binary_stub_calls_regs(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->generic_binary_stub_calls_regs(), 1); |
} |
// Call the stub. |
@@ -878,7 +881,8 @@ void GenericBinaryOpStub::GenerateSmiCode(MacroAssembler* masm, Label* slow) { |
void GenericBinaryOpStub::Generate(MacroAssembler* masm) { |
Label call_runtime; |
- __ IncrementCounter(COUNTERS->generic_binary_stub_calls(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->generic_binary_stub_calls(), 1); |
if (runtime_operands_type_ == BinaryOpIC::UNINIT_OR_SMI) { |
Label slow; |
@@ -2200,7 +2204,8 @@ void TypeRecordingBinaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) { |
void TypeRecordingBinaryOpStub::GenerateGeneric(MacroAssembler* masm) { |
Label call_runtime; |
- __ IncrementCounter(COUNTERS->generic_binary_stub_calls(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->generic_binary_stub_calls(), 1); |
switch (op_) { |
case Token::ADD: |
@@ -3906,7 +3911,8 @@ void RegExpExecStub::Generate(MacroAssembler* masm) { |
// edx: code |
// edi: encoding of subject string (1 if ascii 0 if two_byte); |
// All checks done. Now push arguments for native regexp code. |
- __ IncrementCounter(COUNTERS->regexp_entry_native(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->regexp_entry_native(), 1); |
// Isolates: note we add an additional parameter here (isolate pointer). |
static const int kRegExpExecuteArguments = 8; |
@@ -4251,7 +4257,8 @@ void NumberToStringStub::GenerateLookupNumberStringCache(MacroAssembler* masm, |
index, |
times_twice_pointer_size, |
FixedArray::kHeaderSize + kPointerSize)); |
- __ IncrementCounter(COUNTERS->number_to_string_native(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->number_to_string_native(), 1); |
} |
@@ -5534,7 +5541,8 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ test(ecx, Operand(ecx)); |
__ j(not_zero, &second_not_zero_length); |
// Second string is empty, result is first string which is already in eax. |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
__ bind(&second_not_zero_length); |
__ mov(ebx, FieldOperand(eax, String::kLengthOffset)); |
@@ -5543,7 +5551,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ j(not_zero, &both_not_zero_length); |
// First string is empty, result is second string which is in edx. |
__ mov(eax, edx); |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
// Both strings are non-empty. |
@@ -5577,7 +5585,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
StringHelper::GenerateTwoCharacterSymbolTableProbe( |
masm, ebx, ecx, eax, edx, edi, |
&make_two_character_string_no_reload, &make_two_character_string); |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
// Allocate a two character string. |
@@ -5589,7 +5597,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ movzx_b(ebx, FieldOperand(eax, SeqAsciiString::kHeaderSize)); |
__ movzx_b(ecx, FieldOperand(edx, SeqAsciiString::kHeaderSize)); |
__ bind(&make_two_character_string_no_reload); |
- __ IncrementCounter(COUNTERS->string_add_make_two_char(), 1); |
+ __ IncrementCounter(counters->string_add_make_two_char(), 1); |
__ AllocateAsciiString(eax, // Result. |
2, // Length. |
edi, // Scratch 1. |
@@ -5600,7 +5608,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ or_(ebx, Operand(ecx)); |
// Set the characters in the new string. |
__ mov_w(FieldOperand(eax, SeqAsciiString::kHeaderSize), ebx); |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
__ bind(&longer_than_two); |
@@ -5631,7 +5639,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ mov(FieldOperand(ecx, ConsString::kFirstOffset), eax); |
__ mov(FieldOperand(ecx, ConsString::kSecondOffset), edx); |
__ mov(eax, ecx); |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
__ bind(&non_ascii); |
// At least one of the strings is two-byte. Check whether it happens |
@@ -5708,7 +5716,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
// edx: first char of second argument |
// edi: length of second argument |
StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, true); |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
// Handle creating a flat two byte result. |
@@ -5749,7 +5757,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
// edx: first char of second argument |
// edi: length of second argument |
StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, false); |
- __ IncrementCounter(COUNTERS->string_add_native(), 1); |
+ __ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
// Just jump to runtime to add the two strings. |
@@ -6174,7 +6182,8 @@ void SubStringStub::Generate(MacroAssembler* masm) { |
// esi: character of sub string start |
StringHelper::GenerateCopyCharactersREP(masm, edi, esi, ecx, ebx, true); |
__ mov(esi, edx); // Restore esi. |
- __ IncrementCounter(COUNTERS->sub_string_native(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->sub_string_native(), 1); |
__ ret(3 * kPointerSize); |
__ bind(&non_ascii_flat); |
@@ -6215,7 +6224,7 @@ void SubStringStub::Generate(MacroAssembler* masm) { |
__ mov(esi, edx); // Restore esi. |
__ bind(&return_eax); |
- __ IncrementCounter(COUNTERS->sub_string_native(), 1); |
+ __ IncrementCounter(counters->sub_string_native(), 1); |
__ ret(3 * kPointerSize); |
// Just jump to runtime to create the sub string. |
@@ -6234,7 +6243,8 @@ void StringCompareStub::GenerateCompareFlatAsciiStrings(MacroAssembler* masm, |
Label result_greater; |
Label compare_lengths; |
- __ IncrementCounter(COUNTERS->string_compare_native(), 1); |
+ Counters* counters = masm->isolate()->counters(); |
+ __ IncrementCounter(counters->string_compare_native(), 1); |
// Find minimum length. |
NearLabel left_shorter; |
@@ -6325,7 +6335,7 @@ void StringCompareStub::Generate(MacroAssembler* masm) { |
STATIC_ASSERT(EQUAL == 0); |
STATIC_ASSERT(kSmiTag == 0); |
__ Set(eax, Immediate(Smi::FromInt(EQUAL))); |
- __ IncrementCounter(COUNTERS->string_compare_native(), 1); |
+ __ IncrementCounter(masm->isolate()->counters()->string_compare_native(), 1); |
__ ret(2 * kPointerSize); |
__ bind(¬_same); |