[LLVMbugs] [Bug 2756] infinite loop in instcombine after mem2reg

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Wed Dec 17 22:31:53 PST 2008


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


Nick Lewycky <nicholas at mxc.ca> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|                            |FIXED




--- Comment #6 from Nick Lewycky <nicholas at mxc.ca>  2008-12-18 00:31:52 ---
I agree in general, but in this case it's hard to analyze for vectors. What we
already did is the equivalent to the scalar case:
  %A = sub <2 x i8> 0, %y
  %B = sdiv <2 x i8> %x, %A
-->
  %B = sdiv <2 x i8> %x, %y

With r61195 I just added the ability to flip negatives in constant vectors:
  %A = sdiv <2 x i8> %x, <i8 1, i8 -2>
-->
  %A = sdiv <2 x i8> %x, <i8 1, i8 2>

But for a non-constant vector we'd have walk the insertelement chain that made
up the vector, looking for negate-able values. That's hard enough to implement
that I wont do it unless you demonstrate it's a real-world problem.


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list