llvm-6502/test/Transforms
Quentin Colombet c5a4c25b87 Fix a bug in instcombine for fmul in fast math mode.
The instcombine recognized pattern looks like:
a = b * c
d = a +/- Cst
or
a = b * c
d = Cst +/- a

When creating the new operands for fadd or fsub instruction following the related fmul, the first operand was created with the second original operand (M0 was created with C1) and the second with the first (M1 with Opnd0).

The fix consists in creating the new operands with the appropriate original operand, i.e., M0 with Opnd0 and M1 with C1.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176300 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-28 21:12:40 +00:00
..
ADCE
ArgumentPromotion Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
BBVectorize Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
BlockPlacement
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantMerge
ConstProp Remove this testcase until I can figure out how to properly conditionalize it. 2013-02-07 07:01:54 +00:00
CorrelatedValuePropagation CVP: If we have a PHI with an incoming select, try to skip the select. 2013-02-24 15:34:43 +00:00
DeadArgElim Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
DeadStoreElimination
EarlyCSE
FunctionAttrs Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
GlobalDCE
GlobalOpt
GVN
IndVarSimplify
Inline Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
InstCombine Fix a bug in instcombine for fmul in fast math mode. 2013-02-28 21:12:40 +00:00
InstSimplify [SimplifyLibCalls] Library call simplification doen't work if the call site 2013-02-08 18:00:14 +00:00
Internalize
IPConstantProp Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
JumpThreading Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
LCSSA
LICM AArch64: adjust tests which rely on a default JIT 2013-02-18 11:08:37 +00:00
LoopDeletion Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
LoopIdiom
LoopRotate
LoopSimplify
LoopStrengthReduce LSR IVChain improvement. 2013-02-09 01:11:01 +00:00
LoopUnroll
LoopUnswitch Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
LoopVectorize LoopVectorize: Vectorize math builtin calls. 2013-02-27 15:24:19 +00:00
LowerAtomic
LowerExpectIntrinsic
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
MergeFunc
MetaRenamer
ObjCARC Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
PhaseOrdering
PruneEH
Reassociate
Reg2Mem
ScalarRepl Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
SCCP
SimplifyCFG Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
SimplifyLibCalls Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
Sink
SROA
StripSymbols
TailCallElim
TailDup