| Index: src/x64/full-codegen-x64.cc
|
| diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc
|
| index 66bc38b2601e6df026f548dd7fe10c20de03343f..bac4e793b279bf4a86353db7024aa92352219e79 100644
|
| --- a/src/x64/full-codegen-x64.cc
|
| +++ b/src/x64/full-codegen-x64.cc
|
| @@ -3645,7 +3645,7 @@ void FullCodeGenerator::EmitStringAdd(CallRuntime* expr) {
|
| VisitForStackValue(args->at(0));
|
| VisitForStackValue(args->at(1));
|
|
|
| - StringAddStub stub(NO_STRING_ADD_FLAGS);
|
| + StringAddStub stub(STRING_ADD_CHECK_BOTH);
|
| __ CallStub(&stub);
|
| context()->Plug(rax);
|
| }
|
| @@ -4420,7 +4420,9 @@ void FullCodeGenerator::VisitCountOperation(CountOperation* expr) {
|
|
|
| // Call ToNumber only if operand is not a smi.
|
| Label no_conversion;
|
| - __ JumpIfSmi(rax, &no_conversion, Label::kNear);
|
| + if (ShouldInlineSmiCase(expr->op())) {
|
| + __ JumpIfSmi(rax, &no_conversion, Label::kNear);
|
| + }
|
| ToNumberStub convert_stub;
|
| __ CallStub(&convert_stub);
|
| __ bind(&no_conversion);
|
|
|