Chris Lattner
f9d9e45225
Implement PR1795, an instcombine hack for forming GEPs with integer pointer arithmetic.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45745 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-08 07:23:51 +00:00
Duncan Sands
ad9a9e1559
The transform that tries to turn calls to bitcast functions into
...
direct calls bails out unless caller and callee have essentially
equivalent parameter attributes. This is illogical - the callee's
attributes should be of no relevance here. Rework the logic, which
incidentally fixes a crash when removed arguments have attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45658 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-06 18:27:01 +00:00
Duncan Sands
a9d0c9dc58
When transforming a call to a bitcast function into
...
a direct call with cast parameters and cast return
value (if any), instcombine was prepared to cast any
non-void return value into any other, whether castable
or not. Add a new predicate for testing whether casting
is valid, and check it both for the return value and
(as a cleanup) for the parameters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45657 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-06 10:12:28 +00:00
Chris Lattner
5a62d0a038
remove a couple more unsafe xforms in the face of overflow.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45613 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-05 01:22:42 +00:00
Chris Lattner
9027b3cc7f
Fix PR1896
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45568 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-04 05:04:53 +00:00
Chris Lattner
3d73bce2d0
don't hoist FP additions into unconditional adds + selects. This
...
could theoretically introduce a trap, but is also a performance issue.
This speeds up ptrdist/ks by 8%.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45533 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-03 07:25:26 +00:00
Bill Wendling
4c07450305
Update this testcase. The output needs to be disabled to pass.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45478 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-01 01:34:36 +00:00
Chris Lattner
741c0aea08
dead calls to llvm.stacksave can be deleted, even though they
...
have potential side-effects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45392 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29 00:59:12 +00:00
Chris Lattner
26d5f661d6
upgrade this test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45391 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29 00:57:06 +00:00
Devang Patel
c49c08f747
Test -simplifycfg only.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45389 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28 22:59:48 +00:00
Owen Anderson
2910f68a52
Add a testcase for my recent InstCombine fix, written by Nicholas.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45386 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-28 21:08:43 +00:00
Chris Lattner
8999dd3c68
implement InstCombine/shift-trunc-shift.ll. This allows
...
us to compile:
#include <math.h>
int t1(double d) { return signbit(d); }
into:
_t1:
movd %xmm0, %rax
shrq $63, %rax
ret
instead of:
_t1:
movd %xmm0, %rax
shrq $32, %rax
shrl $31, %eax
ret
on x86-64.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45311 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-22 09:07:47 +00:00
Devang Patel
01666bf74b
If succ has succ itself as one of the predecessors then do
...
not merge current bb and succ even if bb's terminator is
unconditional branch to succ.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45305 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-22 01:32:53 +00:00
Duncan Sands
110c835039
Make DAE not wipe out attributes on calls, and not drop
...
return attributes on the floor. In the case of a call
to a varargs function where the varargs arguments are
being removed, any call attributes on those arguments
need to be dropped. I didn't do this because I plan to
make it illegal to have such attributes (see next patch).
With this change, compiling the gcc filter2 eh test at -O0
and then running opt -std-compile-opts on it results in
a correctly working program (compiling at -O1 or higher
results in the test failing due to a problem with how we
output eh info into the IR).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45285 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21 19:16:16 +00:00
Christopher Lamb
103e1a3118
Implement review feedback, including additional transforms
...
(icmp slt (sub A B) 1) -> (icmp sle A B)
icmp sgt (sub A B) -1) -> (icmp sge A B)
and add testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45256 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-20 07:21:11 +00:00
Duncan Sands
f0c3354d99
When inlining through an 'nounwind' call, mark inlined
...
calls 'nounwind'. It is important for correct C++
exception handling that nounwind markings do not get
lost, so this transformation is actually needed for
correctness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45218 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19 21:13:37 +00:00
Christopher Lamb
fd8b1fd7f6
Remove an orthogonal transformation of the selection condition from my most recent submission.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45169 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18 20:30:28 +00:00
Christopher Lamb
f311f53a0f
Fix typos.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45159 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18 09:45:40 +00:00
Christopher Lamb
30f017ad89
Fold certain additions through selects (and their compares) so as to eliminate subtractions. This code is often produced by the SMAX expansion in SCEV.
...
This implements test/Transforms/InstCombine/2007-12-18-AddSelCmpSub.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45158 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18 09:34:41 +00:00
Duncan Sands
fd7b326bea
Make invokes of inline asm legal. Teach codegen
...
how to lower them (with no attempt made to be
efficient, since they should only occur for
unoptimized code).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45108 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17 18:08:19 +00:00
Duncan Sands
ece2c04d53
Make instcombine promote inline asm calls to 'nounwind'
...
calls. Remove special casing of inline asm from the
inliner. There is a potential problem: the verifier
rejects invokes of inline asm (not sure why). If an
asm call is not marked "nounwind" in some .ll, and
instcombine is not run, but the inliner is run, then
an illegal module will be created. This is bad but
I'm not sure what the best approach is. I'm tempted
to remove the check in the verifier...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45073 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-16 15:51:49 +00:00
Wojciech Matyjewicz
ed2232502e
1. "Upgrage" comments.
...
2. Using zero-extended value of Scale and unsigned division is safe provided
that Scale doesn't have the sign bit set.
Previously these 2 instructions:
%p = bitcast [100 x {i8,i8,i8}]* %x to i8*
%q = getelementptr i8* %p, i32 -4
were combined into:
%q = getelementptr [100 x { i8, i8, i8 }]* %x, i32 0,
i32 1431655764, i32 0
what was incorrect.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44936 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12 15:21:32 +00:00
Chris Lattner
1afab9c1e0
Implement constant folding if vector<->vector bitcasts where the number
...
of source/dest elements changes. This implements
test/Transforms/InstCombine/bitcast-vector-fold.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44855 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-11 07:29:44 +00:00
Chris Lattner
f286f6fd93
Fix PR1850 by removing an unsafe transformation from VMCore/ConstantFold.cpp.
...
Reimplement the xform in Analysis/ConstantFolding.cpp where we can use
targetdata to validate that it is safe. While I'm in there, fix some const
correctness issues and generalize the interface to the "operand folder".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44817 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 22:53:04 +00:00
Duncan Sands
cbb8badce8
Make PruneEH update the nounwind/noreturn attributes
...
on functions as it calculates them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44802 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 19:09:40 +00:00
Devang Patel
5ffdc56f53
If ExitValue operand is also defined in Loop header then
...
insert new ExitValue after this operand definition.
This fixes PR1828.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44539 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-03 19:17:21 +00:00
Duncan Sands
afa3b6da11
Add some convenience methods for querying attributes, and
...
use them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44403 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-28 17:07:01 +00:00
Duncan Sands
dc024674ff
Fix PR1146: parameter attributes are longer part of
...
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-27 13:23:08 +00:00
Nick Lewycky
c54c561c9f
Add new SCEV, SCEVSMax. This allows LLVM to analyze do-while loops.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44319 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-25 22:41:31 +00:00
Chris Lattner
cfa597569d
Implement PR1822
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44318 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-25 21:27:53 +00:00
Duncan Sands
827cde1c83
Fix PR1816. If a bitcast of a function only exists because of a
...
trivial difference in function attributes, allow calls to it to
be converted to direct calls. Based on a patch by Török Edwin.
While there, move the various lists of mutually incompatible
parameters etc out of the verifier and into ParameterAttributes.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44315 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-25 14:10:56 +00:00
Chris Lattner
9e513acd31
Fix PR1816, by correcting the broken definition of APInt::countTrailingZeros.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44296 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-23 22:42:31 +00:00
Duncan Sands
e4dc717585
Ding dong, the DoesntAccessMemoryFns and
...
OnlyReadsMemoryFns tables are dead! We
get more, and more accurate, information
from gcc via the readnone and readonly
function attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44288 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-23 19:30:27 +00:00
Chris Lattner
42b5e08e71
Fix a bug where we'd try to find a scev value for a bitcast operand,
...
even though the bitcast operand did not have integer type. This fixes
PR1814.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44286 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-23 08:46:22 +00:00
Chris Lattner
eec8b9a7d6
Fix PR1817.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44284 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-22 23:47:13 +00:00
Duncan Sands
73d4bb6676
Turn invokes of nounwind functions into ordinary calls.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44280 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-22 22:24:59 +00:00
Duncan Sands
5ef7be79e0
Readonly/readnone functions are allowed to throw
...
exceptions, so don't turn invokes of them into
calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44278 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-22 21:40:06 +00:00
Chris Lattner
a7d1ab0ab3
Fix PR1800 by correcting mistaken logic.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44188 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-16 06:04:17 +00:00
Chris Lattner
1b12d8855d
Implement PR1796 and Transforms/SimplifyCFG/noreturn-call.ll
...
by inserting unreachable after no-return calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44099 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-14 06:19:25 +00:00
Chris Lattner
59ab338882
upgrade test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44067 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-13 21:42:48 +00:00
Chris Lattner
b42c8f7101
Implement PR1786 by iterating between dead cycle elimination
...
and simplifycfg in the rare cases when it is needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44044 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-13 07:32:38 +00:00
Chris Lattner
7b52fe7272
Tighten up a check for folding away loads from (newly constant) globals. This
...
fixes a crash on Transforms/GlobalOpt/2007-11-09-GEP-GEP-Crash.ll and
rdar://5585488.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43949 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-09 17:33:02 +00:00
Andrew Lenharth
b410df995c
Better check
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43897 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-08 18:45:15 +00:00
Andrew Lenharth
ab9338eb9f
Fix PR1780
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43893 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-08 17:39:28 +00:00
Chris Lattner
cf5008a792
Implement PR1777 by detecting dependent phis that
...
all compute the same value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43777 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 21:52:06 +00:00
Dan Gohman
cff550995b
Fix an abort in instcombine when folding creates a vector rem instruction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43743 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 23:16:33 +00:00
Devang Patel
5d01aa484f
If a value is incoming from outside the loop then the value does not need remapping and the value is never tracked through LastValueMap.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43728 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:32:30 +00:00
Duncan Sands
3cb3650a27
Change uses of getTypeSize to getABITypeSize, getTypeStoreSize
...
or getTypeSizeInBits as appropriate in ScalarReplAggregates.
The right change to make was not always obvious, so it would
be good to have an sroa guru review this. While there I noticed
some bugs, and fixed them: (1) arrays of x86 long double have
holes due to alignment padding, but this wasn't being spotted
by HasStructPadding (renamed to HasPadding). The same goes
for arrays of oddly sized ints. Vectors also suffer from this,
in fact the problem for vectors is much worse because basic
vector assumptions seem to be broken by vectors of type with
alignment padding. I didn't try to fix any of these vector
problems. (2) The code for extracting smaller integers from
larger ones (in the "int union" case) was wrong on big-endian
machines for integers with size not a multiple of 8, like i1.
Probably this is impossible to hit via llvm-gcc, but I fixed
it anyway while there and added a testcase. I also got rid of
some trailing whitespace and changed a function name which
had an obvious typo in it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43672 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04 14:43:57 +00:00
Owen Anderson
7ebba512c3
Fix test/Transforms/DeadStoreElimination/PartialStore.ll, which had been
...
silently failing because of an incorrect run line for some time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43605 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-01 05:29:16 +00:00
Chris Lattner
e41dcdc964
Fix InstCombine/2007-10-31-StringCrash.ll by removing an obvious
...
(in hindsight) infinite recursion. Simplify the code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43597 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-01 02:30:35 +00:00
Chris Lattner
74e012afd3
Fix InstCombine/2007-10-31-RangeCrash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43596 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-01 02:18:41 +00:00
Dan Gohman
d61de35564
Add support for folding binary operators with vector zero operands.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43510 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-30 19:00:49 +00:00
Chris Lattner
c20b0fbfcd
update testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43452 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-29 17:06:35 +00:00
Chris Lattner
cee291c505
Model stacksave and stackrestore as both writing memory, since we
...
don't model their dependences on allocas correctly. This fixes
PR1745.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43442 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-29 05:47:52 +00:00
Chris Lattner
b361ec3197
Fix PR1749 and InstCombine/2007-10-28-EmptyField.ll by handling
...
zero-length fields better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43427 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-29 02:40:02 +00:00
Chris Lattner
3cb63ddd51
Fix PR1752 and LoopSimplify/2007-10-28-InvokeCrash.ll: terminators
...
can have uses too. Wouldn't it be nice if invoke didn't exist? :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43426 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-29 02:30:37 +00:00
Chris Lattner
99c65745a2
Implement a couple of foldings for ordered and unordered comparisons,
...
implementing cases related to PR1738.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43289 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-24 05:38:08 +00:00
Bill Wendling
80629c85f1
Don't branch fold inline asm statements.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43191 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-19 21:09:55 +00:00
Devang Patel
3305aaa350
This test now passes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43183 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-19 17:11:01 +00:00
Chris Lattner
a0bc7fc7bd
Fix PR1735 and Transforms/DeadArgElim/2007-10-18-VarargsReturn.ll by
...
fixing some obviously broken code :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43141 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-18 18:49:29 +00:00
Devang Patel
cd2858ee16
XFAIL for now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43111 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-18 00:48:43 +00:00
Devang Patel
84458323a2
Do not raise free() call that is called through invoke instruction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43083 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-17 20:12:58 +00:00
Devang Patel
afc407ea51
Apply "Instead of loading small c string constant, use integer constant directly" transformation while processing load instruction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43070 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-17 07:24:40 +00:00
Chris Lattner
a79dd432b3
Fix a bug in my patch last night that broke InstCombine/2007-10-12-Crash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42920 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-12 18:05:47 +00:00
Chris Lattner
cb324cfc32
testcase for PR1728
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42890 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-12 05:29:53 +00:00
Devang Patel
f9193de25b
Lower memcpy if it makes sense.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42864 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-11 17:21:57 +00:00
Devang Patel
5c4cd0d82e
Fix bug in updating dominance frontier after loop
...
unswitch when frontier includes basic blocks that
are not inside loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42654 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-05 22:29:34 +00:00
Devang Patel
bc2265abe1
Relax unsafe use check. If there is one unconditional use inside the loop then it is safe to promote value even if there is another conditional use inside the loop.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42493 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-01 18:12:58 +00:00
Devang Patel
a6dff2faeb
Handle multiple induction variables.
...
This fixes PR714.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42309 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 18:24:48 +00:00
Devang Patel
453a844128
Add transformation to update loop interation space. Now,
...
for (i=A; i<N; i++) {
if (i < X && i > Y)
do_something();
}
is transformed into
U=min(N,X); L=max(A,Y);
for (i=L;i<U;i++)
do_somethihg();
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42299 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-25 17:31:19 +00:00
Devang Patel
128459b85b
Do not promote null values because it may be unsafe to do so.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42270 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-24 20:02:42 +00:00
Devang Patel
3f65f02d25
Fix PR1692
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42209 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 21:18:19 +00:00
Duncan Sands
d7944ca61c
Testcase for PR1678.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42171 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-20 18:56:24 +00:00
Nick Lewycky
1af92b05d5
Excuse me.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42158 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-20 00:57:00 +00:00
Nick Lewycky
e29578afd5
Fix optimization. %x = sub %x, %y does not imply that %y is zero.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42157 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-20 00:48:36 +00:00
Devang Patel
f2038b1d93
Avoid unsafe promotion.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42149 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-19 20:18:51 +00:00
Gabor Greif
d84c3ab4a7
rename test, it is obviously misspelled
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42108 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-18 21:42:39 +00:00
Devang Patel
e3bfb88898
Fix PR1657
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42075 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-18 01:54:42 +00:00
Dan Gohman
5d066ff7f0
Instcombine x-((x/y)*y) into a remainder operator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42035 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-17 17:31:57 +00:00
Chris Lattner
402a7888a9
remove obsolete tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41984 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-15 17:38:04 +00:00
Duncan Sands
bba5037740
Test that a call to a trampoline is turned into a call to
...
the underlying nested function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41846 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-11 15:07:50 +00:00
Chris Lattner
75e3bd5bf2
remove obsolete testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41820 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-10 23:51:41 +00:00
Chris Lattner
a0ef5ed742
Fix a buggy constant folding transformation when handling aliases.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41818 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-10 23:42:42 +00:00
Dale Johannesen
0c82b9de77
Add missing llvm-dis.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41813 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-10 22:47:59 +00:00
Chris Lattner
8d9455d4e4
Prevent tailcallelim from breaking "recursive" calls to builtins.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41804 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-10 20:58:55 +00:00
Devang Patel
9c7a9f186c
Filter exit conditions which are not yet handled.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41800 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-10 18:33:42 +00:00
Chris Lattner
a54c7eb157
Don't zap back to back volatile load/stores
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41759 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-07 05:33:03 +00:00
Nick Lewycky
5a5ff9d7df
When the two operands of an icmp are equal, there are five possible predicates
...
that would make the icmp true. Fixes PR1637.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41740 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-06 01:10:22 +00:00
Dale Johannesen
c2ec2baf3d
Change all floating constants that are not exactly
...
representable to use hex format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41722 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-05 17:50:36 +00:00
Anton Korobeynikov
9f528e6280
Don't promote volatile loads/stores. This is needed (for example) to handle setjmp/longjmp properly.
...
This fixes PR1520.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41461 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-26 21:43:30 +00:00
Devang Patel
be97c986e1
Constant split values needs upper bound and lower bound check, just like any other split value.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41389 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-25 01:09:14 +00:00
Devang Patel
4a69da9cb0
While calculating upper loop bound for first loop and lower loop bound for second loop, take care of edge cases.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41387 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-25 00:56:38 +00:00
Devang Patel
d651f657f2
Do not split loops rejected by processOneIterationLoop().
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41194 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-20 20:24:15 +00:00
Devang Patel
7bfd5dba38
Add loop index split tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41146 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-17 22:02:15 +00:00
Dan Gohman
43c3db37f6
Convert tests using "grep -c ... | grep ..." to use the count script.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41100 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:49:33 +00:00
Dan Gohman
28beeeac4d
Convert tests using "| wc -l | grep ..." to use the count script.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41097 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:36:28 +00:00
Chris Lattner
ce7c40cf4b
oops, forgot to commit this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41034 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-12 16:55:14 +00:00
Chris Lattner
8d2e88806b
Transform a load from an undef/zero global into an undef/global even if we
...
have complex pointer manipulation going on. This allows us to compile
stuff like this:
__m128i foo(__m128i x){
static const unsigned int c_0[4] = { 0, 0, 0, 0 };
__m128i v_Zero = _mm_loadu_si128((__m128i*)c_0);
x = _mm_unpacklo_epi8(x, v_Zero);
return x;
}
into:
_foo:
xorps %xmm1, %xmm1
punpcklbw %xmm1, %xmm0
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41022 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-11 18:48:48 +00:00
Chris Lattner
f2369f2042
when we see a unaligned load from an insufficiently aligned global or
...
alloca, increase the alignment of the load, turning it into an aligned load.
This allows us to compile:
#include <xmmintrin.h>
__m128i foo(__m128i x){
static const unsigned int c_0[4] = { 0, 0, 0, 0 };
__m128i v_Zero = _mm_loadu_si128((__m128i*)c_0);
x = _mm_unpacklo_epi8(x, v_Zero);
return x;
}
into:
_foo:
punpcklbw _c_0.5944, %xmm0
ret
.data
.lcomm _c_0.5944,16,4 # c_0.5944
instead of:
_foo:
movdqu _c_0.5944, %xmm1
punpcklbw %xmm1, %xmm0
ret
.data
.lcomm _c_0.5944,16,2 # c_0.5944
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40971 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-09 19:05:49 +00:00
Nick Lewycky
f947b3edb5
It's safe to fold not of fcmp.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40870 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-06 20:04:16 +00:00
Chandler Carruth
6994040a95
This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.
...
This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40807 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-04 01:51:18 +00:00
Chris Lattner
576c8da518
I don't have time to restore this functionality right now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40743 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 17:43:39 +00:00
Chris Lattner
ce4eaecb2e
Reduced testcase for PR1594
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40740 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 17:11:24 +00:00
Devang Patel
1ff61385c8
Update dominator info for the middle blocks created while spliting
...
exit edge to preserve LCSSA.
Fix dominance frontier update during loop unswitch. This fixes PR 1589, again
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40737 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 15:25:57 +00:00
Chris Lattner
951626b437
Enhance instcombine to be more aggressive about folding casts of
...
operations of casts. This implements InstCombine/zext-fold.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40726 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 06:11:14 +00:00
Chris Lattner
9dd7a5178f
Fix PR1575 and test/Transforms/CondProp/2007-08-01-InvalidRead.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40720 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 04:47:05 +00:00
Devang Patel
28ae151c48
Update dominator info for the middle blocks created while spliting
...
exit edge to preserve LCSSA.
Fix dominance frontier update during loop unswitch. This fixes PR 1589.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40695 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-01 22:23:50 +00:00
Owen Anderson
268479f454
Forgot to update these files for the FastDSE changes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40674 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-01 16:53:51 +00:00
Owen Anderson
f6a05f949f
Rename FastDSE to just DSE.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40668 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-01 06:36:51 +00:00
Owen Anderson
b95f9d565f
Fix a failure I accidentally caused in my last commit by mishandling the
...
removal of redundant phis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40650 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 20:18:28 +00:00
Lauro Ramos Venancio
c7d1114ade
Fix a bug in GetKnownAlignment of packed structs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40649 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 20:13:21 +00:00
Dan Gohman
b1576f56c8
Change the x86 assembly output to use tab characters to separate the
...
mnemonics from their operands instead of single spaces. This makes the
assembly output a little more consistent with various other compilers
(f.e. GCC), and slightly easier to read. Also, update the regression
tests accordingly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40648 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 20:11:57 +00:00
Owen Anderson
054ab94bff
Fix a misoptimization in aha.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40642 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 17:43:14 +00:00
Devang Patel
fee0a9c7ef
Bunch of tests to check loop passes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40629 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 08:04:17 +00:00
Owen Anderson
4f9ba7c40c
Fix a bug caused by indiscriminantly asking for the dominators of a predecessor.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40595 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-30 16:57:08 +00:00
Owen Anderson
a377a24771
Fix a bug introduced in my last commit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40542 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-26 18:57:04 +00:00
Owen Anderson
45537917ee
Fix a couple more bugs in the phi construction by pulling in code that does
...
almost the same things from LCSSA.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40540 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-26 18:26:51 +00:00
Owen Anderson
febc7e3613
Fix what is _hopefully_ the last corner case for loops.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40503 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-25 23:54:42 +00:00
Owen Anderson
9f435740b1
My last commit was not correct for nested loops. Fix it, and add a testcase for it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40498 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-25 22:19:40 +00:00
Owen Anderson
0d16988690
Fix an infinite loop on 300.twolf.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40497 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-25 22:03:06 +00:00
Owen Anderson
3dfcf33cf8
Fix a bug in non-local memdep that was causing an infinite loop on 175.vpr.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40495 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-25 21:26:36 +00:00
Owen Anderson
2e3d6b4a27
Fix a bug that was causing GVN to crash on 252.eon.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40494 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-25 21:13:41 +00:00
Owen Anderson
0cd320362e
Add basic support for performing whole-function RLE.
...
Note: This has not yet been thoroughly tested. Use at your own risk.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40489 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-25 19:57:03 +00:00
Owen Anderson
1ad2cb7555
Add a GVN pass, using the value numbering code I developed for GVNPRE and the
...
load elimination code from RedundantLoadElimination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40469 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-24 17:55:58 +00:00
Devang Patel
62e279bbdb
Unreachable block is not a root node in post dominator tree.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40458 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-24 01:02:25 +00:00
Owen Anderson
a7f98e2919
Rename a lot of things to change FastDLE to RedundantLoadElimination.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40457 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-24 00:17:04 +00:00
Owen Anderson
f309070ca4
Add testcases for FastDLE.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40449 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-23 22:18:05 +00:00
Owen Anderson
33d137f90a
Move these tests to use FastDSE instead of old DSE.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40444 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-23 20:49:13 +00:00
Chris Lattner
e29459e3b5
This xform isn't safe, removing it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40378 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-21 21:27:27 +00:00
Dan Gohman
9941f7426d
Optimize alignment of loads and stores.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40102 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 16:34:21 +00:00
Reid Spencer
9445e9aaa0
For PR1553:
...
Change the keywords for the zext and sext parameter attributes to be
zeroext and signext so they don't conflict with the keywords for the
instructions of the same name. This gets around the ambiguity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40069 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 23:13:04 +00:00
Devang Patel
a8d507d970
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40023 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-18 23:47:02 +00:00
Chris Lattner
e2ece3f479
rename function to avoid llvm-upgrade warning
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39895 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-16 04:09:00 +00:00
Chris Lattner
4241e4da85
Implement shift-simplify.ll:test[45].
...
First teach instcombine that sign bit checks only demand the
sign bit, this allows simplify demanded bits to hack on
expressions better.
Second, teach instcombine that ashr is useless if only the
sign bit is demanded.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39880 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-15 20:54:51 +00:00
Chris Lattner
a0141b90a3
Implement shift-simplify.ll:test3, turning:
...
(X << 31) <s 0 --> (X&1) != 0
This happens dozens of times in the CFE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39879 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-15 20:42:37 +00:00
Devang Patel
680171f210
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39768 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-11 23:54:25 +00:00
Owen Anderson
36a07daabd
Fix an error where ANTIC_OUT was ending up with more than one expression of
...
the same value number. This fixes an infinite loop on 444.namd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37967 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-07 20:13:57 +00:00
Owen Anderson
2a5c9d8aac
Fix a bunch of issues found in a testcase from 400.perlbench.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37929 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-05 23:11:26 +00:00
Owen Anderson
ec3ed5f8e4
Fix another bug, this time in PREing select instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37878 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-04 22:33:23 +00:00
Owen Anderson
df30b63663
Fix a typo that was killing GVNPRE of select instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37871 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-04 18:26:18 +00:00
Owen Anderson
9eee94c5f7
Fix an error in phi translation of GEPs that was causing failures.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37868 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-04 04:51:16 +00:00
Owen Anderson
5653322e72
Add support for performing GVNPRE on GEP instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37862 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-03 23:51:19 +00:00
Owen Anderson
216394f9b3
Add support for performing GVNPRE on cast instructions, and add a testcase for this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37856 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-03 18:37:08 +00:00
Zhou Sheng
0142677fe2
Test case for recent patch for IndVarSimplify.cpp
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37838 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-02 08:02:14 +00:00
John Criswell
e644ef7b09
Convert .cvsignore files
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 16:35:07 +00:00
Owen Anderson
1dd035d64f
Add a test for performing GVNPRE on select instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37782 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-28 23:50:31 +00:00
Owen Anderson
cc389e016c
Add tests for performing GVNPRE on the three vector-specific instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37744 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-27 04:06:32 +00:00
Chris Lattner
4939debe2a
new testcase, the inliner shouldn't inline this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37722 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-25 21:49:53 +00:00
Owen Anderson
f107befaf1
Rename variables to expose the fact that this test is failing.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37711 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-24 08:17:41 +00:00
Chris Lattner
e47f30f5e6
new testcase miscompiled by instcombine, reduced from perl
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37691 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-21 18:09:25 +00:00
Owen Anderson
831dab360f
Testcase for instances where a constant only occurs as an operand to a phi node.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37653 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-19 05:55:01 +00:00
Owen Anderson
5b689c3a28
Add a new testcase for memory corruption issues.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37648 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-19 05:41:22 +00:00
Owen Anderson
981746b4d0
Testcase where GVNPRE was getting confused by invoke instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37609 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-16 00:25:10 +00:00
Owen Anderson
0bee3f44ca
Add a testcase where GVNPRE what getting confused by a loop.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37594 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-15 17:54:05 +00:00
Chris Lattner
3dcf510ba1
add vector versions of this test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37588 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-15 06:22:32 +00:00
Chris Lattner
546fdae370
testcase for PR1510
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37583 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-15 05:57:20 +00:00
Owen Anderson
0f661dc957
Add a test where phi translation was producing a null result.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37563 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-12 22:42:35 +00:00
Owen Anderson
93f905daef
Testcase where GVNPRE crashes on functions with no exit nodes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37555 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-12 16:56:00 +00:00
Owen Anderson
7706d23399
Make the run line for this test correct. Thanks to Chris for spotting it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37552 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-12 04:40:48 +00:00
Owen Anderson
95d5c34d3e
Add a GVN-PRE basic regression test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37549 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-12 00:49:33 +00:00
Tanya Lattner
682f683669
Instruct the inliner to obey the noinline attribute. Add test case.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37481 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-06 21:59:26 +00:00
Lauro Ramos Venancio
a1cca17d77
Add a test for PR1499.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37473 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-06 17:10:02 +00:00
Nick Lewycky
fbbccf61f4
new testcase for PR1487
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37458 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-06 04:11:21 +00:00
Chris Lattner
f3bee46792
new testcase for PR1491
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37422 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-04 22:23:17 +00:00
Chris Lattner
661c2ce9c5
Testcase for PR1421
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37357 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-30 06:10:46 +00:00
Chris Lattner
d20d40299b
testcase for PR1446
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37325 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-24 18:42:47 +00:00
Chris Lattner
74ee2b3b82
new testcase for PR1435
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37304 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-23 06:35:52 +00:00
Chris Lattner
74b9a814f6
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37255 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-19 06:50:37 +00:00
Dan Gohman
2fa7ce2b87
Add a testcase for unrolling loops with unknown tripcounts.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37238 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-18 19:59:23 +00:00
Devang Patel
d5005ccac4
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37184 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 22:05:20 +00:00
Chris Lattner
24bb504e15
New testcase that crashes instcombine
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37056 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-15 00:15:49 +00:00
Chris Lattner
d2abaf55d9
this crashes globalopt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37021 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 21:28:25 +00:00
Chris Lattner
2e3ce7d97a
new testcase that crashes instcombine
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36983 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 05:55:38 +00:00
Devang Patel
e0ae022c73
Drop ModuleID from comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36982 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 00:45:58 +00:00
Devang Patel
7ab11fb8eb
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36954 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-09 08:19:24 +00:00
Devang Patel
9095da2ff5
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36953 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-09 08:08:46 +00:00
Chris Lattner
a7a5bad38c
add the & back. I'm not sure why bill removed it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36945 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-08 20:08:06 +00:00
Bill Wendling
e8a9054a50
Spare '&' in the RUN line.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36933 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-08 07:49:07 +00:00
Chris Lattner
677f7eeb39
this test is now in Target/README.txt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36812 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:44:27 +00:00
Chris Lattner
86c7745fb4
remove an old xfailed test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36810 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:42:02 +00:00
Chris Lattner
a993dd0cfc
un-xfail this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36808 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:41:13 +00:00
Chris Lattner
581f84f4cb
move these xfailed tests to lib/Target/README.txt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36805 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:28:33 +00:00
Chris Lattner
514630f41f
Move Mem2Reg/DifferingTypes.ll -> ScalarRepl/DifferingTypes.ll. -scalarrepl
...
implements this xform.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36804 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:22:03 +00:00
Chris Lattner
fe09dd477f
remvoe two tests that cee has never gotten right
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36803 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:19:49 +00:00
Chris Lattner
823572d44d
new testcase for PR1385
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36783 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 18:48:52 +00:00
Chris Lattner
51e04da381
new testacse for PR1384
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36774 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 01:59:05 +00:00
Chris Lattner
93e3d8f308
update syntax
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36531 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:03:12 +00:00
Chris Lattner
947780b1f9
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36520 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 00:54:45 +00:00
Chris Lattner
54c4d40beb
new testcase, should be able to eliminate the alloca and memcpy
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36428 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-25 06:29:34 +00:00
Devang Patel
9690809ddd
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36379 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-23 22:39:53 +00:00
Reid Spencer
4f859aa532
For PR1146:
...
Make ParamAttrsList objects unique. You can no longer directly create or
destroy them but instead must go through the ParamAttrsList::get()
interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36327 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 05:46:44 +00:00
Reid Spencer
88894b6c40
Add a .cvsignore file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36323 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-21 21:53:04 +00:00
Devang Patel
253f7fe77e
Add PR number for reference.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36184 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 23:52:37 +00:00
Devang Patel
b6b40ebc83
New test case.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36181 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 23:02:22 +00:00
Reid Spencer
c657d2f688
Fix this test from Duncan's experiment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36176 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 21:57:14 +00:00
Chris Lattner
d463e0727d
fix incorrectly upgraded test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36169 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 21:24:14 +00:00
Reid Spencer
eb1d74e0c8
For PR1319:
...
Remove && from the end of the lines to prevent tests from throwing run
lines into the background. Also, clean up places where the same command
is run multiple times by using a temporary file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36142 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 17:36:08 +00:00
Reid Spencer
43b40035ba
For PR1319:
...
Fix syntax of tests to ensure grep pattern is properly quoted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36134 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 15:31:49 +00:00
Reid Spencer
4cda190ef5
For PR1319:
...
Fix test syntax per new rules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36133 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 15:15:52 +00:00
Reid Spencer
722bdf6633
For PR1336:
...
Un-XFAIL this since it now passes with fix to llvm-upgrade.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36104 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 02:57:47 +00:00
Reid Spencer
1cd9d77a7d
For PR1336:
...
Correct this test case. It was passing a uint where a ubyte was expected.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36101 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 02:09:24 +00:00
Reid Spencer
a37e588667
For PR1336:
...
Un-XFAIL this now that its working.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36100 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 01:49:16 +00:00
Reid Spencer
4575ab2186
For PR1336:
...
XFAIL tests covered by the PR. These will be un-XFAILed as they are fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36093 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 23:00:46 +00:00
Chris Lattner
004ca2d5b4
testcase for PR1335
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36089 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 21:37:53 +00:00
Reid Spencer
9aafdcf20d
For PR1319:
...
Upgrade to use new Tcl exec based test harness. This exposes 3 bugs that
were previously not being reported:
test/Transforms/GlobalDCE/2002-08-17-FunctionDGE.ll
test/Transforms/GlobalOpt/memset.ll
test/Transforms/IndVarsSimplify/exit_value_tests.llx
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36065 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 09:21:47 +00:00
Reid Spencer
2aabd0722d
For PR1319:
...
Upgrade to use new Tcl exec based test harness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36062 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 08:30:33 +00:00
Reid Spencer
08af6fd5fc
For PR1319:
...
Convert to use the new Tcl expr based test harness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36061 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 08:01:33 +00:00
Reid Spencer
7c65d4345e
For PR1319:
...
Make use of the END. facility on all files > 1K so that we aren't wasting CPU
cycles searching for RUN: lines that we'll never find.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36059 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 07:38:21 +00:00
Reid Spencer
a20c22f190
Fix this test in a slightly more obvious way.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36058 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 07:37:04 +00:00
Reid Spencer
ca5d9ca748
For PR1319:
...
Upgrade to use new Tcl exec based test harness
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36055 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 06:53:51 +00:00
Reid Spencer
0742a40cae
Use %prcontext, $prcontext is not resolving for some reason.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36054 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 06:52:45 +00:00
Reid Spencer
8373e672db
PR1319:
...
Upgrade tests to new Tcl exec based test harness requirements.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36053 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 06:51:14 +00:00
Zhou Sheng
e9989b9152
This test case is incorrect. Remove it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36048 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 05:59:49 +00:00
Reid Spencer
894cfffea1
For PR1319:
...
Convert to new test system. This exposes IsDigit.ll as failing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36046 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 05:16:38 +00:00
Reid Spencer
950c694e94
For PR1319:
...
Conver to new test system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36045 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 05:03:58 +00:00
Reid Spencer
6f6b250058
Keep lines a reasonable length.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36043 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 04:54:53 +00:00
Jeff Cohen
723de95d1e
Patch supplied by gabor.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36042 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 03:09:23 +00:00
Chris Lattner
9838939b3a
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36039 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 01:00:37 +00:00
Owen Anderson
ea37270ef2
XFAIL this for now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36036 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 23:57:41 +00:00
Reid Spencer
5eace78caa
Oops. A little aggressive on the name changes there.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36029 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 23:17:58 +00:00
Reid Spencer
4953e92ad0
For PR1913:
...
Convert to new test system. This exposes test/Transforms/ConstProp/calls.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36027 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 23:04:54 +00:00
Chris Lattner
32b4c12e6b
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36024 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 23:00:51 +00:00
Reid Spencer
6934f06efe
For PR1319:
...
Convert to new test system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36023 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 22:54:01 +00:00
Reid Spencer
78fb2acea2
Changes to fix problems with "make check". Apparently you can redefine
...
functions and Tcl's just tickled with that. The fix is to give the "new"
test system a different interface function name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36022 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 22:51:29 +00:00
Chris Lattner
2caf0ec7ad
manually upgrade test. Add a new test2. I have no way to see if this works
...
because of the tclification. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36019 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 22:27:33 +00:00
Reid Spencer
d733ae8f5d
This test should have been updated with llvm 1.7!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36014 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 20:21:37 +00:00
Reid Spencer
2b544beda3
For PR1319:
...
Upgrade tests to work with new llvm.exp version of llvm_runtest.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36013 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 20:13:02 +00:00
Reid Spencer
3a693b7933
This test needs to use egrep.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36012 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 20:02:51 +00:00
Reid Spencer
608266b2f5
Fix a test test llvm.exp found.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36006 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 18:33:31 +00:00
Reid Spencer
a43b3f2693
bool -> i1 (found by llvm.exp)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36005 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 18:30:06 +00:00
Reid Spencer
3baaed94e2
Fix a syntax error that llvm.exp found.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36004 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 18:28:16 +00:00
Reid Spencer
60e9ff8d61
Fix an "already-upgraded" test that llvm.exp found.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36003 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 18:26:02 +00:00
Chris Lattner
9a34ecd82d
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35983 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 01:17:38 +00:00
Chris Lattner
58de64650d
testcase for PR1201
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35980 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-14 00:19:36 +00:00
Reid Spencer
c6b9efabee
Add the SCCP regression tests for APInt expressions. These test cases
...
turned up some regressions that have since been fixed. We don't want to
loose the regression tests.
Test cases by Guoling Han.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35974 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-13 22:33:10 +00:00
Reid Spencer
461637ebde
The "implementation" keyword is no more!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35919 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 20:06:03 +00:00
Reid Spencer
0f5aed5648
Make the llvm-runtest function much more amenable by eliminating all the
...
global variables that needed to be passed in. This makes it possible to
add new global variables with only a couple changes (Makefile and llvm-dg.exp)
instead of touching every single dg.exp file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35918 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 19:56:59 +00:00
Chris Lattner
865523fa82
adjust test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35907 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 16:04:04 +00:00
Chris Lattner
12f591342f
sext of compares.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35892 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 06:57:54 +00:00
Chris Lattner
f6e166b386
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35889 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 06:52:24 +00:00
Devang Patel
bfe2c9ccf8
Add test case for PR 1154.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35865 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-10 16:57:08 +00:00
Chris Lattner
5c05fa0d0b
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35851 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 23:51:49 +00:00
Devang Patel
1362c8c5da
Add check for opt crash.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35849 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 23:40:15 +00:00
Devang Patel
43979df430
Add Loop Rotate test cases.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35838 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 22:22:42 +00:00
Chris Lattner
7cae8adb75
new testcase for PR1304
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35791 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 01:37:35 +00:00
Chris Lattner
2d87734a8f
new testcase for PR1286
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35787 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 01:10:13 +00:00
Chris Lattner
993243b270
this xform is correct, not an xfail
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35766 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-08 08:02:39 +00:00
Chris Lattner
87ff2dd9da
tweak this to test the right thing.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35762 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-08 07:52:40 +00:00
Chris Lattner
251396a6f2
new testcase, should simplify down to a xor/and/xor sequence.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35759 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-08 07:45:36 +00:00
Chris Lattner
3d2e54bb74
testcase for PR1307
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35705 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-06 23:36:59 +00:00
Chris Lattner
b62eee4a69
new testcase, update old one.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35699 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-06 18:56:54 +00:00
Chris Lattner
65fe9124e3
new testcase that crashes globalopt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35688 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-05 21:09:29 +00:00
Jeff Cohen
bbf6f5751d
Any add is wrong, regardless of type.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35671 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 20:40:44 +00:00
Jeff Cohen
bd8987285b
Get it right...
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35670 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 20:35:31 +00:00
Dale Johannesen
50781eacd5
Test for transformConstExprCastCall fix.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35669 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 19:18:16 +00:00
Jeff Cohen
451994334d
Add new test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35664 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 16:11:23 +00:00
Chris Lattner
08a3fbe42e
new testcase for PR1253
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35611 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-03 01:45:32 +00:00
Chris Lattner
7b3b7e1e8e
fix this testcase so it passes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35604 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 20:46:28 +00:00
Chris Lattner
7a32bc9b9b
creative way to add one.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35583 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 05:35:08 +00:00
Reid Spencer
443af5b65f
Fix illegal assembly syntax.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35581 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 03:24:47 +00:00
Reid Spencer
f1b18a7bdb
Add a test case to make sure that constant folding of the bit counting
...
intrinsics works.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35577 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 01:45:31 +00:00
Reid Spencer
86189a4460
Revert the name changes for llvm.bswap to allow (and test) llvm-upgrade of
...
this intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35566 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 00:51:15 +00:00
Reid Spencer
a3c533a716
For PR1297:
...
Update these test cases to use proper signatures for bswap which is now
and overloaded intrinsic. Its name must be of the form llvm.bswap.i32.i32
since both the parameter and the result or of type "iAny". Also, the
bit counting intrinsics changed to always return i32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35548 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-01 07:36:28 +00:00
Chris Lattner
6a606aff3c
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35535 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-01 05:34:53 +00:00
Reid Spencer
5373b721c0
Remove use of implementation keyword.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35412 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 02:38:26 +00:00
Chris Lattner
9495a0c232
don't use 'not' when we can use a positive test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35402 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 01:43:43 +00:00
Reid Spencer
12fa2224e4
new test case for PR1280
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35401 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 01:43:35 +00:00
Reid Spencer
7f49127935
For PR1280:
...
Remove test cases for and/xor/add -> trunc/sext that use bit widths that
the targets cannot code gen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35399 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 01:35:28 +00:00
Chris Lattner
404eaa3cf1
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35397 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 01:31:33 +00:00
Reid Spencer
fecaf1a2b6
Another test case for PR1271 where bad shift masks were generated.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35372 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-26 23:48:52 +00:00
Reid Spencer
21e289b5c2
Fix this test case to match output after a bug was fixed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35359 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-26 18:04:38 +00:00
Duncan Sands
dce8d9cf99
Fix testsuite hang.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35355 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-26 10:59:13 +00:00
Reid Spencer
c3a53f2720
Test case for PR1271 involving construction of a bad mask to replace a
...
shift instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35349 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-26 05:32:16 +00:00
Reid Spencer
9031aca96b
Add a test case for PR1271 (necessary, but not sufficient).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35343 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-25 21:30:41 +00:00
Chris Lattner
7d4d6b8615
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35340 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-25 20:42:40 +00:00
Reid Spencer
3f3ee6e588
Remove the last vestiges of this directory.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35309 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-24 23:07:49 +00:00
Reid Spencer
aa04035229
Add more test cases for APIntified InstCombine.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35288 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-23 21:57:47 +00:00
Reid Spencer
5d787bb93e
Add test case for testing InstCombine with arbitrary precision integer
...
types. These tests mimic the integer test cases in the normal InstCombine
test suite but use "strange" integer bit widths.
Most tests written by Zhou Sheng, a few by me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35284 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-23 20:48:34 +00:00
Reid Spencer
d69bfb38f4
Make this test actually match the generated code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35263 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-22 02:53:05 +00:00
Reid Spencer
48e15e3cc6
Test case for PR1248
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35251 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-22 00:49:40 +00:00
Reid Spencer
8cf47cef5c
Make this test a little simpler/faster.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35193 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 23:36:19 +00:00
Reid Spencer
1e8ae156e0
Add test case for PR1261, currently XFAILed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35192 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 23:28:16 +00:00
Reid Spencer
2318ec67b8
For PR1258:
...
Revise numeric value references to accommodate collapsed type planes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35170 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 18:27:35 +00:00
Chris Lattner
d7d2287928
add a testcase the resent patches fail on.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35167 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 18:25:48 +00:00
Chris Lattner
12779797f7
add PR#
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35151 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 00:17:19 +00:00
Chris Lattner
fb73d9cf0c
add pr#
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35149 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 00:15:43 +00:00
Chris Lattner
7863a63bb9
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35148 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 00:11:30 +00:00
Chris Lattner
7829828c4b
testcase for SROA with memset etc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35147 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 00:09:00 +00:00
Chris Lattner
296d7a778a
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35144 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-18 22:50:57 +00:00
Nick Lewycky
1eda0f60d7
Propagate ValueRanges across equality.
...
Add some more micro-optimizations: x * 0 = 0, a - x = a --> x = 0.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35138 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-18 01:09:32 +00:00
Chris Lattner
7e9e9c6121
testcase for PR1244
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35081 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-13 14:25:35 +00:00
Anton Korobeynikov
e2ff29c17c
Use range tests in LowerSwitch, where possible
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35057 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-10 16:46:28 +00:00
Reid Spencer
61e85b2821
Add a test case for a particular udiv/select transform.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34935 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-05 22:51:08 +00:00
Chris Lattner
bc62f24a8c
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34918 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-05 00:01:38 +00:00
Chris Lattner
2fbdd6ba02
New testcases for PR1179/PR1232.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34895 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-04 00:54:06 +00:00
Chris Lattner
cc08feb999
new testcase: instcombine should remove all the casts.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34869 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-03 05:24:06 +00:00
Chris Lattner
fa83404afa
instcombine doesn't do CSE, simplify unrelated detail
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34867 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-03 02:27:02 +00:00
Chris Lattner
2aef09a06b
new testcase. @foo should be marked fastcc by globalopt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34607 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-25 21:04:39 +00:00
Chris Lattner
3150642dca
testcase for pr1215
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34547 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-24 01:16:39 +00:00
Chris Lattner
6eaede2e6e
testcase for pr1217
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34545 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-24 01:03:11 +00:00