llvm-6502/lib/CodeGen/SelectionDAG
Eli Friedman 2ac8b324eb Fix for PR4235: to build a floating-point value from integer parts,
build an integer and cast that to a float.  This fixes a crash 
caused by trying to split an f32 into two f16's.

This changes the behavior in test/CodeGen/XCore/fneg.ll because that 
testcase now triggers a DAGCombine which converts the fneg into an integer
operation.  If someone is interested, it's probably possible to tweak 
the test to generate an actual fneg.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72162 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-20 06:02:09 +00:00
..
CallingConvLower.cpp Minor top-level comment fix. 2009-03-31 16:51:18 +00:00
CMakeLists.txt Experimental post-pass scheduling support. Post-pass scheduling 2008-11-19 23:18:57 +00:00
DAGCombiner.cpp Silence Release-Asserts warnings. 2009-05-18 16:43:04 +00:00
FastISel.cpp Rename PaddedSize to AllocSize, in the hope that this 2009-05-09 07:06:46 +00:00
LegalizeDAG.cpp When scalarizing a vector BITCAST, check whether the operand has vector 2009-05-11 18:30:42 +00:00
LegalizeFloatTypes.cpp Refactor the code to grab the low and high parts of a value 2009-04-25 17:55:53 +00:00
LegalizeIntegerTypes.cpp Revise my previous change 68996 as suggested by Duncan. 2009-04-20 17:27:09 +00:00
LegalizeTypes.cpp Put back a bit of expensive checking logic that 2009-05-16 04:14:29 +00:00
LegalizeTypes.h Implement review feedback for vector shuffle work. 2009-04-29 05:20:52 +00:00
LegalizeTypesGeneric.cpp Refactor the code to grab the low and high parts of a value 2009-04-25 17:55:53 +00:00
LegalizeVectorTypes.cpp Implement review feedback for vector shuffle work. 2009-04-29 05:20:52 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
ScheduleDAGFast.cpp Instead of passing in an unsigned value for the optimization level, use an enum, 2009-04-29 23:29:43 +00:00
ScheduleDAGList.cpp Instead of passing in an unsigned value for the optimization level, use an enum, 2009-04-29 23:29:43 +00:00
ScheduleDAGRRList.cpp Instead of passing in an unsigned value for the optimization level, use an enum, 2009-04-29 23:29:43 +00:00
ScheduleDAGSDNodes.cpp Don't set SUnit::hasPhysRegDefs to true unless the defs are 2009-03-23 17:39:36 +00:00
ScheduleDAGSDNodes.h Rename COPY_TO_SUBCLASS to COPY_TO_REGCLASS, and generalize 2009-04-13 21:06:25 +00:00
ScheduleDAGSDNodesEmit.cpp Silence Release-Asserts warnings. 2009-05-18 16:43:04 +00:00
SelectionDAG.cpp Make DBG_STOPPOINT nodes, and therefore DBG_LABEL labels, get a DebugLoc, so that it 2009-05-04 22:10:05 +00:00
SelectionDAGBuild.cpp Fix for PR4235: to build a floating-point value from integer parts, 2009-05-20 06:02:09 +00:00
SelectionDAGBuild.h Instead of passing in an unsigned value for the optimization level, use an enum, 2009-04-29 23:29:43 +00:00
SelectionDAGISel.cpp Remove the #ifndef NDEBUG from the FastISel debugging options. This 2009-05-19 02:19:57 +00:00
SelectionDAGPrinter.cpp Fix some significant problems with constant pools that resulted in unnecessary paddings between constant pool entries, larger than necessary alignments (e.g. 8 byte alignment for .literal4 sections), and potentially other issues. 2009-03-13 07:51:59 +00:00
TargetLowering.cpp Run code placement optimization for targets that want it (arm and x86 for now). 2009-05-13 21:42:09 +00:00