llvm-6502/lib/Transforms/Scalar
Chandler Carruth 9c256eccb3 [reassociate] Switch two std::sort calls into std::stable_sort calls as
their inputs come from std::stable_sort and they are not total orders.

I'm not a huge fan of this, but the really bad std::stable_sort is right
at the beginning of Reassociate. After we commit to stable-sort based
consistent respect of source order, the downstream sorts shouldn't undo
that unless they have a total order or they are used in an
order-insensitive way. Neither appears to be true for these cases.
I don't have particularly good test cases, but this jumped out by
inspection when looking for output instability in this pass due to
changes in the ordering of std::sort.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202196 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-25 21:54:50 +00:00
..
ADCE.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
CMakeLists.txt [CodeGenPrepare] Move CodeGenPrepare into lib/CodeGen. 2014-02-22 00:07:45 +00:00
ConstantHoisting.cpp Fix typos 2014-02-25 04:21:15 +00:00
ConstantProp.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
CorrelatedValuePropagation.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
DCE.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
DeadStoreElimination.cpp Factor out calls to AA.getDataLayout(). 2014-02-25 15:52:19 +00:00
EarlyCSE.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
FlattenCFGPass.cpp
GlobalMerge.cpp Rename many DataLayout variables from TD to DL. 2014-02-21 00:06:31 +00:00
GVN.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
IndVarSimplify.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
JumpThreading.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
LICM.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
LoopDeletion.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
LoopIdiomRecognize.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
LoopInstSimplify.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
LoopRerollPass.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
LoopRotation.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
LoopStrengthReduce.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
LoopUnrollPass.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
LoopUnswitch.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
LowerAtomic.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
Makefile
MemCpyOptimizer.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
PartiallyInlineLibCalls.cpp
Reassociate.cpp [reassociate] Switch two std::sort calls into std::stable_sort calls as 2014-02-25 21:54:50 +00:00
Reg2Mem.cpp
SampleProfile.cpp Include <cctype> for isdigit(). 2014-02-22 06:34:10 +00:00
Scalar.cpp [CodeGenPrepare] Move CodeGenPrepare into lib/CodeGen. 2014-02-22 00:07:45 +00:00
Scalarizer.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
ScalarReplAggregates.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
SCCP.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
SimplifyCFGPass.cpp Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
Sink.cpp [PM] Split DominatorTree into a concrete analysis result object which 2014-01-13 13:07:17 +00:00
SROA.cpp [SROA] Add an off-by-default *strict* inbounds check to SROA. I had SROA 2014-02-25 21:24:45 +00:00
StructurizeCFG.cpp cleanup: scc_iterator consumers should use isAtEnd 2014-02-04 19:19:07 +00:00
TailRecursionElimination.cpp Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00