Index: src/ic.cc |
=================================================================== |
--- src/ic.cc (revision 5976) |
+++ src/ic.cc (working copy) |
@@ -1951,7 +1951,7 @@ |
TRBinaryOpIC::TypeInfo TRBinaryOpIC::JoinTypes(TRBinaryOpIC::TypeInfo x, |
- TRBinaryOpIC::TypeInfo y) { |
+ TRBinaryOpIC::TypeInfo y) { |
if (x == UNINITIALIZED) return y; |
if (y == UNINITIALIZED) return x; |
if (x == STRING && y == STRING) return STRING; |
@@ -2041,11 +2041,6 @@ |
TRBinaryOpIC::GetName(result_type), |
Token::Name(op)); |
} |
- |
- // Activate inlined smi code. |
- if (previous_type == TRBinaryOpIC::UNINITIALIZED) { |
- PatchInlinedSmiCode(ic.address()); |
- } |
} |
Handle<JSBuiltinsObject> builtins = Top::builtins(); |
@@ -2132,17 +2127,13 @@ |
} |
-CompareIC::State CompareIC::TargetState(State state, |
- bool has_inlined_smi_code, |
- Handle<Object> x, |
- Handle<Object> y) { |
- if (!has_inlined_smi_code && state != UNINITIALIZED) return GENERIC; |
- if (state == UNINITIALIZED && x->IsSmi() && y->IsSmi()) return SMIS; |
- if ((state == UNINITIALIZED || (state == SMIS && has_inlined_smi_code)) && |
- x->IsNumber() && y->IsNumber()) return HEAP_NUMBERS; |
+CompareIC::State CompareIC::TargetState(Handle<Object> x, Handle<Object> y) { |
+ State state = GetState(); |
+ if (state != UNINITIALIZED) return GENERIC; |
+ if (x->IsSmi() && y->IsSmi()) return SMIS; |
+ if (x->IsNumber() && y->IsNumber()) return HEAP_NUMBERS; |
if (op_ != Token::EQ && op_ != Token::EQ_STRICT) return GENERIC; |
- if (state == UNINITIALIZED && |
- x->IsJSObject() && y->IsJSObject()) return OBJECTS; |
+ if (x->IsJSObject() && y->IsJSObject()) return OBJECTS; |
return GENERIC; |
} |