| Index: src/ia32/code-stubs-ia32.h
|
| diff --git a/src/ia32/code-stubs-ia32.h b/src/ia32/code-stubs-ia32.h
|
| index 803a711de9694efeacc907db44d1f7342980d006..29c16e1304ba17f5520dfcbe67dcd23de197a38f 100644
|
| --- a/src/ia32/code-stubs-ia32.h
|
| +++ b/src/ia32/code-stubs-ia32.h
|
| @@ -154,96 +154,6 @@ class UnaryOpStub: public CodeStub {
|
| };
|
|
|
|
|
| -class BinaryOpStub: public CodeStub {
|
| - public:
|
| - BinaryOpStub(Token::Value op, OverwriteMode mode)
|
| - : op_(op),
|
| - mode_(mode),
|
| - operands_type_(BinaryOpIC::UNINITIALIZED),
|
| - result_type_(BinaryOpIC::UNINITIALIZED) {
|
| - use_sse3_ = CpuFeatures::IsSupported(SSE3);
|
| - ASSERT(OpBits::is_valid(Token::NUM_TOKENS));
|
| - }
|
| -
|
| - BinaryOpStub(
|
| - int key,
|
| - BinaryOpIC::TypeInfo operands_type,
|
| - BinaryOpIC::TypeInfo result_type = BinaryOpIC::UNINITIALIZED)
|
| - : op_(OpBits::decode(key)),
|
| - mode_(ModeBits::decode(key)),
|
| - use_sse3_(SSE3Bits::decode(key)),
|
| - operands_type_(operands_type),
|
| - result_type_(result_type) { }
|
| -
|
| - private:
|
| - enum SmiCodeGenerateHeapNumberResults {
|
| - ALLOW_HEAPNUMBER_RESULTS,
|
| - NO_HEAPNUMBER_RESULTS
|
| - };
|
| -
|
| - Token::Value op_;
|
| - OverwriteMode mode_;
|
| - bool use_sse3_;
|
| -
|
| - // Operand type information determined at runtime.
|
| - BinaryOpIC::TypeInfo operands_type_;
|
| - BinaryOpIC::TypeInfo result_type_;
|
| -
|
| - virtual void PrintName(StringStream* stream);
|
| -
|
| - // Minor key encoding in 16 bits RRRTTTSOOOOOOOMM.
|
| - class ModeBits: public BitField<OverwriteMode, 0, 2> {};
|
| - class OpBits: public BitField<Token::Value, 2, 7> {};
|
| - class SSE3Bits: public BitField<bool, 9, 1> {};
|
| - class OperandTypeInfoBits: public BitField<BinaryOpIC::TypeInfo, 10, 3> {};
|
| - class ResultTypeInfoBits: public BitField<BinaryOpIC::TypeInfo, 13, 3> {};
|
| -
|
| - Major MajorKey() { return BinaryOp; }
|
| - int MinorKey() {
|
| - return OpBits::encode(op_)
|
| - | ModeBits::encode(mode_)
|
| - | SSE3Bits::encode(use_sse3_)
|
| - | OperandTypeInfoBits::encode(operands_type_)
|
| - | ResultTypeInfoBits::encode(result_type_);
|
| - }
|
| -
|
| - void Generate(MacroAssembler* masm);
|
| - void GenerateGeneric(MacroAssembler* masm);
|
| - void GenerateSmiCode(MacroAssembler* masm,
|
| - Label* slow,
|
| - SmiCodeGenerateHeapNumberResults heapnumber_results);
|
| - void GenerateLoadArguments(MacroAssembler* masm);
|
| - void GenerateReturn(MacroAssembler* masm);
|
| - void GenerateUninitializedStub(MacroAssembler* masm);
|
| - void GenerateSmiStub(MacroAssembler* masm);
|
| - void GenerateInt32Stub(MacroAssembler* masm);
|
| - void GenerateHeapNumberStub(MacroAssembler* masm);
|
| - void GenerateOddballStub(MacroAssembler* masm);
|
| - void GenerateStringStub(MacroAssembler* masm);
|
| - void GenerateBothStringStub(MacroAssembler* masm);
|
| - void GenerateGenericStub(MacroAssembler* masm);
|
| - void GenerateAddStrings(MacroAssembler* masm);
|
| -
|
| - void GenerateHeapResultAllocation(MacroAssembler* masm, Label* alloc_failure);
|
| - void GenerateRegisterArgsPush(MacroAssembler* masm);
|
| - void GenerateTypeTransition(MacroAssembler* masm);
|
| - void GenerateTypeTransitionWithSavedArgs(MacroAssembler* masm);
|
| -
|
| - virtual int GetCodeKind() { return Code::BINARY_OP_IC; }
|
| -
|
| - virtual InlineCacheState GetICState() {
|
| - return BinaryOpIC::ToState(operands_type_);
|
| - }
|
| -
|
| - virtual void FinishCode(Handle<Code> code) {
|
| - code->set_binary_op_type(operands_type_);
|
| - code->set_binary_op_result_type(result_type_);
|
| - }
|
| -
|
| - friend class CodeGenerator;
|
| -};
|
| -
|
| -
|
| class StringHelper : public AllStatic {
|
| public:
|
| // Generate code for copying characters using a simple loop. This should only
|
|
|