llvm/lib/CodeGen/SelectionDAG
Chris Lattner 0b18e59336 Fix codegen to compute the size of an allocation by multiplying the
size by the array amount as an i32 value instead of promoting from
i32 to i64 then doing the multiply.  Not doing this broke wrap-around
assumptions that the optimizers (validly) made.  The ultimate real
fix for this is to introduce i64 version of alloca and remove mallocinst.

This fixes PR3829


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67093 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17 19:36:00 +00:00
..
CallingConvLower.cpp Add "inreg" field to CallSDNode (doesn't increase 2008-09-26 19:31:26 +00:00
CMakeLists.txt Experimental post-pass scheduling support. Post-pass scheduling 2008-11-19 23:18:57 +00:00
DAGCombiner.cpp Fix a problem with DAGCombine where we were building an illegal build 2009-03-17 06:33:10 +00:00
FastISel.cpp Improve FastISel's handling of truncates to i1, and implement 2009-03-13 23:53:06 +00:00
LegalizeDAG.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
LegalizeFloatTypes.cpp bug 3610: Floating point vaarg not softened. 2009-02-21 19:11:18 +00:00
LegalizeIntegerTypes.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
LegalizeTypes.cpp Use getDebugLoc forwarder instead of getNode()->getDebugLoc. 2009-02-07 19:59:05 +00:00
LegalizeTypes.h PR3686: make the legalizer handle bitcast from i80 to x86 long double. 2009-03-04 06:23:34 +00:00
LegalizeTypesGeneric.cpp Revert BuildVectorSDNode related patches: 65426, 65427, and 65296. 2009-02-25 22:49:59 +00:00
LegalizeVectorTypes.cpp Revert BuildVectorSDNode related patches: 65426, 65427, and 65296. 2009-02-25 22:49:59 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
ScheduleDAGFast.cpp When scheduling a block in parts, keep track of the overall 2009-02-11 04:27:20 +00:00
ScheduleDAGList.cpp When scheduling a block in parts, keep track of the overall 2009-02-11 04:27:20 +00:00
ScheduleDAGRRList.cpp Fix a typo in a comment. 2009-03-12 23:55:10 +00:00
ScheduleDAGSDNodes.cpp When scheduling a block in parts, keep track of the overall 2009-02-11 04:27:20 +00:00
ScheduleDAGSDNodes.h When scheduling a block in parts, keep track of the overall 2009-02-11 04:27:20 +00:00
ScheduleDAGSDNodesEmit.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
SelectionDAG.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
SelectionDAGBuild.cpp Fix codegen to compute the size of an allocation by multiplying the 2009-03-17 19:36:00 +00:00
SelectionDAGBuild.h Generate these labels when we're in "fast" mode, not simply when we're no in 2009-02-19 21:12:54 +00:00
SelectionDAGISel.cpp Enable Chris' value propagation change. It make available known sign, zero, one bits information for values that are live out of basic blocks. The goal is to eliminate unnecessary sext, zext, truncate of values that are live-in to blocks. This does not handle PHI nodes yet. 2009-03-12 06:29:49 +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 Introduce new linkage types linkonce_odr, weak_odr, common_odr 2009-03-07 15:45:40 +00:00