llvm/test
Dan Gohman 97b44f9b80 Use ConstantExpr::getExtractElement when constant-folding vectors
instead of getAggregateElement. This has the advantage of being
more consistent and allowing higher-level constant folding to
procede even if an inner extract element cannot be folded.

Make ConstantFoldInstruction call ConstantFoldConstantExpression
on the instruction's operands, making it more consistent with 
ConstantFoldConstantExpression itself. This makes sure that
ConstantExprs get TargetData-aware folding before being handed
off as operands for further folding.

This causes more expressions to be folded, but due to a known
shortcoming in constant folding, this currently has the side effect
of stripping a few more nuw and inbounds flags in the non-targetdata
side of constant-fold-gep.ll. This is mostly harmless.

This fixes rdar://11324230.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155682 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-27 00:54:36 +00:00
..
Analysis FileCheck-ize tests. 2012-04-24 10:45:44 +00:00
Archive Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
Assembler Remove old 'grep' lines. 2012-04-08 11:53:54 +00:00
Bindings/Ocaml Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
Bitcode FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
BugPoint Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
CodeGen Fix the SD scheduler to avoid gluing the same node twice. 2012-04-26 21:48:25 +00:00
DebugInfo Patch to set is_stmt a little better for prologue lines in a function. 2012-04-05 20:39:05 +00:00
ExecutionEngine This patch improves the MCJIT runtime dynamic loader by adding new handling 2012-04-12 20:13:57 +00:00
Feature This file is no longer needed (DejaGNU-isms removed from code) 2012-03-25 12:43:54 +00:00
Instrumentation [tsan] two more compile-time optimizations: 2012-04-10 22:29:17 +00:00
Integer Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
Linker Remove llvm-ld and llvm-stub (which is only used by llvm-ld). 2012-04-19 19:27:54 +00:00
MC Specify cpu to unbreak tests. 2012-04-26 01:38:10 +00:00
Object Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
Other Use ConstantExpr::getExtractElement when constant-folding vectors 2012-04-27 00:54:36 +00:00
Scripts
TableGen Fix infinite loop in nested multiclasses. 2012-03-07 16:39:35 +00:00
Transforms Use ConstantExpr::getExtractElement when constant-folding vectors 2012-04-27 00:54:36 +00:00
Unit tests: Rip out a bunch of now unused test code relating to use of llvm-gcc in LLVM tests. 2011-10-27 20:59:26 +00:00
Verifier Remove support for the special 'fast' value for fpmath accuracy for the moment. 2012-04-16 19:39:33 +00:00
YAMLParser Add YAML parser to Support. 2012-04-03 23:09:22 +00:00
CMakeLists.txt Removes json-bench from the test dependencies. 2012-04-20 13:45:49 +00:00
lit.cfg Remove llvm-ld and llvm-stub (which is only used by llvm-ld). 2012-04-19 19:27:54 +00:00
lit.site.cfg.in Revert r153694. It was causing failures in the buildbots. 2012-03-29 23:23:59 +00:00
Makefile Revert r153694. It was causing failures in the buildbots. 2012-03-29 23:23:59 +00:00
Makefile.tests
site.exp.in tests: Rip out a bunch of now unused test code relating to use of llvm-gcc in LLVM tests. 2011-10-27 20:59:26 +00:00
TestRunner.sh