llvm-6502/lib/Transforms/Scalar
Dan Gohman 859fff476d Include optional subclass flags, such as inbounds, nsw, etc., in the
Constant uniquing tables. This allows distinct ConstantExpr objects
with the same operation and different flags.

Even though a ConstantExpr "a + b" is either always overflowing or
never overflowing (due to being a ConstantExpr), it's still necessary
to be able to represent it both with and without overflow flags at
the same time within the IR, because the safety of the flag may
depend on the context of the use. If the constant really does overflow,
it wouldn't ever be safe to use with the flag set, however the use
may be in code that is never actually executed.

This also makes it possible to merge all the flags tests into a single test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80998 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-04 12:08:11 +00:00
..
ADCE.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
BasicBlockPlacement.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
CMakeLists.txt
CodeGenPrepare.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
CondPropagate.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
ConstantProp.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
DCE.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
DeadStoreElimination.cpp fix PR4815: some cases where DeleteDeadInstruction can delete 2009-09-02 06:31:02 +00:00
GVN.cpp Change PHINode::hasConstantValue to have a DominatorTree argument 2009-09-03 15:34:35 +00:00
GVNPRE.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
IndVarSimplify.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
InstructionCombining.cpp Include optional subclass flags, such as inbounds, nsw, etc., in the 2009-09-04 12:08:11 +00:00
JumpThreading.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
LICM.cpp Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify 2009-09-03 16:31:42 +00:00
LoopDeletion.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
LoopIndexSplit.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
LoopRotation.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
LoopStrengthReduce.cpp Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify 2009-09-03 16:31:42 +00:00
LoopUnroll.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
LoopUnswitch.cpp Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify 2009-09-03 16:31:42 +00:00
Makefile
MemCpyOptimizer.cpp Keep track of how many memmove calls were turned into 2009-09-03 13:37:16 +00:00
PredicateSimplifier.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
Reassociate.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
Reg2Mem.cpp clean up this code a bit. 2009-09-02 06:15:37 +00:00
Scalar.cpp
ScalarReplAggregates.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
SCCP.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
SimplifyCFGPass.cpp back out my recent commit (r80858), it seems to break self-hosting buildbot's stage 2 configure 2009-09-03 02:02:59 +00:00
SimplifyHalfPowrLibCalls.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
SimplifyLibCalls.cpp In C++, code is not allowed to call main. In C it is, this 2009-09-03 05:19:59 +00:00
TailDuplication.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
TailRecursionElimination.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00