| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | LoopVectorize: Enable vectorization of the fmuladd intrinsic | Hal Finkel | 2012-12-25 | 1 | -0/+1 |
| | | | | | llvm-svn: 171076 | ||||
| * | BBVectorize: Enable vectorization of the fmuladd intrinsic | Hal Finkel | 2012-12-25 | 1 | -0/+1 |
| | | | | | llvm-svn: 171075 | ||||
| * | Expand PPC64 atomic load and store | Hal Finkel | 2012-12-25 | 1 | -0/+2 |
| | | | | | | | | | Use of store or load with the atomic specifier on 64-bit types would cause instruction-selection failures. As with the 32-bit case, these can use the default expansion in terms of cmp-and-swap. llvm-svn: 171072 | ||||
| * | [msan] Fix handling of vectors of pointers. | Evgeniy Stepanov | 2012-12-25 | 1 | -2/+7 |
| | | | | | | | | VectorType::getInteger() can not be used with them, because pointer size depends on the target. llvm-svn: 171070 | ||||
| * | [msan] Fix handling of select with vector condition. | Evgeniy Stepanov | 2012-12-25 | 1 | -2/+11 |
| | | | | | llvm-svn: 171069 | ||||
| * | X86: Shave off one shuffle from the pcmpeqq sequence for SSE2 by making use ↵ | Benjamin Kramer | 2012-12-25 | 1 | -6/+4 |
| | | | | | | | of and commutativity. llvm-svn: 171064 | ||||
| * | X86: Custom lower <2 x i64> eq and ne when SSE41 is not available. | Benjamin Kramer | 2012-12-25 | 1 | -2/+24 |
| | | | | | | | | pcmpeqd, pshufd, pshufd, pand is cheaper than unpack + cmpq, sbbq, cmpq, sbbq + pack. Small speedup on loop-vectorized viterbi (-march=core2). llvm-svn: 171063 | ||||
| * | ASan: initialize callbacks from ASan module pass in a separate function for ↵ | Alexey Samsonov | 2012-12-25 | 1 | -21/+28 |
| | | | | | | | consistency llvm-svn: 171061 | ||||
| * | ASan: move stack poisoning logic into FunctionStackPoisoner struct | Alexey Samsonov | 2012-12-25 | 1 | -190/+220 |
| | | | | | llvm-svn: 171060 | ||||
| * | Fix whitespace. No functionality change. | Nick Lewycky | 2012-12-25 | 1 | -2/+2 |
| | | | | | llvm-svn: 171051 | ||||
| * | VCVTSS2SD requires a strict alignment. Thanks Elena. | Nadav Rotem | 2012-12-25 | 1 | -2/+2 |
| | | | | | llvm-svn: 171049 | ||||
| * | Rename LLVMContext diagnostic handler types and functions. | Bob Wilson | 2012-12-25 | 4 | -27/+25 |
| | | | | | | | | | | These are now generally used for all diagnostics from the backend, not just for inline assembly, so this drops the "InlineAsm" from the names. No functional change. (I've left aliases for the old names but only for long enough to let me switch over clang to use the new ones.) llvm-svn: 171047 | ||||
| * | Quiet gcc's -Wparenthesis warning. No functionality change. | Nick Lewycky | 2012-12-24 | 1 | -1/+1 |
| | | | | | llvm-svn: 171044 | ||||
| * | Use a std::string rather than a dynamically allocated char* buffer. | Benjamin Kramer | 2012-12-24 | 2 | -21/+6 |
| | | | | | | | | | | | | | | This affords us to use std::string's allocation routines and use the destructor for the memory management. Switching to that also means that we can use operator==(const std::string&, const char *) to perform the string comparison rather than resorting to libc functionality (i.e. strcmp). Patch by Saleem Abdulrasool! Differential Revision: http://llvm-reviews.chandlerc.com/D230 llvm-svn: 171042 | ||||
| * | Add LLVMContext::emitWarning methods and use them. <rdar://problem/12867368> | Bob Wilson | 2012-12-24 | 8 | -33/+72 |
| | | | | | | | | | | When the backend is used from clang, it should produce proper diagnostics instead of just printing messages to errs(). Other clients may also want to register their own error handlers with the LLVMContext, and the same handler should work for warnings in the same way as the existing emitError methods. llvm-svn: 171041 | ||||
| * | CostModel: We have API for checking the costs of known shuffles. This patch adds | Nadav Rotem | 2012-12-24 | 1 | -1/+2 |
| | | | | | | | support for the insert-subvector and extract-subvector kinds. llvm-svn: 171027 | ||||
| * | Added 6 more value types: v32i1, v64i1, v32i16, v32i8, v64i8, v8f64 | Elena Demikhovsky | 2012-12-24 | 1 | -0/+12 |
| | | | | | llvm-svn: 171026 | ||||
| * | Removed "static" from "__jit_debug_descriptor" because "static" adds C++ ↵ | Elena Demikhovsky | 2012-12-24 | 1 | -1/+1 |
| | | | | | | | mangling prefix to this symbol. llvm-svn: 171025 | ||||
| * | Some x86 instructions can load/store one of the operands to memory. On SSE, ↵ | Nadav Rotem | 2012-12-24 | 1 | -260/+260 |
| | | | | | | | | | | this memory needs to be aligned. When these instructions are encoded in VEX (on AVX) there is no such requirement. This changes the folding tables and removes the alignment restrictions from VEX-encoded instructions. llvm-svn: 171024 | ||||
| * | LoopVectorizer: When checking for vectorizable types, also check | Nadav Rotem | 2012-12-24 | 1 | -1/+8 |
| | | | | | | | | | the StoreInst operands. PR14705. llvm-svn: 171023 | ||||
| * | Change the codegen Cost Model API for shuffeles. This patch removes the API ↵ | Nadav Rotem | 2012-12-24 | 1 | -1/+2 |
| | | | | | | | for broadcast and adds a more general API that accepts an enum of known shuffles. llvm-svn: 171022 | ||||
| * | Fix typo in comments | Alexey Samsonov | 2012-12-24 | 1 | -1/+1 |
| | | | | | llvm-svn: 171021 | ||||
| * | Update the docs of the cost model. | Nadav Rotem | 2012-12-24 | 1 | -3/+6 |
| | | | | | llvm-svn: 171016 | ||||
| * | LoopVectorizer: Fix an endless loop in the code that looks for reductions. | Nadav Rotem | 2012-12-24 | 1 | -7/+8 |
| | | | | | | | | | The bug was in the code that detects PHIs in if-then-else block sequence. PR14701. llvm-svn: 171008 | ||||
| * | CostModel: Change the default target-independent implementation for finding | Nadav Rotem | 2012-12-23 | 1 | -3/+13 |
| | | | | | | | | | the cost of arithmetic functions. We now assume that the cost of arithmetic operations that are marked as Legal or Promote is low, but ops that are marked as custom are higher. llvm-svn: 171002 | ||||
| * | LoopVectorize: Fix accidentaly inverted condition. | Benjamin Kramer | 2012-12-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 171001 | ||||
| * | LoopVectorize: For scalars and void types there is no need to compute vector ↵ | Benjamin Kramer | 2012-12-23 | 1 | -12/+10 |
| | | | | | | | | | insert/extract costs. Fixes an assert during the build of oggenc in the test suite. llvm-svn: 171000 | ||||
| * | whitespace | Nadav Rotem | 2012-12-23 | 1 | -28/+0 |
| | | | | | llvm-svn: 170997 | ||||
| * | Rename a function. | Nadav Rotem | 2012-12-23 | 1 | -4/+4 |
| | | | | | llvm-svn: 170996 | ||||
| * | Loop Vectorizer: Update the cost model of scatter/gather operations and make | Nadav Rotem | 2012-12-23 | 3 | -22/+31 |
| | | | | | | | them more expensive. llvm-svn: 170995 | ||||
| * | Remove trailing whitespace. | Craig Topper | 2012-12-22 | 1 | -94/+94 |
| | | | | | llvm-svn: 170991 | ||||
| * | Remove trailing whitespace | Craig Topper | 2012-12-22 | 1 | -126/+126 |
| | | | | | llvm-svn: 170990 | ||||
| * | Remove a special case that doesn't seem necessary any longer. | Jakob Stoklund Olesen | 2012-12-22 | 1 | -13/+2 |
| | | | | | | | | Back when this exception was added, it was skipping a lot more code, but now it just looks like a premature optimization. llvm-svn: 170989 | ||||
| * | Use getNumOperands() instead of Operands.size(). | Jakob Stoklund Olesen | 2012-12-22 | 1 | -11/+11 |
| | | | | | | | | The representation of the Operands array is going to change soon so it can be allocated from a BumpPtrAllocator. llvm-svn: 170988 | ||||
| * | X86: Turn mul of <4 x i32> into pmuludq when no SSE4.1 is available. | Benjamin Kramer | 2012-12-22 | 1 | -5/+29 |
| | | | | | | | | pmuludq is slow, but it turns out that all the unpacking and packing of the scalarized mul is even slower. 10% speedup on loop-vectorized paq8p. llvm-svn: 170985 | ||||
| * | X86: Emit vector sext as shuffle + sra if vpmovsx is not available. | Benjamin Kramer | 2012-12-22 | 1 | -8/+39 |
| | | | | | | | | Also loosen the SSSE3 dependency a bit, expanded pshufb + psra is still better than scalarized loads. Fixes PR14590. llvm-svn: 170984 | ||||
| * | Change 'AttrVal' to 'AttrKind' to better reflect that it's a kind of ↵ | Bill Wendling | 2012-12-22 | 4 | -24/+24 |
| | | | | | | | attribute instead of the value of the attribute. llvm-svn: 170972 | ||||
| * | Don't call back() on an empty SmallVector. Found by -fsanitize=enum! | Richard Smith | 2012-12-22 | 1 | -1/+1 |
| | | | | | llvm-svn: 170968 | ||||
| * | In some cases, due to scheduling constraints we copy the EFLAGS. | Nadav Rotem | 2012-12-21 | 2 | -1/+21 |
| | | | | | | | | | | | | | The only way to read the eflags is using push and pop. If we don't adjust the stack then we run over the first frame index. This is not something that we want to do, so we have to make sure that our machine function does not copy the flags. If it does then we have to emit the prolog that adjusts the stack. rdar://12896831 llvm-svn: 170961 | ||||
| * | [mips] Refactor subword-swap, EXT/INS, load-effective-address and read-hardware | Akira Hatanaka | 2012-12-21 | 3 | -54/+73 |
| | | | | | | | instructions. llvm-svn: 170956 | ||||
| * | [mips] Refactor SYNC and multiply/divide instructions. | Akira Hatanaka | 2012-12-21 | 3 | -54/+59 |
| | | | | | llvm-svn: 170955 | ||||
| * | [mips] Refactor BAL instructions. | Akira Hatanaka | 2012-12-21 | 2 | -10/+40 |
| | | | | | llvm-svn: 170954 | ||||
| * | [mips] Fix encoding of BAL instruction. Also, fix assembler test case which | Akira Hatanaka | 2012-12-21 | 1 | -1/+1 |
| | | | | | | | was not catching the error. llvm-svn: 170953 | ||||
| * | [mips] Refactor jump, jump register, jump-and-link and nop instructions. | Akira Hatanaka | 2012-12-21 | 3 | -41/+50 |
| | | | | | llvm-svn: 170952 | ||||
| * | [mips] Refactor load/store left/right and load-link and store-conditional | Akira Hatanaka | 2012-12-21 | 2 | -79/+52 |
| | | | | | | | instructions. llvm-svn: 170950 | ||||
| * | [mips] Refactor load/store instructions. | Akira Hatanaka | 2012-12-21 | 2 | -62/+34 |
| | | | | | llvm-svn: 170948 | ||||
| * | [mips] Remove unnecessary isPseudo parameter. | Akira Hatanaka | 2012-12-21 | 1 | -24/+16 |
| | | | | | llvm-svn: 170947 | ||||
| * | [mips] Refactor LUI instruction. | Akira Hatanaka | 2012-12-21 | 3 | -6/+17 |
| | | | | | llvm-svn: 170944 | ||||
| * | [mips] Refactor count leading zero or one instructions. | Akira Hatanaka | 2012-12-21 | 3 | -20/+29 |
| | | | | | llvm-svn: 170942 | ||||
| * | [mips] Refactor sign-extension-in-register instructions. | Akira Hatanaka | 2012-12-21 | 3 | -11/+21 |
| | | | | | llvm-svn: 170940 | ||||

