llvm-6502/lib
Sanjay Patel 821bba7fda avoid infinite looping when folding vector multiplies of constants (PR22698)
We were missing a check for the following fold in DAGCombiner:

// fold (fmul (fmul x, c1), c2) -> (fmul x, (fmul c1, c2))

If 'x' is also a constant, then we shouldn't do anything. Otherwise, we could end up swapping the operands back and forth forever.

This should fix:
http://llvm.org/bugs/show_bug.cgi?id=22698

Differential Revision: http://reviews.llvm.org/D7917



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230884 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-01 00:09:35 +00:00
..
Analysis
AsmParser Optimize metadata node fields for CHECK-ability 2015-02-28 23:21:38 +00:00
Bitcode
CodeGen avoid infinite looping when folding vector multiplies of constants (PR22698) 2015-03-01 00:09:35 +00:00
DebugInfo [llvm-pdbdump] Better error handling. 2015-02-28 20:23:18 +00:00
ExecutionEngine
Fuzzer
IR DebugInfo: Use TempMDNode in DIDescriptor::replaceAllUsesWith() 2015-02-28 23:48:02 +00:00
IRReader
LineEditor
Linker
LTO
MC
Object
Option
ProfileData
Support
TableGen
Target [X86] Remove the blendpd/blendps/pblendw/pblendd intrinsics. They can represented by shuffle_vector instructions. 2015-02-28 19:33:17 +00:00
Transforms
CMakeLists.txt
LLVMBuild.txt
Makefile