From 4891950b39ab20687a50312a705abb0b0dfc1b57 Mon Sep 17 00:00:00 2001 From: "haitao.feng@intel.com" Date: Thu, 12 Jun 2014 09:40:59 +0000 Subject: [PATCH] Remove unnecessary HCompareNumericAndBranch when generating HShr instruction. R=verwaest@chromium.org Review URL: https://codereview.chromium.org/334573003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/code-stubs-hydrogen.cc | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/code-stubs-hydrogen.cc b/src/code-stubs-hydrogen.cc index 88e71fa..26e3a69 100644 --- a/src/code-stubs-hydrogen.cc +++ b/src/code-stubs-hydrogen.cc @@ -920,20 +920,6 @@ HValue* CodeStubGraphBuilder::BuildCodeInitializedStub() { // If we encounter a generic argument, the number conversion is // observable, thus we cannot afford to bail out after the fact. if (!state.HasSideEffects()) { - if (result_type->Is(Type::SignedSmall())) { - if (state.op() == Token::SHR) { - // TODO(olivf) Replace this by a SmiTagU Instruction. - // 0x40000000: this number would convert to negative when interpreting - // the register as signed value; - IfBuilder if_of(this); - if_of.IfNot(result, - Add(static_cast(SmiValuesAre32Bits() - ? 0x80000000 : 0x40000000)), Token::EQ_STRICT); - if_of.Then(); - if_of.ElseDeopt("UInt->Smi oveflow"); - if_of.End(); - } - } result = EnforceNumberType(result, result_type); } -- 2.7.4