aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add test case for r164850.Evan Cheng2012-09-291-0/+106
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164867 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not delete BBs if their addresses are taken. rdar://12396696Evan Cheng2012-09-282-2/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164866 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use bit-wise operations to query for inclusion/exclusion of attributes.Bill Wendling2012-09-281-14/+49
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164860 91177308-0d34-0410-b5e6-96231b3b80d8
* GlobalDCE should be run at -O2 / -Os to eliminate unused dtor, etc. ↵Evan Cheng2012-09-281-4/+3
| | | | | | rdar://9142819 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164850 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: add operands to make sure instruction strings are being matched.Akira Hatanaka2012-09-282-23/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164849 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unused methods.Bill Wendling2012-09-281-7/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164848 91177308-0d34-0410-b5e6-96231b3b80d8
* docs: dedent list on index.rstSean Silva2012-09-281-23/+23
| | | | | | | | | In reStructuredText, indented blocks denote block quotes [1]. This list is not a block quote. [1]. http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#block-quotes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164847 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: other miscellaneous instructions.Akira Hatanaka2012-09-284-0/+207
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164845 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for r164835Manman Ren2012-09-281-0/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164842 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: ADDUH.QB instruction sub-class.Akira Hatanaka2012-09-283-0/+312
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164840 91177308-0d34-0410-b5e6-96231b3b80d8
* X86: when replacing SUB with TEST in ISelDAGToDAG, only replace uses of theManman Ren2012-09-281-5/+28
| | | | | | | | | second output of SUB with first output of TEST. PR13966 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164835 91177308-0d34-0410-b5e6-96231b3b80d8
* Removing dependency on third party library for Intel JIT event support.Andrew Kaylor2012-09-2815-376/+1285
| | | | | | Patch committed on behalf of Kirill Uhanov git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164831 91177308-0d34-0410-b5e6-96231b3b80d8
* PackedVector: Make the BitVector implementation configurable.Benjamin Kramer2012-09-281-13/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164826 91177308-0d34-0410-b5e6-96231b3b80d8
* Provide malloc-free sentinels for the SparseBitVector internals.Benjamin Kramer2012-09-281-0/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164823 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace the use of strncpy() and sprintf() with std::string and LLVM streams.Dmitri Gribenko2012-09-281-4/+7
| | | | | | | Patch by Martinez, Javier E. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164822 91177308-0d34-0410-b5e6-96231b3b80d8
* CorrelatedPropagation: BasicBlock::removePredecessor can simplify PHI nodes. ↵Benjamin Kramer2012-09-282-0/+30
| | | | | | | | If the it's the condition of a SwitchInst, reload it. Fixes PR13972. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164818 91177308-0d34-0410-b5e6-96231b3b80d8
* Make backtraces work again with both the configure and cmake build.Benjamin Kramer2012-09-283-1/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164817 91177308-0d34-0410-b5e6-96231b3b80d8
* GlobalOpt: non-constexpr bitcasts or GEPs can occur even if the global value ↵Benjamin Kramer2012-09-282-2/+27
| | | | | | | | is only stored once. Fixes PR13968. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164815 91177308-0d34-0410-b5e6-96231b3b80d8
* Surprisingly, we missed a trivial case here. Fix that!Nick Lewycky2012-09-282-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164814 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a LLVM_DELETED_FUNCTION from destructor to fix -std=c++11 build on ↵Craig Topper2012-09-281-1/+3
| | | | | | gcc 4.7. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164813 91177308-0d34-0410-b5e6-96231b3b80d8
* 1. Add load/store words from the stackReed Kotler2012-09-283-34/+86
| | | | | | | | | | | 2. As part of this, added assembly format FEXT_RI16_SP_explicit_ins and moved other lines for FEXT_RI16 formats to be in the right place in the code. 3. Added mayLoad and mayStore assignements for the load/store instructions added and for ones already there that did not have this assignment. 4. Another patch will deal with the problem of load/store byte/halfword to the stack. This is a particular Mips16 problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164811 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove <def,read-undef> flags from partial redefinitions.Jakob Stoklund Olesen2012-09-271-0/+6
| | | | | | | | | The new coalescer can turn a full virtual register definition into a partial redef by merging another value into an unused vector lane. Make sure to clear the <read-undef> flag on such defs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164807 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix more crlf issues.Micah Villmow2012-09-271-34/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164805 91177308-0d34-0410-b5e6-96231b3b80d8
* instcombine: Add more test cases for __strncpy_chk simplificationMeador Inge2012-09-272-0/+87
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164800 91177308-0d34-0410-b5e6-96231b3b80d8
* instcombine: Add more test cases for __strcpy_chk simplificationMeador Inge2012-09-273-13/+109
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164799 91177308-0d34-0410-b5e6-96231b3b80d8
* instcombine: Add more test cases for __memmove_chk simplificationMeador Inge2012-09-272-0/+84
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164798 91177308-0d34-0410-b5e6-96231b3b80d8
* instcombine: Add more test cases for __memcpy_chk simplificationMeador Inge2012-09-272-0/+84
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164797 91177308-0d34-0410-b5e6-96231b3b80d8
* instcombine: Add more test cases for __memset_chk simplificationMeador Inge2012-09-273-18/+81
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164796 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable the new coalescer algorithm by default.Jakob Stoklund Olesen2012-09-272-2/+1
| | | | | | | The new coalescer is better at merging values into unused vector lanes, improving NEON code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164794 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't dereference begin() on an empty vector.Jakob Stoklund Olesen2012-09-271-1/+1
| | | | | | | | The fix is obvious and the only test case I have is horrible, so I am not including it. The problem shows up when self-hosting clang on i386 with -new-coalescer enabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164793 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: ABSQ_S.PH instruction sub-class.Akira Hatanaka2012-09-274-0/+377
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164787 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: SHLL.QB instruction sub-class.Akira Hatanaka2012-09-274-0/+403
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164786 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a integer overflow in SimplifyCFG's look up table formation logic.Benjamin Kramer2012-09-272-0/+42
| | | | | | | | If the width is very large it gets truncated from uint64_t to uint32_t when passed to TD->fitsInLegalInteger. The truncated value can fit in a register. This manifested in massive memory usage or crashes (PR13946). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164784 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix CRLF issues.Micah Villmow2012-09-271-95/+95
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164782 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid dereferencing a NULL pointer.Jakob Stoklund Olesen2012-09-272-1/+36
| | | | | | Fixes PR13943. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164778 91177308-0d34-0410-b5e6-96231b3b80d8
* Patch for HowToBuildOnARM documentation from Wei-Ren Chen.Micah Villmow2012-09-272-90/+129
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164776 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. ↵Sylvestre Ledru2012-09-2784-295/+295
| | | | | | See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164768 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo 'iff' => 'if'Sylvestre Ledru2012-09-2784-295/+295
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164767 91177308-0d34-0410-b5e6-96231b3b80d8
* Prefer shuffles to selects. Backends love shuffles!Nick Lewycky2012-09-273-2/+55
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164763 91177308-0d34-0410-b5e6-96231b3b80d8
* Add constructors to the attribute builder.Bill Wendling2012-09-271-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164762 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing function CreateFPCast to the TargetFolder. It's there in the otherNick Lewycky2012-09-271-1/+8
| | | | | | | | | | | | | folders and not having it here fails to compile if you actually try to use it. Also, CreatePointerCast was failing to do the part where it does TD-aware constant folding. Granted there is exactly one case where that it will ever do anything, but there's no reason to skip it. For reference, that case is a subtraction between two constant offsets on the same global variable, eg., "&A[123] - &A[4].f". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164760 91177308-0d34-0410-b5e6-96231b3b80d8
* [arm-fast-isel] Add support for ELF PIC.Jush Lu2012-09-276-2/+141
| | | | | | | | This is a preliminary step towards ELF support; currently ARMFastISel hasn't been used for ELF object files yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164759 91177308-0d34-0410-b5e6-96231b3b80d8
* Test case for r164755 and 164756.Akira Hatanaka2012-09-272-0/+294
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164757 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: rddsp (instruction which reads DSPControl register fields to a GPR).Akira Hatanaka2012-09-272-0/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164756 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: CMPU.EQ.QB instruction sub-class.Akira Hatanaka2012-09-272-0/+224
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164755 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: ADDU.QB instruction sub-class.Akira Hatanaka2012-09-274-0/+504
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164754 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: Branch on Greater Than or Equal To Value 32 in DSPControl Pos ↵Akira Hatanaka2012-09-275-0/+113
| | | | | | Field instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164751 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: all the remaining instructions which read or write accumulators.Akira Hatanaka2012-09-275-0/+792
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164750 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: add support for extract-word instructions.Akira Hatanaka2012-09-275-0/+334
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164749 91177308-0d34-0410-b5e6-96231b3b80d8
* MIPS DSP: add functions which decode DSP and accumulator registers.Akira Hatanaka2012-09-271-0/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164748 91177308-0d34-0410-b5e6-96231b3b80d8