llvm-6502/lib/CodeGen/SelectionDAG
Tim Northover a5eeb9da05 SelectionDAG: create correct BooleanContent constants
Occasionally DAGCombiner can spot that a SETCC operation is completely
redundant and reduce it to "all true" or "all false". If this happens to a
vector, the value produced has to take account of what a normal comparison
would have produced, which may be an all-1s bitmask.

The fix in SelectionDAG.cpp is tested, however, as far as I can see the code in
TargetLowering.cpp is possibly unreachable and almost certainly irrelevant when
triggered so there are no tests. However, I believe it's still clearly the
right change and may save someone else some hassle if it suddenly becomes
reachable. So I'm doing it anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190147 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-06 12:38:12 +00:00
..
CMakeLists.txt llvm/lib: [CMake] Add explicit dependency to intrinsics_gen. 2012-06-24 13:32:01 +00:00
DAGCombiner.cpp Use TargetSubtargetInfo::useAA() in DAGCombine 2013-08-29 03:29:55 +00:00
FastISel.cpp Un-break the buildbot by tweaking the indirection flag. 2013-07-10 01:53:37 +00:00
FunctionLoweringInfo.cpp Debug Info: clean up usage of Verify. 2013-06-28 05:43:10 +00:00
InstrEmitter.cpp Reapply an improved version of r180816/180817. 2013-07-09 20:28:37 +00:00
InstrEmitter.h Add -*- C++ -*- to InstrEmitter.h. 2013-07-17 18:53:29 +00:00
LegalizeDAG.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
LegalizeFloatTypes.cpp Add ExpandFloatOp_FCOPYSIGN to handle ppcf128-related expansions 2013-08-19 06:55:37 +00:00
LegalizeIntegerTypes.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
LegalizeTypes.cpp Update makeLibCall to return both the call and the chain associated with the libcall instead of just the call. This allows us to specify libcalls that return void. 2013-08-13 17:54:56 +00:00
LegalizeTypes.h Improve the widening of integral binary vector operations 2013-08-19 20:01:35 +00:00
LegalizeTypesGeneric.cpp Remove an over-zealous assertion. A pointer type could be illegal if the target is prepared to custom-legalize pointer operands. This assertion was evaluated before the target would have a chance to do so, making it impossible. 2013-08-27 00:28:23 +00:00
LegalizeVectorOps.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
LegalizeVectorTypes.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
LLVMBuild.txt
Makefile
ResourcePriorityQueue.cpp Cache the TargetLowering info object as a pointer. 2013-06-06 00:43:09 +00:00
ScheduleDAGFast.cpp Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size. 2013-07-14 04:42:23 +00:00
ScheduleDAGRRList.cpp Add 'const' qualifier to some arrays. 2013-07-15 08:02:13 +00:00
ScheduleDAGSDNodes.cpp Add a function object to compare the first or second component of a std::pair. 2013-08-24 12:54:27 +00:00
ScheduleDAGSDNodes.h Fix #includes, so we include only what we really need. 2013-02-20 00:26:25 +00:00
ScheduleDAGVLIW.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
SDNodeDbgValue.h Sort includes for all of the .h files under the 'lib' tree. These were 2012-12-04 07:12:27 +00:00
SelectionDAG.cpp SelectionDAG: create correct BooleanContent constants 2013-09-06 12:38:12 +00:00
SelectionDAGBuilder.cpp SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy() 2013-08-26 15:06:10 +00:00
SelectionDAGBuilder.h [SystemZ] Use SRST to optimize memchr 2013-08-20 09:38:48 +00:00
SelectionDAGDumper.cpp Add ISD::FROUND for libm round() 2013-08-07 22:49:12 +00:00
SelectionDAGISel.cpp [stackprotector] When finding the split point to splice off the end of a parentmbb into a successmbb, include any DBG_VALUE MI. 2013-08-22 05:40:50 +00:00
SelectionDAGPrinter.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
TargetLowering.cpp SelectionDAG: create correct BooleanContent constants 2013-09-06 12:38:12 +00:00
TargetSelectionDAGInfo.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00