Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add some missing isel predicates on def : pat patterns to avoid generating ↵ | Evan Cheng | 2010-11-12 | 5 | -53/+154 |
| | | | | | | VFP vmla / vmls (they cause stalls). Disabling them in isel is properly not a right solution, I'll look into a proper solution next. llvm-svn: 118922 | ||||
* | accept lret as an alias for lretl, fixing the reopened part of PR8592 | Chris Lattner | 2010-11-12 | 1 | -1/+2 |
| | | | | llvm-svn: 118916 | ||||
* | Emacs auto-fill bug. | Andrew Trick | 2010-11-12 | 1 | -1/+2 |
| | | | | llvm-svn: 118908 | ||||
* | Test case for PR8287: SD scheduling time. Fixed in r118904. | Andrew Trick | 2010-11-12 | 1 | -0/+31 |
| | | | | llvm-svn: 118906 | ||||
* | implement PR8592: empirically "lretq" is a "lret" with a rex.w prefix. | Chris Lattner | 2010-11-12 | 1 | -0/+4 |
| | | | | llvm-svn: 118903 | ||||
* | gnu as support both % and @ before types, do the same. | Rafael Espindola | 2010-11-12 | 2 | -7/+38 |
| | | | | llvm-svn: 118893 | ||||
* | Fix memory access lowering on SPU, adding | Kalle Raiskila | 2010-11-12 | 3 | -1/+26 |
| | | | | | | | | | | | | support for the case where alignment<value size. These cases were silently miscompiled before this patch. Now they are overly verbose -especially storing is- and any front-end should still avoid misaligned memory accesses as much as possible. The bit juggling algorithm added here probably has some room for improvement still. llvm-svn: 118889 | ||||
* | Enhance DSE to handle the case where a free call makes more than | Dan Gohman | 2010-11-12 | 1 | -0/+14 |
| | | | | | | | one store dead. This is especially noticeable in SingleSource/Benchmarks/Shootout/objinst. llvm-svn: 118875 | ||||
* | Filecheckize. | Dan Gohman | 2010-11-12 | 1 | -1/+12 |
| | | | | llvm-svn: 118874 | ||||
* | Enable mips32 mul instruction. Patch by Akira Hatanaka <ahatanaka@mips.com> | Bruno Cardoso Lopes | 2010-11-12 | 1 | -0/+15 |
| | | | | llvm-svn: 118864 | ||||
* | Fill out support for Thumb2 encodings of NEON instructions. | Owen Anderson | 2010-11-11 | 9 | -0/+532 |
| | | | | llvm-svn: 118854 | ||||
* | Fix tblgen instruction errors exposed by MC asm parser tests | Wesley Peck | 2010-11-11 | 6 | -0/+881 |
| | | | | | | | Fix minimum 16-bit signed value error exposed by MC asm parser tests Add initial MC asm parser tests for the MBlaze backend llvm-svn: 118844 | ||||
* | Add correct Thumb2 encodings for NEON vst[1,2,3,4] and vld[1,2,3,4]. | Owen Anderson | 2010-11-11 | 2 | -0/+215 |
| | | | | llvm-svn: 118843 | ||||
* | Factor out Instruction::isSafeToSpeculativelyExecute's code for | Dan Gohman | 2010-11-11 | 1 | -0/+94 |
| | | | | | | | | | | | | testing for dereferenceable pointers into a helper function, isDereferenceablePointer. Teach it how to reason about GEPs with simple non-zero indices. Also eliminate ArgumentPromtion's IsAlwaysValidPointer, which didn't check for weak externals or out of range gep indices. llvm-svn: 118840 | ||||
* | Flesh out tests for Thumb2 encodings of NEON instructions. | Owen Anderson | 2010-11-11 | 11 | -0/+748 |
| | | | | llvm-svn: 118837 | ||||
* | Delete unneeded ssp attributes. | Dan Gohman | 2010-11-11 | 3 | -3/+3 |
| | | | | llvm-svn: 118836 | ||||
* | Add support for Thumb2 encodings of NEON data processing instructions, using ↵ | Owen Anderson | 2010-11-11 | 2 | -0/+171 |
| | | | | | | | | the new PostEncoderMethod infrastructure. More tests to come. llvm-svn: 118819 | ||||
* | Mark labels declared in tls sections as STT_TLS. This matches the behavior of | Rafael Espindola | 2010-11-11 | 1 | -0/+15 |
| | | | | | | gas. llvm-svn: 118818 | ||||
* | Initial comdat implementation. | Rafael Espindola | 2010-11-11 | 2 | -6/+47 |
| | | | | llvm-svn: 118805 | ||||
* | TBAA-enable ArgumentPromotion. | Dan Gohman | 2010-11-11 | 1 | -0/+31 |
| | | | | llvm-svn: 118804 | ||||
* | Make AliasedSymbol able to handle MCTargetExpr. They can get here if | Rafael Espindola | 2010-11-11 | 1 | -0/+8 |
| | | | | | | a weakref is used with a VariantKind. llvm-svn: 118798 | ||||
* | Fix the symbol index of weak references. Also make RecordRelocation a bit | Rafael Espindola | 2010-11-11 | 1 | -0/+49 |
| | | | | | | | easier to read by having const references to the symbol, aliased symbol and renamed symbol. llvm-svn: 118793 | ||||
* | Remove the memmove->memcpy optimization from CodeGen. MemCpyOpt does this. | Dan Gohman | 2010-11-11 | 4 | -36/+0 |
| | | | | llvm-svn: 118789 | ||||
* | Make Sink tbaa-aware. | Dan Gohman | 2010-11-11 | 1 | -0/+20 |
| | | | | llvm-svn: 118788 | ||||
* | CMake: Add the new option "LLVM_LIT_ARGS". | NAKAMURA Takumi | 2010-11-11 | 1 | -1/+4 |
| | | | | | | | | Defaults: if (MSVC OR XCODE): "-sv --no-progress-bar" else: "-sv" llvm-svn: 118776 | ||||
* | Add a testcase which demonstrates alias analysis pass precedence. | Dan Gohman | 2010-11-11 | 1 | -0/+21 |
| | | | | llvm-svn: 118755 | ||||
* | Fully invalidate cached results when a prior query's size or | Dan Gohman | 2010-11-10 | 1 | -0/+91 |
| | | | | | | type is insufficient for, or incompatible with, the current query. llvm-svn: 118721 | ||||
* | Enhance GVN to do more precise alias queries for non-local memory | Dan Gohman | 2010-11-10 | 1 | -0/+59 |
| | | | | | | | | | | | | | | | references. For example, this allows gvn to eliminate the load in this example: void foo(int n, int* p, int *q) { p[0] = 0; p[1] = 1; if (n) { *q = p[0]; } } llvm-svn: 118714 | ||||
* | Teach InstructionSimplify how to look through PHI nodes. Since PHI | Duncan Sands | 2010-11-10 | 1 | -0/+47 |
| | | | | | | | | | nodes can be used in loops, this could result in infinite looping if there is no recursion limit, so add such a limit. It is also used for the SelectInst case because in theory there could be an infinite loop there too if the basic block is unreachable. llvm-svn: 118694 | ||||
* | Add a test to the previous added clo instruction. Patch by Akira again | Bruno Cardoso Lopes | 2010-11-10 | 1 | -0/+33 |
| | | | | llvm-svn: 118668 | ||||
* | When checking that the necessary bits are zero in | Dale Johannesen | 2010-11-10 | 1 | -0/+26 |
| | | | | | | | order to reduce ((x<<30)>>24) to x<<6, check the correct bits. PR 8547. llvm-svn: 118665 | ||||
* | Make ModRefBehavior a lattice. Use this to clean up AliasAnalysis | Dan Gohman | 2010-11-10 | 2 | -2/+2 |
| | | | | | | chaining and simplify FunctionAttrs' GetModRefBehavior logic. llvm-svn: 118660 | ||||
* | Jim's recent fixes 118600, 118587, 118513 have made these work. | Dale Johannesen | 2010-11-09 | 2 | -2/+0 |
| | | | | llvm-svn: 118652 | ||||
* | Do not use MEMBARRIER_MCR for any Thumb code. | Bob Wilson | 2010-11-09 | 1 | -0/+1 |
| | | | | | | | | | It is only supported for ARM code. Normally Thumb2 code would use DMB instead, but depending on how the compiler is invoked (e.g., -mattr=-db) that might be disabled. This prevents a "cannot select MEMBARRIER_MCR" error in that situation. Radar 8644195 llvm-svn: 118642 | ||||
* | Teach FunctionAttrs about the VAArg instruction. | Dan Gohman | 2010-11-09 | 1 | -0/+14 |
| | | | | llvm-svn: 118627 | ||||
* | Testcase for PR8211 (llc crash at -O0). | Duncan Sands | 2010-11-09 | 1 | -0/+66 |
| | | | | llvm-svn: 118509 | ||||
* | Fix DAGCombiner to avoid folding a sext-in-reg or similar through a shl | Dan Gohman | 2010-11-09 | 1 | -5/+38 |
| | | | | | | in order to fold it into a load. llvm-svn: 118471 | ||||
* | Delete an extraneous svn:executable property. | Dan Gohman | 2010-11-09 | 1 | -0/+0 |
| | | | | llvm-svn: 118470 | ||||
* | Fix an inline asm pasto from 117667; was preventing | Dale Johannesen | 2010-11-09 | 1 | -0/+17 |
| | | | | | | {i64, i64} from matching i128. llvm-svn: 118465 | ||||
* | Add support for ARM's specialized vector-compare-against-zero instructions. | Owen Anderson | 2010-11-08 | 4 | -0/+66 |
| | | | | llvm-svn: 118453 | ||||
* | Add an additional test for icmp of select folding. | Duncan Sands | 2010-11-08 | 1 | -0/+11 |
| | | | | llvm-svn: 118441 | ||||
* | Add a testcase for a call which BasicAA says only accesses memory through | Dan Gohman | 2010-11-08 | 1 | -0/+30 |
| | | | | | | its arguments and which TBAA says doesn't write to memory. llvm-svn: 118439 | ||||
* | Revert 118422 in search of bot verdancy. | Dale Johannesen | 2010-11-08 | 1 | -29/+12 |
| | | | | llvm-svn: 118429 | ||||
* | Support -mcpu=cortex-a8 in ARM attributes - Has Fixme. 1 Test modified. | Jason W Kim | 2010-11-08 | 1 | -12/+29 |
| | | | | llvm-svn: 118422 | ||||
* | Make FunctionAttrs TBAA-aware. | Dan Gohman | 2010-11-08 | 1 | -0/+37 |
| | | | | llvm-svn: 118417 | ||||
* | Extend the AliasAnalysis::pointsToConstantMemory interface to allow it | Dan Gohman | 2010-11-08 | 1 | -1/+1 |
| | | | | | | | | | | | | to optionally look for constant or local (alloca) memory. Teach BasicAliasAnalysis::pointsToConstantMemory to look through Select and Phi nodes, and to support looking for local memory. Remove FunctionAttrs' PointsToLocalOrConstantMemory function, now that AliasAnalysis knows all the tricks that it knew. llvm-svn: 118412 | ||||
* | Make FunctionAttrs use AliasAnalysis::getModRefBehavior, now that it | Dan Gohman | 2010-11-08 | 1 | -1/+1 |
| | | | | | | knows about intrinsic functions. llvm-svn: 118410 | ||||
* | Set default flags for .rodata. | Rafael Espindola | 2010-11-08 | 1 | -2/+15 |
| | | | | llvm-svn: 118395 | ||||
* | Add simplification of floating point comparisons with the result | Duncan Sands | 2010-11-07 | 1 | -0/+8 |
| | | | | | | | of a select instruction, the same as already exists for integer comparisons. llvm-svn: 118379 | ||||
* | Fix a README item: when doing a comparison with the result | Duncan Sands | 2010-11-07 | 1 | -0/+10 |
| | | | | | | | | of a select instruction, see if doing the compare with the true and false values of the select gives the same result. If so, that can be used as the value of the comparison. llvm-svn: 118378 |