Chromium Code Reviews| Index: src/arm/code-stubs-arm.cc |
| =================================================================== |
| --- src/arm/code-stubs-arm.cc (revision 8025) |
| +++ src/arm/code-stubs-arm.cc (working copy) |
| @@ -1707,14 +1707,14 @@ |
| } |
| -Handle<Code> GetTypeRecordingUnaryOpStub(int key, |
| - TRUnaryOpIC::TypeInfo type_info) { |
| - TypeRecordingUnaryOpStub stub(key, type_info); |
| +Handle<Code> GetUnaryOpStub(int key, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| + UnaryOpIC::TypeInfo type_info) { |
| + UnaryOpStub stub(key, type_info); |
| return stub.GetCode(); |
| } |
| -const char* TypeRecordingUnaryOpStub::GetName() { |
| +const char* UnaryOpStub::GetName() { |
| if (name_ != NULL) return name_; |
| const int kMaxNameLength = 100; |
| name_ = Isolate::Current()->bootstrapper()->AllocateAutoDeletedArray( |
| @@ -1728,34 +1728,34 @@ |
| } |
| OS::SNPrintF(Vector<char>(name_, kMaxNameLength), |
| - "TypeRecordingUnaryOpStub_%s_%s_%s", |
| + "UnaryOpStub_%s_%s_%s", |
| op_name, |
| overwrite_name, |
| - TRUnaryOpIC::GetName(operand_type_)); |
| + UnaryOpIC::GetName(operand_type_)); |
| return name_; |
| } |
| // TODO(svenpanne): Use virtual functions instead of switch. |
| -void TypeRecordingUnaryOpStub::Generate(MacroAssembler* masm) { |
| +void UnaryOpStub::Generate(MacroAssembler* masm) { |
| switch (operand_type_) { |
| - case TRUnaryOpIC::UNINITIALIZED: |
| + case UnaryOpIC::UNINITIALIZED: |
| GenerateTypeTransition(masm); |
| break; |
| - case TRUnaryOpIC::SMI: |
| + case UnaryOpIC::SMI: |
| GenerateSmiStub(masm); |
| break; |
| - case TRUnaryOpIC::HEAP_NUMBER: |
| + case UnaryOpIC::HEAP_NUMBER: |
| GenerateHeapNumberStub(masm); |
| break; |
| - case TRUnaryOpIC::GENERIC: |
| + case UnaryOpIC::GENERIC: |
| GenerateGenericStub(masm); |
| break; |
| } |
| } |
| -void TypeRecordingUnaryOpStub::GenerateTypeTransition(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateTypeTransition(MacroAssembler* masm) { |
| // Prepare to push argument. |
| __ mov(r3, Operand(r0)); |
| @@ -1768,7 +1768,7 @@ |
| __ Push(r3, r2, r1, r0); |
| __ TailCallExternalReference( |
| - ExternalReference(IC_Utility(IC::kTypeRecordingUnaryOp_Patch), |
| + ExternalReference(IC_Utility(IC::kUnaryOp_Patch), |
| masm->isolate()), |
| 4, |
| 1); |
| @@ -1776,7 +1776,7 @@ |
| // TODO(svenpanne): Use virtual functions instead of switch. |
| -void TypeRecordingUnaryOpStub::GenerateSmiStub(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateSmiStub(MacroAssembler* masm) { |
| switch (op_) { |
| case Token::SUB: |
| GenerateSmiStubSub(masm); |
| @@ -1790,7 +1790,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateSmiStubSub(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateSmiStubSub(MacroAssembler* masm) { |
| Label non_smi, slow; |
| GenerateSmiCodeSub(masm, &non_smi, &slow); |
| __ bind(&non_smi); |
| @@ -1799,7 +1799,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateSmiStubBitNot(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateSmiStubBitNot(MacroAssembler* masm) { |
| Label non_smi; |
| GenerateSmiCodeBitNot(masm, &non_smi); |
| __ bind(&non_smi); |
| @@ -1807,7 +1807,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateSmiCodeSub(MacroAssembler* masm, |
| +void UnaryOpStub::GenerateSmiCodeSub(MacroAssembler* masm, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| Label* non_smi, |
| Label* slow) { |
| __ JumpIfNotSmi(r0, non_smi); |
| @@ -1822,7 +1822,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateSmiCodeBitNot(MacroAssembler* masm, |
| +void UnaryOpStub::GenerateSmiCodeBitNot(MacroAssembler* masm, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| Label* non_smi) { |
| __ JumpIfNotSmi(r0, non_smi); |
| @@ -1834,7 +1834,7 @@ |
| // TODO(svenpanne): Use virtual functions instead of switch. |
| -void TypeRecordingUnaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) { |
| switch (op_) { |
| case Token::SUB: |
| GenerateHeapNumberStubSub(masm); |
| @@ -1848,7 +1848,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateHeapNumberStubSub(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateHeapNumberStubSub(MacroAssembler* masm) { |
| Label non_smi, slow, call_builtin; |
| GenerateSmiCodeSub(masm, &non_smi, &call_builtin); |
| __ bind(&non_smi); |
| @@ -1860,7 +1860,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateHeapNumberStubBitNot( |
| +void UnaryOpStub::GenerateHeapNumberStubBitNot( |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Fits on one line?
fschneider
2011/05/24 12:16:41
Done.
|
| MacroAssembler* masm) { |
| Label non_smi, slow; |
| GenerateSmiCodeBitNot(masm, &non_smi); |
| @@ -1870,7 +1870,7 @@ |
| GenerateTypeTransition(masm); |
| } |
| -void TypeRecordingUnaryOpStub::GenerateHeapNumberCodeSub(MacroAssembler* masm, |
| +void UnaryOpStub::GenerateHeapNumberCodeSub(MacroAssembler* masm, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| Label* slow) { |
| EmitCheckForHeapNumber(masm, r0, r1, r6, slow); |
| // r0 is a heap number. Get a new heap number in r1. |
| @@ -1903,7 +1903,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateHeapNumberCodeBitNot( |
| +void UnaryOpStub::GenerateHeapNumberCodeBitNot( |
| MacroAssembler* masm, Label* slow) { |
| EmitCheckForHeapNumber(masm, r0, r1, r6, slow); |
| // Convert the heap number is r0 to an untagged integer in r1. |
| @@ -1954,7 +1954,7 @@ |
| // TODO(svenpanne): Use virtual functions instead of switch. |
| -void TypeRecordingUnaryOpStub::GenerateGenericStub(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateGenericStub(MacroAssembler* masm) { |
| switch (op_) { |
| case Token::SUB: |
| GenerateGenericStubSub(masm); |
| @@ -1968,7 +1968,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateGenericStubSub(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateGenericStubSub(MacroAssembler* masm) { |
| Label non_smi, slow; |
| GenerateSmiCodeSub(masm, &non_smi, &slow); |
| __ bind(&non_smi); |
| @@ -1978,7 +1978,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateGenericStubBitNot(MacroAssembler* masm) { |
| +void UnaryOpStub::GenerateGenericStubBitNot(MacroAssembler* masm) { |
| Label non_smi, slow; |
| GenerateSmiCodeBitNot(masm, &non_smi); |
| __ bind(&non_smi); |
| @@ -1988,7 +1988,7 @@ |
| } |
| -void TypeRecordingUnaryOpStub::GenerateGenericCodeFallback( |
| +void UnaryOpStub::GenerateGenericCodeFallback( |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Fits on one line?
fschneider
2011/05/24 12:16:41
Done.
|
| MacroAssembler* masm) { |
| // Handle the slow case by jumping to the JavaScript builtin. |
| __ push(r0); |
| @@ -2005,15 +2005,15 @@ |
| } |
| -Handle<Code> GetTypeRecordingBinaryOpStub(int key, |
| - TRBinaryOpIC::TypeInfo type_info, |
| - TRBinaryOpIC::TypeInfo result_type_info) { |
| - TypeRecordingBinaryOpStub stub(key, type_info, result_type_info); |
| +Handle<Code> GetBinaryOpStub(int key, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Full indentation (not 4 spaces) or int key on a se
fschneider
2011/05/24 12:16:41
Done.
|
| + BinaryOpIC::TypeInfo type_info, |
| + BinaryOpIC::TypeInfo result_type_info) { |
| + BinaryOpStub stub(key, type_info, result_type_info); |
| return stub.GetCode(); |
| } |
| -void TypeRecordingBinaryOpStub::GenerateTypeTransition(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateTypeTransition(MacroAssembler* masm) { |
| Label get_result; |
| __ Push(r1, r0); |
| @@ -2024,43 +2024,43 @@ |
| __ Push(r2, r1, r0); |
| __ TailCallExternalReference( |
| - ExternalReference(IC_Utility(IC::kTypeRecordingBinaryOp_Patch), |
| + ExternalReference(IC_Utility(IC::kBinaryOp_Patch), |
| masm->isolate()), |
| 5, |
| 1); |
| } |
| -void TypeRecordingBinaryOpStub::GenerateTypeTransitionWithSavedArgs( |
| +void BinaryOpStub::GenerateTypeTransitionWithSavedArgs( |
| MacroAssembler* masm) { |
| UNIMPLEMENTED(); |
| } |
| -void TypeRecordingBinaryOpStub::Generate(MacroAssembler* masm) { |
| +void BinaryOpStub::Generate(MacroAssembler* masm) { |
| switch (operands_type_) { |
| - case TRBinaryOpIC::UNINITIALIZED: |
| + case BinaryOpIC::UNINITIALIZED: |
| GenerateTypeTransition(masm); |
| break; |
| - case TRBinaryOpIC::SMI: |
| + case BinaryOpIC::SMI: |
| GenerateSmiStub(masm); |
| break; |
| - case TRBinaryOpIC::INT32: |
| + case BinaryOpIC::INT32: |
| GenerateInt32Stub(masm); |
| break; |
| - case TRBinaryOpIC::HEAP_NUMBER: |
| + case BinaryOpIC::HEAP_NUMBER: |
| GenerateHeapNumberStub(masm); |
| break; |
| - case TRBinaryOpIC::ODDBALL: |
| + case BinaryOpIC::ODDBALL: |
| GenerateOddballStub(masm); |
| break; |
| - case TRBinaryOpIC::BOTH_STRING: |
| + case BinaryOpIC::BOTH_STRING: |
| GenerateBothStringStub(masm); |
| break; |
| - case TRBinaryOpIC::STRING: |
| + case BinaryOpIC::STRING: |
| GenerateStringStub(masm); |
| break; |
| - case TRBinaryOpIC::GENERIC: |
| + case BinaryOpIC::GENERIC: |
| GenerateGeneric(masm); |
| break; |
| default: |
| @@ -2069,7 +2069,7 @@ |
| } |
| -const char* TypeRecordingBinaryOpStub::GetName() { |
| +const char* BinaryOpStub::GetName() { |
| if (name_ != NULL) return name_; |
| const int kMaxNameLength = 100; |
| name_ = Isolate::Current()->bootstrapper()->AllocateAutoDeletedArray( |
| @@ -2085,15 +2085,15 @@ |
| } |
| OS::SNPrintF(Vector<char>(name_, kMaxNameLength), |
| - "TypeRecordingBinaryOpStub_%s_%s_%s", |
| + "BinaryOpStub_%s_%s_%s", |
| op_name, |
| overwrite_name, |
| - TRBinaryOpIC::GetName(operands_type_)); |
| + BinaryOpIC::GetName(operands_type_)); |
| return name_; |
| } |
| -void TypeRecordingBinaryOpStub::GenerateSmiSmiOperation( |
| +void BinaryOpStub::GenerateSmiSmiOperation( |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Fits one line?
fschneider
2011/05/24 12:16:41
Done.
|
| MacroAssembler* masm) { |
| Register left = r1; |
| Register right = r0; |
| @@ -2219,7 +2219,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateFPOperation(MacroAssembler* masm, |
| +void BinaryOpStub::GenerateFPOperation(MacroAssembler* masm, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| bool smi_operands, |
| Label* not_numbers, |
| Label* gc_required) { |
| @@ -2433,7 +2433,7 @@ |
| // generated. If the result is not a smi and heap number allocation is not |
| // requested the code falls through. If number allocation is requested but a |
| // heap number cannot be allocated the code jumps to the lable gc_required. |
| -void TypeRecordingBinaryOpStub::GenerateSmiCode(MacroAssembler* masm, |
| +void BinaryOpStub::GenerateSmiCode(MacroAssembler* masm, |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
MacroAssembler* masm, should go on a separate line
fschneider
2011/05/24 12:16:41
Done.
|
| Label* use_runtime, |
| Label* gc_required, |
| SmiCodeGenerateHeapNumberResults allow_heapnumber_results) { |
| @@ -2462,11 +2462,11 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateSmiStub(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateSmiStub(MacroAssembler* masm) { |
| Label not_smis, call_runtime; |
| - if (result_type_ == TRBinaryOpIC::UNINITIALIZED || |
| - result_type_ == TRBinaryOpIC::SMI) { |
| + if (result_type_ == BinaryOpIC::UNINITIALIZED || |
| + result_type_ == BinaryOpIC::SMI) { |
| // Only allow smi results. |
| GenerateSmiCode(masm, &call_runtime, NULL, NO_HEAPNUMBER_RESULTS); |
| } else { |
| @@ -2487,19 +2487,19 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateStringStub(MacroAssembler* masm) { |
| - ASSERT(operands_type_ == TRBinaryOpIC::STRING); |
| +void BinaryOpStub::GenerateStringStub(MacroAssembler* masm) { |
| + ASSERT(operands_type_ == BinaryOpIC::STRING); |
| ASSERT(op_ == Token::ADD); |
| // Try to add arguments as strings, otherwise, transition to the generic |
| - // TRBinaryOpIC type. |
| + // BinaryOpIC type. |
| GenerateAddStrings(masm); |
| GenerateTypeTransition(masm); |
| } |
| -void TypeRecordingBinaryOpStub::GenerateBothStringStub(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateBothStringStub(MacroAssembler* masm) { |
| Label call_runtime; |
| - ASSERT(operands_type_ == TRBinaryOpIC::BOTH_STRING); |
| + ASSERT(operands_type_ == BinaryOpIC::BOTH_STRING); |
| ASSERT(op_ == Token::ADD); |
| // If both arguments are strings, call the string add stub. |
| // Otherwise, do a transition. |
| @@ -2527,8 +2527,8 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateInt32Stub(MacroAssembler* masm) { |
| - ASSERT(operands_type_ == TRBinaryOpIC::INT32); |
| +void BinaryOpStub::GenerateInt32Stub(MacroAssembler* masm) { |
| + ASSERT(operands_type_ == BinaryOpIC::INT32); |
| Register left = r1; |
| Register right = r0; |
| @@ -2625,7 +2625,7 @@ |
| scratch1, |
| scratch2); |
| - if (result_type_ <= TRBinaryOpIC::INT32) { |
| + if (result_type_ <= BinaryOpIC::INT32) { |
| // If the ne condition is set, result does |
| // not fit in a 32-bit integer. |
| __ b(ne, &transition); |
| @@ -2652,8 +2652,8 @@ |
| // DIV just falls through to allocating a heap number. |
| } |
| - if (result_type_ >= (op_ == Token::DIV) ? TRBinaryOpIC::HEAP_NUMBER |
| - : TRBinaryOpIC::INT32) { |
| + if (result_type_ >= (op_ == Token::DIV) ? BinaryOpIC::HEAP_NUMBER |
| + : BinaryOpIC::INT32) { |
| __ bind(&return_heap_number); |
| // We are using vfp registers so r5 is available. |
| heap_number_result = r5; |
| @@ -2763,10 +2763,10 @@ |
| // runtime if we don't support it. |
| if (CpuFeatures::IsSupported(VFP3)) { |
| __ b(mi, |
| - (result_type_ <= TRBinaryOpIC::INT32) ? &transition |
| + (result_type_ <= BinaryOpIC::INT32) ? &transition |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| : &return_heap_number); |
| } else { |
| - __ b(mi, (result_type_ <= TRBinaryOpIC::INT32) ? &transition |
| + __ b(mi, (result_type_ <= BinaryOpIC::INT32) ? &transition |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| : &call_runtime); |
| } |
| break; |
| @@ -2837,7 +2837,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateOddballStub(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateOddballStub(MacroAssembler* masm) { |
| Label call_runtime; |
| if (op_ == Token::ADD) { |
| @@ -2870,7 +2870,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) { |
| Label call_runtime; |
| GenerateFPOperation(masm, false, &call_runtime, &call_runtime); |
| @@ -2879,7 +2879,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateGeneric(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateGeneric(MacroAssembler* masm) { |
| Label call_runtime, call_string_add_or_runtime; |
| GenerateSmiCode(masm, &call_runtime, &call_runtime, ALLOW_HEAPNUMBER_RESULTS); |
| @@ -2896,7 +2896,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateAddStrings(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateAddStrings(MacroAssembler* masm) { |
| ASSERT(op_ == Token::ADD); |
| Label left_not_string, call_runtime; |
| @@ -2927,7 +2927,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateCallRuntime(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateCallRuntime(MacroAssembler* masm) { |
| GenerateRegisterArgsPush(masm); |
| switch (op_) { |
| case Token::ADD: |
| @@ -2969,7 +2969,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateHeapResultAllocation( |
| +void BinaryOpStub::GenerateHeapResultAllocation( |
|
Søren Thygesen Gjesse
2011/05/24 11:33:11
Fits full indentation.
fschneider
2011/05/24 12:16:41
Done.
|
| MacroAssembler* masm, |
| Register result, |
| Register heap_number_map, |
| @@ -3003,7 +3003,7 @@ |
| } |
| -void TypeRecordingBinaryOpStub::GenerateRegisterArgsPush(MacroAssembler* masm) { |
| +void BinaryOpStub::GenerateRegisterArgsPush(MacroAssembler* masm) { |
| __ Push(r1, r0); |
| } |