llvm-project/llvm/lib/CodeGen/SelectionDAG
Dan Gohman 3860521406 When forming SSE min and max nodes for UGE and ULE comparisons, it's
necessary to swap the operands to handle NaN and negative zero properly.

Also, reintroduce logic for checking for NaN conditions when forming
SSE min and max instructions, fixed to take into consideration NaNs and
negative zeros. This allows forming min and max instructions in more
cases.

llvm-svn: 97025
2010-02-24 06:52:40 +00:00
..
CMakeLists.txt Rename SelectionDAGLowering to SelectionDAGBuilder, and rename 2009-11-23 18:04:58 +00:00
CallingConvLower.cpp Change errs() to dbgs(). 2010-01-05 01:24:50 +00:00
DAGCombiner.cpp Re-apply 96540 and 96556 with fixes. 2010-02-24 01:42:31 +00:00
FastISel.cpp Fix comments to reflect renaming elsewhere. 2010-02-10 00:11:11 +00:00
FunctionLoweringInfo.cpp move target-independent opcodes out of TargetInstrInfo 2010-02-09 19:54:29 +00:00
FunctionLoweringInfo.h Move CopyCatchInfo into FunctionLoweringInfo.cpp too, for consistency. 2009-11-23 18:12:11 +00:00
InstrEmitter.cpp move target-independent opcodes out of TargetInstrInfo 2010-02-09 19:54:29 +00:00
InstrEmitter.h Fix a typo in a comment. 2009-11-16 20:35:59 +00:00
LegalizeDAG.cpp Add non-temporal flags and remove an assumption of default arguments. 2010-02-15 17:00:31 +00:00
LegalizeFloatTypes.cpp Add non-temporal flags and remove an assumption of default arguments. 2010-02-15 17:00:31 +00:00
LegalizeIntegerTypes.cpp Add non-temporal flags and remove an assumption of default arguments. 2010-02-15 17:00:31 +00:00
LegalizeTypes.cpp Add non-temporal flags and remove an assumption of default arguments. 2010-02-15 17:00:31 +00:00
LegalizeTypes.h It seems better to scalarize vectors of size 1 instead of widening them. 2010-01-24 00:24:43 +00:00
LegalizeTypesGeneric.cpp Add non-temporal flags and remove an assumption of default arguments. 2010-02-15 17:00:31 +00:00
LegalizeVectorOps.cpp Revert an earlier change to SIGN_EXTEND_INREG for vectors. The VTSDNode 2010-01-09 02:13:55 +00:00
LegalizeVectorTypes.cpp Add non-temporal flags and remove an assumption of default arguments. 2010-02-15 17:00:31 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
SDNodeOrdering.h Allow 0 as an order number. Don't assign an order to formal arguments. 2009-12-22 21:35:02 +00:00
ScheduleDAGFast.cpp Trim unneeded includes. 2010-01-21 21:44:43 +00:00
ScheduleDAGList.cpp Change errs() to dbgs(). 2010-01-05 01:24:43 +00:00
ScheduleDAGRRList.cpp move target-independent opcodes out of TargetInstrInfo 2010-02-09 19:54:29 +00:00
ScheduleDAGSDNodes.cpp Change the scheduler from adding nodes in allnodes order 2010-02-24 06:11:37 +00:00
ScheduleDAGSDNodes.h Teach pre-regalloc scheduler to schedule loads from nearby addresses. It may improve cache locality. This is controlled by -cluster-loads for now. 2010-01-22 03:36:51 +00:00
SelectionDAG.cpp When forming SSE min and max nodes for UGE and ULE comparisons, it's 2010-02-24 06:52:40 +00:00
SelectionDAGBuilder.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
SelectionDAGBuilder.h Assign the ordering of SDNodes in a much less intrusive fashion. After the 2010-01-28 21:51:40 +00:00
SelectionDAGISel.cpp fix a bug in findNonImmUse (used by IsLegalToFold) where nodes with 2010-02-23 19:32:27 +00:00
SelectionDAGPrinter.cpp Change errs() to dbgs(). 2010-01-05 01:24:45 +00:00
TargetLowering.cpp Re-apply 96540 and 96556 with fixes. 2010-02-24 01:42:31 +00:00