Evan Cheng [Tue, 17 Jul 2007 18:39:45 +0000 (18:39 +0000)]
Update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39977
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 17 Jul 2007 18:16:09 +0000 (18:16 +0000)]
Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39976
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Tue, 17 Jul 2007 18:08:32 +0000 (18:08 +0000)]
Don't use * in XFAIL line unless you want it to XFAIL on everything. I don't believe you can use true regular expressions here. It will just look for those keywords. Please test this on sparc and see if they still are xfailed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39975
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 17 Jul 2007 18:03:34 +0000 (18:03 +0000)]
Missed the case where alloca is used but the stack size (not including callee-saved portion) is zero. Thanks Dan.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39974
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Tue, 17 Jul 2007 13:34:23 +0000 (13:34 +0000)]
detect invalid combination of sret and byval
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39971
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Tue, 17 Jul 2007 10:25:31 +0000 (10:25 +0000)]
XFAIL these on sparc-solaris
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39969
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 17 Jul 2007 07:59:08 +0000 (07:59 +0000)]
Use push / pop for prologues and epilogues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39967
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 17 Jul 2007 07:17:02 +0000 (07:17 +0000)]
Make use of the process_builder_args library function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39965
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 17 Jul 2007 06:20:38 +0000 (06:20 +0000)]
For PR1558:
Move tests that have C/C++ sources into the appropriate directory. This
allows them to be selected for testing based on whether llvm-gcc is
present or not.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39963
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 17 Jul 2007 05:56:43 +0000 (05:56 +0000)]
no email addrs in file headers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39962
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 17 Jul 2007 02:16:12 +0000 (02:16 +0000)]
Unbreak the build by putting calls to free into the implementation file and
having that implementation file #include <cstdlib>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39952
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 17 Jul 2007 01:52:05 +0000 (01:52 +0000)]
Temporarily set SROA threshold to 512.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39950
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 16 Jul 2007 23:34:39 +0000 (23:34 +0000)]
Take advantage of undefined behavior if the source program tries to GEP
beyond the end of an alloca to make FastDSE faster and more aggressive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39945
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 23:25:52 +0000 (23:25 +0000)]
Normally, we don't want to install and we only need to build tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39944
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 22:54:42 +0000 (22:54 +0000)]
No, we're not looking for a directory named /config.status.
Sigh .. fix copy & paste error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39939
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 22:25:13 +0000 (22:25 +0000)]
In ModuleInfo.txt, make sure that the script being executed can be
found by prepending a .
In build-for-llvm-top.sh, dereference variables for exansion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39936
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 22:11:02 +0000 (22:11 +0000)]
Prepare for the future when llvm doesn't depend on llvm-gcc-4-0.
This also avoids a fork bomb from the llvm-top/build script which
doesn't know how to handle cycles in the dependence graph.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39933
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 22:03:36 +0000 (22:03 +0000)]
Remove insignificant test no longer needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39931
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 16 Jul 2007 21:52:50 +0000 (21:52 +0000)]
Add support for walking up memory def chains, which enables finding many more
dead stores on 400.perlbench.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39929
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 16 Jul 2007 21:27:44 +0000 (21:27 +0000)]
Use realloc() to (potentially) resize the contents of SmallPtrSet in place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39926
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 21:03:44 +0000 (21:03 +0000)]
Return Undef if the block has no dominator. This was required to allow
llvm-gcc build to succeed. Without this change it fails in libstdc++
compilation. This causes no regressions in dejagnu tests. However,
someone who knows this code better might want to review it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39924
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 16 Jul 2007 15:26:22 +0000 (15:26 +0000)]
Use ConstantFoldFP for folding all unary floating-point operations which may
have an error, and refector out the code for binary operators into
ConstantFoldBinaryFP and use it for all binary floating-point operations
which may have an error. These functions still rely exclusively on errno
to detect errors though.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39923
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 16 Jul 2007 14:37:41 +0000 (14:37 +0000)]
Fix the documentation for llvm.sqrt so that sqrt(0) has defined behavior,
which appears to be the intent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39922
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 16 Jul 2007 14:29:03 +0000 (14:29 +0000)]
Fix comments about vectors to use the current wording.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39921
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 16 Jul 2007 13:37:30 +0000 (13:37 +0000)]
Remove the trailing semicolon from function declarations in LLVM,
where it's interpreted as a comment, not part of the syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39920
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 16 Jul 2007 08:52:56 +0000 (08:52 +0000)]
Fix validation errors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39917
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 16 Jul 2007 08:46:40 +0000 (08:46 +0000)]
Clean up some formatting
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39916
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 16 Jul 2007 08:44:39 +0000 (08:44 +0000)]
Clean up some formatting. Add some doc_code div tags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39915
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 16 Jul 2007 08:05:18 +0000 (08:05 +0000)]
Prepare for building from llvm-top. Unfortunately, this doesn't work because
of the cyclic depndency between llvm and llvm-gcc-4-0.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39910
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Jul 2007 04:15:34 +0000 (04:15 +0000)]
Repair a regression in Transforms/InstCombine/mul.ll that Reid noticed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39896
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Jul 2007 04:09:00 +0000 (04:09 +0000)]
rename function to avoid llvm-upgrade warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39895
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 16 Jul 2007 02:58:37 +0000 (02:58 +0000)]
Start adding and cleaning up comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39894
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 16 Jul 2007 02:08:00 +0000 (02:08 +0000)]
Handle decrementing loops properly. Fixes PR1533.
Always pass the constant as the second parameter to HowManyLessThans.
Remove obsolete "isSigned" parameter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39893
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Jul 2007 23:32:03 +0000 (23:32 +0000)]
add a helper method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39885
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Jul 2007 22:30:34 +0000 (22:30 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39882
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Jul 2007 20:54:51 +0000 (20:54 +0000)]
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
Chris Lattner [Sun, 15 Jul 2007 20:42:37 +0000 (20:42 +0000)]
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
Nick Lewycky [Sat, 14 Jul 2007 17:41:03 +0000 (17:41 +0000)]
Clarify the language. Pointed out by Duncan Sands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39857
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 14 Jul 2007 15:11:14 +0000 (15:11 +0000)]
Fix the build. Patch from Holger Schurig.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39856
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sat, 14 Jul 2007 14:06:15 +0000 (14:06 +0000)]
Long live the exception handling!
This patch fills the last necessary bits to enable exceptions
handling in LLVM. Currently only on x86-32/linux.
In fact, this patch adds necessary intrinsics (and their lowering) which
represent really weird target-specific gcc builtins used inside unwinder.
After corresponding llvm-gcc patch will land (easy) exceptions should be
more or less workable. However, exceptions handling support should not be
thought as 'finished': I expect many small and not so small glitches
everywhere.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39855
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 14 Jul 2007 04:28:04 +0000 (04:28 +0000)]
Use maximal intersection algorithm exclusively. Fixes miscompile bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39852
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 14 Jul 2007 02:51:34 +0000 (02:51 +0000)]
Add alternate ConstantRange intersection algorithm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39851
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 13 Jul 2007 23:57:33 +0000 (23:57 +0000)]
Added test case from PR1540.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39845
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 13 Jul 2007 23:57:11 +0000 (23:57 +0000)]
Make LCSSA a loop pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39844
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 13 Jul 2007 23:55:50 +0000 (23:55 +0000)]
Fix for PR1540: Specify F0, F1 are sub-registers of D0, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39843
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 13 Jul 2007 22:50:48 +0000 (22:50 +0000)]
Handle GEPs with all-zero indices in the same way we handle pointer-pointer bitcasts. Also, fix a potentia infinite loop.
This brings FastDSE to parity with old DSE on 175.vpr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39839
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 13 Jul 2007 21:53:42 +0000 (21:53 +0000)]
Disable claims to preserve analysis until open issues are resolved.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39834
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 13 Jul 2007 20:16:50 +0000 (20:16 +0000)]
Eliminate an unused parameter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39828
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 13 Jul 2007 20:14:11 +0000 (20:14 +0000)]
Fix the comment for LegalizeOp to more accurately reflect what it does.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39827
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Jul 2007 20:08:19 +0000 (20:08 +0000)]
remove obsolete note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39825
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 13 Jul 2007 20:03:40 +0000 (20:03 +0000)]
Don't call SimplifyVBinOp for non-vector operations, following earlier review
feedback. This theoretically makes the common (scalar) case more efficient.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39823
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Jul 2007 20:01:46 +0000 (20:01 +0000)]
fix some bugs in the manual
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39822
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 13 Jul 2007 18:26:26 +0000 (18:26 +0000)]
Be more aggressive in removing dead stores, and in removing instructions trivially dead after DSE.
This drastically improves the effect of FastDSE on kimwitu++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39819
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 13 Jul 2007 17:31:29 +0000 (17:31 +0000)]
Modify previous patch per review comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39817
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 13 Jul 2007 17:13:54 +0000 (17:13 +0000)]
Skeleton of post-RA scheduler; doesn't do anything yet.
Change name of -sched option and DEBUG_TYPE to
pre-RA-sched; adjust testcases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39816
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Jul 2007 16:24:10 +0000 (16:24 +0000)]
Fix CodeGen/Generic/print-arith-fp.ll on sparc (PR1551)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39813
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Fri, 13 Jul 2007 10:08:18 +0000 (10:08 +0000)]
these tests do not need a triple on Solaris. Thanks sabre!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39803
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Jul 2007 10:05:30 +0000 (10:05 +0000)]
Regenerate to pick up Gabor's changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39802
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Jul 2007 10:02:45 +0000 (10:02 +0000)]
Set the mime-type of this file to text/plain because (silly) SVN
doesn't know that application/x-sh is text.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39801
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Fri, 13 Jul 2007 09:48:29 +0000 (09:48 +0000)]
* llvm.spec.in: update blurb
* autoconf/AutoRegen.sh: use variables for autofoo versions
* autoconf/configure.ac: test for some more functions
that are not guaranteed on solaris
Note: the svn:mime-type of autoconf/AutoRegen.sh
should be set to something that allows for
text compares using svn diff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39800
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 12 Jul 2007 21:41:30 +0000 (21:41 +0000)]
Reimplement removing stores to allocas at the end of a function. This should be safe now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39790
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 12 Jul 2007 18:08:51 +0000 (18:08 +0000)]
Make the condition-checking for free with non-trivial dependencies more correct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39789
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 12 Jul 2007 17:52:20 +0000 (17:52 +0000)]
Remove the end-block handling code. It was unsafe, and making it safe would have resulted in falling back to the slow DSE case. I need to think some more about the right way to handle this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39788
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Thu, 12 Jul 2007 16:45:35 +0000 (16:45 +0000)]
ARM: make branch folder remove unconditional branches
following jump tables that it earlier inserted. This
would be OK on other targets but is needed for correctness
only on ARM (constant islands needs to find jump tables).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39782
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Thu, 12 Jul 2007 13:51:39 +0000 (13:51 +0000)]
The type ids making up a filter are unsigned, and
should be output as unsigned values. Checked against
gcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39775
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Thu, 12 Jul 2007 13:31:38 +0000 (13:31 +0000)]
checked in as obvious,
thanks Benoit Boissinot!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39774
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Thu, 12 Jul 2007 13:21:08 +0000 (13:21 +0000)]
fix the remaining 3 testcases that missed a target triple
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39773
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Jul 2007 06:31:38 +0000 (06:31 +0000)]
another missed SSE optimization
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39772
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 12 Jul 2007 00:06:21 +0000 (00:06 +0000)]
Let MemoryDependenceAnalysis take care of updating AliasAnalysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39769
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 11 Jul 2007 23:54:25 +0000 (23:54 +0000)]
New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39768
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 11 Jul 2007 23:47:28 +0000 (23:47 +0000)]
Preserve analysis info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39767
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 11 Jul 2007 23:44:08 +0000 (23:44 +0000)]
Get rid of annoying spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39766
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Wed, 11 Jul 2007 23:24:41 +0000 (23:24 +0000)]
Added support for Mips specific GAS directives
Fixed print immediate
Fixed Identation on MipsISelDAGToDAG.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39764
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Wed, 11 Jul 2007 23:21:31 +0000 (23:21 +0000)]
Added support for framepointer
Prologue/Epilogue support fp,ra save/restore and use the stack frame the right
way!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39763
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 11 Jul 2007 23:19:17 +0000 (23:19 +0000)]
Handle the case where an entire structure is freed, and its dependency is a store to a field within
that structure.
Also, refactor the runOnBasicBlock() function, splitting some of the special cases into separate functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39762
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Wed, 11 Jul 2007 23:17:41 +0000 (23:17 +0000)]
Now that stack is represented the right way, LOA starts at 0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39761
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Wed, 11 Jul 2007 23:16:16 +0000 (23:16 +0000)]
Fixed AddLiveOut issues
FI's created the write way to represent Mips stack
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39760
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Wed, 11 Jul 2007 22:47:02 +0000 (22:47 +0000)]
Removed unused immediate PatLeaf, fixed lui instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39759
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Wed, 11 Jul 2007 22:44:21 +0000 (22:44 +0000)]
Added MipsMachineFunction class, to hold Mips dinamic stack info when inserting Prologue/Epilog
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39758
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 11 Jul 2007 21:06:56 +0000 (21:06 +0000)]
Add support for eliminate stores to stack-allocated memory locations at the end
of a function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39754
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 11 Jul 2007 20:38:34 +0000 (20:38 +0000)]
Handle eliminating stores that occur right before a free.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39753
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Wed, 11 Jul 2007 19:56:53 +0000 (19:56 +0000)]
Handle packed structs in the CBackend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39752
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 11 Jul 2007 19:51:06 +0000 (19:51 +0000)]
Emit correct linkage. Patch by Roman Samoilov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39751
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 11 Jul 2007 19:29:05 +0000 (19:29 +0000)]
Add test case for PR1545.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39749
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 11 Jul 2007 19:17:18 +0000 (19:17 +0000)]
Missed a couple of places where new instructions are added due to spill / restore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39748
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 11 Jul 2007 19:03:09 +0000 (19:03 +0000)]
Clean up a few things based on Chris' feedback.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39747
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 11 Jul 2007 18:41:34 +0000 (18:41 +0000)]
Adding ability to demote phi to stack.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39744
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 11 Jul 2007 18:32:38 +0000 (18:32 +0000)]
Fix hang compiling TimberWolf (allow for islands
of size other than 4).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39743
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Wed, 11 Jul 2007 17:19:51 +0000 (17:19 +0000)]
Assert when TLS is not implemented.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39737
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Wed, 11 Jul 2007 16:59:20 +0000 (16:59 +0000)]
Exception handling has been implemented.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39732
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Jul 2007 16:32:10 +0000 (16:32 +0000)]
Fix an oversight: for modules with no other identifying target info,
the sparc backend should be preferred when running on sparcs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39142
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Wed, 11 Jul 2007 08:47:55 +0000 (08:47 +0000)]
If assertions are not enabled, we should return False here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38535
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 11 Jul 2007 08:47:44 +0000 (08:47 +0000)]
No longer need to track last def / use.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38534
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 11 Jul 2007 05:28:39 +0000 (05:28 +0000)]
Fix for PR1545: Revamp code that update kill information due to register reuse.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38525
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 11 Jul 2007 03:00:11 +0000 (03:00 +0000)]
Adjust this per the changes to the configuration script in the llvm-top module.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38521
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 11 Jul 2007 00:46:18 +0000 (00:46 +0000)]
Add FastDSE, a new algorithm for doing dead store elimination. This algorithm is not as accurate
as the current DSE, but it only a linear scan over each block, rather than quadratic. Eventually
(once it has been improved somewhat), this will replace the current DSE.
NOTE: This has not yet been extensively tested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38517
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Tue, 10 Jul 2007 22:00:30 +0000 (22:00 +0000)]
Make this work with GLIBCXX_DEBUG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38516
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 10 Jul 2007 22:00:16 +0000 (22:00 +0000)]
Didn't mean the last commit. Revert.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38515
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 10 Jul 2007 21:53:30 +0000 (21:53 +0000)]
Fix fp_constant_op failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38514
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 10 Jul 2007 21:49:47 +0000 (21:49 +0000)]
Update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38513
91177308-0d34-0410-b5e6-
96231b3b80d8