From 7309abeadb6ae4479aa75d8a3c732e37c3b655a6 Mon Sep 17 00:00:00 2001 From: "bmeurer@chromium.org" Date: Thu, 31 Jul 2014 09:57:59 +0000 Subject: [PATCH] Fix detection of UBFX in case of Word32And with immediate. TBR=svenpanne@chromium.org Review URL: https://codereview.chromium.org/438563002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/compiler/arm/instruction-selector-arm.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/arm/instruction-selector-arm.cc b/src/compiler/arm/instruction-selector-arm.cc index 03b0565..6f8c22f 100644 --- a/src/compiler/arm/instruction-selector-arm.cc +++ b/src/compiler/arm/instruction-selector-arm.cc @@ -418,7 +418,7 @@ void InstructionSelector::VisitWord32And(Node* node) { uint32_t value = m.right().Value(); uint32_t width = CompilerIntrinsics::CountSetBits(value); uint32_t msb = CompilerIntrinsics::CountLeadingZeros(value); - if (msb + width == 32) { + if (width != 0 && msb + width == 32) { ASSERT_EQ(0, CompilerIntrinsics::CountTrailingZeros(value)); if (m.left().IsWord32Shr()) { Int32BinopMatcher mleft(m.left().node()); -- 2.7.4