| Index: src/arm64/lithium-codegen-arm64.cc
|
| diff --git a/src/arm64/lithium-codegen-arm64.cc b/src/arm64/lithium-codegen-arm64.cc
|
| index e256ed0b0aed32c78e8a79e8aaa5c08d871e8716..488e14f82c5b7ba974f099fddeb7344c9648583f 100644
|
| --- a/src/arm64/lithium-codegen-arm64.cc
|
| +++ b/src/arm64/lithium-codegen-arm64.cc
|
| @@ -2098,11 +2098,6 @@ void LCodeGen::DoCallStub(LCallStub* instr) {
|
| CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr);
|
| break;
|
| }
|
| - case CodeStub::StringCompare: {
|
| - StringCompareStub stub(isolate());
|
| - CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr);
|
| - break;
|
| - }
|
| default:
|
| UNREACHABLE();
|
| }
|
| @@ -5503,16 +5498,13 @@ void LCodeGen::DoDeferredStringCharFromCode(LStringCharFromCode* instr) {
|
|
|
| void LCodeGen::DoStringCompareAndBranch(LStringCompareAndBranch* instr) {
|
| DCHECK(ToRegister(instr->context()).is(cp));
|
| - Token::Value op = instr->op();
|
| -
|
| - Handle<Code> ic =
|
| - CodeFactory::CompareIC(isolate(), op, Strength::WEAK).code();
|
| - CallCode(ic, RelocInfo::CODE_TARGET, instr);
|
| - InlineSmiCheckInfo::EmitNotInlined(masm());
|
| + DCHECK(ToRegister(instr->left()).is(x1));
|
| + DCHECK(ToRegister(instr->right()).is(x0));
|
|
|
| - Condition condition = TokenToCondition(op, false);
|
| + Handle<Code> code = CodeFactory::StringCompare(isolate()).code();
|
| + CallCode(code, RelocInfo::CODE_TARGET, instr);
|
|
|
| - EmitCompareAndBranch(instr, condition, x0, 0);
|
| + EmitCompareAndBranch(instr, TokenToCondition(instr->op(), false), x0, 0);
|
| }
|
|
|
|
|
|
|