aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Simplify some checksNate Begeman2008-05-121-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50998 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a copy+paste bug; pseudo-instructions shouldn't haveDan Gohman2008-05-121-21/+14
| | | | | | | encoding information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50997 91177308-0d34-0410-b5e6-96231b3b80d8
* Pointer comparisons should use icmp, not vicmpNate Begeman2008-05-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50996 91177308-0d34-0410-b5e6-96231b3b80d8
* Go back to passing the analyses around as parameters.Owen Anderson2008-05-121-21/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50995 91177308-0d34-0410-b5e6-96231b3b80d8
* Pointer comparisons should be handled by icmp, not vicmp :)Nate Begeman2008-05-122-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50994 91177308-0d34-0410-b5e6-96231b3b80d8
* Forgot this.Evan Cheng2008-05-121-7/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50993 91177308-0d34-0410-b5e6-96231b3b80d8
* Hard code CmpInst back to i1 for now while I go track down what in the ↵Nate Begeman2008-05-121-2/+2
| | | | | | | | | bitcode reader/writer is assuming i1 This was breaking a bunch of tests git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50992 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor isConsecutiveLoad from X86 to TargetLowering so DAG combiner can ↵Evan Cheng2008-05-123-67/+95
| | | | | | make use of it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50991 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert the previous commit. Go ahead and hoist rematerializable instructions.Bill Wendling2008-05-121-4/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50990 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for vicmp/vfcmp codegen, more legalize support coming.Nate Begeman2008-05-126-0/+115
| | | | | | | This is necessary to unbreak the build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50988 91177308-0d34-0410-b5e6-96231b3b80d8
* One real change - don't hoist something that's trivially rematerializable. It'sBill Wendling2008-05-121-18/+19
| | | | | | | | | possible for it to produce worse code than before. The rest of this patch is code cleanup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50987 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix build breakageNate Begeman2008-05-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50986 91177308-0d34-0410-b5e6-96231b3b80d8
* Add two new instructions to the llvm IR, vicmp and vfcmp. see updated LangRefNate Begeman2008-05-1218-1523/+2017
| | | | | | | for details. CodeGen support coming in a follow up patch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50985 91177308-0d34-0410-b5e6-96231b3b80d8
* Make firstEightPowers const.Dan Gohman2008-05-121-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50975 91177308-0d34-0410-b5e6-96231b3b80d8
* Update comments.Dan Gohman2008-05-122-5/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50974 91177308-0d34-0410-b5e6-96231b3b80d8
* Filter option names to escape symbols not allowed as C++ identifiers.Mikhail Glushenkov2008-05-123-8/+37
| | | | | | | | Makes it possible to use options with names like "Wa,". Also fixes the -Wall option handling as a side-effect. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50973 91177308-0d34-0410-b5e6-96231b3b80d8
* Make it possible to choose between different compilation graph definitions ↵Mikhail Glushenkov2008-05-121-1/+2
| | | | | | at compile-time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50972 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some error messages; Make LLVMC pass through the exit code of a failed tool.Mikhail Glushenkov2008-05-123-9/+47
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50971 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a compile error on compilers that still want a return valueDan Gohman2008-05-121-0/+1
| | | | | | | in a non-void function that calls abort. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50969 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a missing break in the ISD::FLT_ROUNDS_ handling. Patch by giuma!Dan Gohman2008-05-121-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50967 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for PR2264.Duncan Sands2008-05-121-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50965 91177308-0d34-0410-b5e6-96231b3b80d8
* Move the various analyses used by GVN into static variables so we don't have ↵Owen Anderson2008-05-121-30/+21
| | | | | | to keep passing them around or refetching them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50963 91177308-0d34-0410-b5e6-96231b3b80d8
* prune #includes.Chris Lattner2008-05-121-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50962 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new SparsePropagation analysis utility, which allows you to doChris Lattner2008-05-122-0/+498
| | | | | | | | | SCCP like sparse lattice analysis with relative ease. Just pick your lattice function and implement the transfer function and you're good. Just make sure you don't break monotonicity ;-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50961 91177308-0d34-0410-b5e6-96231b3b80d8
* Make constructors target-specific. This fixes problems where the path wouldNick Lewycky2008-05-113-4/+19
| | | | | | | include backslashes on Windows. This should fix llvm-ld problems on win32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50960 91177308-0d34-0410-b5e6-96231b3b80d8
* Add noteAnton Korobeynikov2008-05-111-0/+38
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50959 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix various DOUTs to not call the extremely expensive Value::getName() Chris Lattner2008-05-111-5/+5
| | | | | | | | | method. DOUT statements are disabled when assertions are off, but the side effects of getName() are still evaluated. Just call getNameSTart, which is close enough and doesn't cause heap traffic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50958 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify code by using SwitchInst::findCaseValue instead of reimplementing it.Chris Lattner2008-05-101-14/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50957 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove warnings when using -Wshorten-64-to-32.Bill Wendling2008-05-101-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50952 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for PR2303.Duncan Sands2008-05-101-0/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50951 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix linking of internal aliasesAnton Korobeynikov2008-05-101-28/+55
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50950 91177308-0d34-0410-b5e6-96231b3b80d8
* Prevent -W64-to-32-shortened warnings.Bill Wendling2008-05-101-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50947 91177308-0d34-0410-b5e6-96231b3b80d8
* Prevent warnings from the -Wshorten-64-to-32 flag.Bill Wendling2008-05-101-5/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50946 91177308-0d34-0410-b5e6-96231b3b80d8
* remove commented-out code, it is subsumed by ↵Gabor Greif2008-05-101-9/+0
| | | | | | DECLARE_TRANSPARENT_OPERAND_ACCESSORS git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50944 91177308-0d34-0410-b5e6-96231b3b80d8
* merge of use-diet branch to trunkGabor Greif2008-05-1018-584/+1528
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50943 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-enable loop deletion by default.Owen Anderson2008-05-101-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50941 91177308-0d34-0410-b5e6-96231b3b80d8
* When transforming a vector_shuffle to a load, the base address must not be ↵Evan Cheng2008-05-102-0/+12
| | | | | | an undef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50940 91177308-0d34-0410-b5e6-96231b3b80d8
* Set to 2.4 and regenerate configure.Tanya Lattner2008-05-102-35/+35
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50935 91177308-0d34-0410-b5e6-96231b3b80d8
* Add nounwind.Evan Cheng2008-05-101-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50931 91177308-0d34-0410-b5e6-96231b3b80d8
* For now, abort when an ISD::VAARG is encountered on x86-64, ratherDan Gohman2008-05-102-3/+18
| | | | | | | | | | than silently generate invalid code. llvm-gcc does not currently use VAArgInst; it lowers va_arg in the front-end. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50930 91177308-0d34-0410-b5e6-96231b3b80d8
* Some clean up.Evan Cheng2008-05-101-16/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50929 91177308-0d34-0410-b5e6-96231b3b80d8
* If movl top bits are undef, let it be selected to movlps, etc.Evan Cheng2008-05-101-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50928 91177308-0d34-0410-b5e6-96231b3b80d8
* If all sources of a PHI node are defined by an implicit_def, just emit an ↵Evan Cheng2008-05-102-7/+36
| | | | | | implicit_def instead of a copy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50927 91177308-0d34-0410-b5e6-96231b3b80d8
* Cosmetic changes:Bill Wendling2008-05-101-36/+48
| | | | | | | | | | - Comment fixes. - Moar whitespace. - Made ivars "private" by default. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50926 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a pattern to do move the low element of a v4f32 and zero extend the rest.Evan Cheng2008-05-092-0/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50922 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove an evil vector bool. Cosmetic refactoring,Dale Johannesen2008-05-091-62/+85
| | | | | | | | no functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50921 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle a few more cases of folding load i64 into xmm and zero top bits.Evan Cheng2008-05-097-29/+110
| | | | | | | Note, some of the code will be moved into target independent part of DAG combiner in a subsequent patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50918 91177308-0d34-0410-b5e6-96231b3b80d8
* Make OpActionsCapacity multiple of 4.Evan Cheng2008-05-091-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50917 91177308-0d34-0410-b5e6-96231b3b80d8
* Rewrite tail merging algorithm to handle theDale Johannesen2008-05-091-87/+115
| | | | | | | | | | case where there are multiple blocks with a large number of common tail instructions more efficiently (compile time optimization). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50916 91177308-0d34-0410-b5e6-96231b3b80d8
* put LibCallAliasAnalysis into anonymous namespace to avoidTorok Edwin2008-05-091-1/+1
| | | | | | | clashes on ::X git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50912 91177308-0d34-0410-b5e6-96231b3b80d8