[LLVMbugs] [Bug 20113] New: Assert failure in Combine redundant instructions pass.

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Jun 24 00:37:34 PDT 2014


http://llvm.org/bugs/show_bug.cgi?id=20113

            Bug ID: 20113
           Summary: Assert failure in Combine redundant instructions pass.
           Product: new-bugs
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: kevinqindev at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

$cat test.ll

define <4 x i32> @func(<4 x i16> %a, <4 x i16> %b) #0 {
  %vmovl.i.i726 = zext <4 x i16> %a to <4 x i32>
  %vmovl.i.i712 = zext <4 x i16> %b to <4 x i32>
  %mul.i703 = mul <4 x i32> %vmovl.i.i712, %vmovl.i.i726
  %tmp = icmp sge <4 x i32> %mul.i703, zeroinitializer
  %vcgez.i = sext <4 x i1> %tmp to <4 x i32>
  ret <4 x i32> %vcgez.i
}

$opt -O3 <test.ll
opt:
/home/kevin/llvm_trunk/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp:2047:
llvm::Instruction* ProcessUMulZExtIdiom(llvm::ICmpInst&, llvm::Value*,
llvm::Value*, llvm::InstCombiner&): Assertion
`isa<IntegerType>(MulVal->getType())' failed.

Highly suspect this is caused by below commit:
r206137 - Recognize test for overflow in integer multiplication.

If revert this commit, test can pass.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20140624/8841c4fd/attachment.html>


More information about the llvm-bugs mailing list