summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Move single letter 'P' prefix out of multiclass now that tablegen allows ↵Craig Topper2012-12-271-86/+85
| | | | | | defm to start with #NAME. This makes instruction names more searchable again. llvm-svn: 171141
* Update tablegen parser to allow defm names to start with #NAME.Craig Topper2012-12-271-1/+5
| | | | llvm-svn: 171140
* Add hasSideEffects=0 to some shift and rotate instructions. None of which ↵Craig Topper2012-12-271-1/+5
| | | | | | are currently used by code generation. llvm-svn: 171137
* Mark the divide instructions as hasSideEffects=0.Craig Topper2012-12-271-0/+2
| | | | llvm-svn: 171136
* For the dwarf5 split debug info code split out the string sectionEric Christopher2012-12-274-25/+57
| | | | | | per compile unit/skeleton compile unit. Update tests accordingly. llvm-svn: 171133
* FileCheck-ize.Eric Christopher2012-12-271-5/+8
| | | | llvm-svn: 171132
* FileCheck-ize.Eric Christopher2012-12-271-7/+11
| | | | llvm-svn: 171131
* Add hasSideEffects=0 to CMP*rr_REV.Craig Topper2012-12-271-0/+1
| | | | llvm-svn: 171130
* whitespaceNadav Rotem2012-12-271-3/+3
| | | | llvm-svn: 171129
* Add mayLoad, mayStore, and hasSideEffects tags to BT/BTS/BTR/BTC ↵Craig Topper2012-12-271-19/+43
| | | | | | instructions. Shouldn't change any functionality since they don't have patterns to select them. llvm-svn: 171128
* Right now all of the relocations are 32-bit dwarf, and the relocationEric Christopher2012-12-273-7/+41
| | | | | | | | information doesn't return an addend for Rel relocations. Go ahead and use this information to fix relocation handling inside dwarfdump for 32-bit ELF REL. llvm-svn: 171126
* If all of the write objects are identified then we can vectorize the loop ↵Nadav Rotem2012-12-262-1/+58
| | | | | | | | even if the read objects are unidentified. PR14719. llvm-svn: 171124
* Fix operands and encoding form for ARPL instruction. Register form had and ↵Craig Topper2012-12-261-2/+2
| | | | | | reversed. Memory form writes memory, but was marked as MRMSrcMem. llvm-svn: 171123
* Add hasSideEffects=0 to some atomic instructions.Craig Topper2012-12-261-1/+1
| | | | llvm-svn: 171122
* Mark the AL/AX/EAX forms of the basic arithmetic operations has never having ↵Craig Topper2012-12-261-43/+44
| | | | | | side effects. llvm-svn: 171121
* 80 columns. No functionality change.Nick Lewycky2012-12-261-1/+1
| | | | llvm-svn: 171120
* Remove mid-optimizer warning. This situation should be handled differently,Nick Lewycky2012-12-261-5/+2
| | | | | | | such as by a compiler warning, a check in clang -fsanitizer=undefined, being optimized to unreachable, or a combination of the above. PR14722. llvm-svn: 171119
* Mark all the _REV instructions as not having side effects. They aren't ↵Craig Topper2012-12-264-9/+10
| | | | | | really emitted by the backend, but it reduces the number of instructions in the output files with unmodelled side effects to make auditing easier. llvm-svn: 171118
* Remove a special conditional setting of neverHasSideEffects if the ↵Craig Topper2012-12-261-4/+3
| | | | | | instruction didn't have a pattern. This was leftover from when tablegen used to complain if things were already inferred from patterns. llvm-svn: 171117
* Update the docs with the new workload that was added.Nadav Rotem2012-12-261-0/+0
| | | | llvm-svn: 171115
* LoopVectorizer: Optimize the vectorization of consecutive memory access when ↵Nadav Rotem2012-12-263-24/+73
| | | | | | the iteration step is -1 llvm-svn: 171114
* Fix comment typoEli Bendersky2012-12-261-1/+1
| | | | llvm-svn: 171113
* [msan] Raise alignment of origin stores/loads when possible.Evgeniy Stepanov2012-12-262-7/+20
| | | | | | | Origin alignment is as high as the alignment of the corresponding application location, but never less than 4. llvm-svn: 171110
* [msan] Expand the file comment with track-origins info.Evgeniy Stepanov2012-12-261-5/+27
| | | | llvm-svn: 171109
* Fix quoting in configure. Patch by Krzysztof Parzyszek!Benjamin Kramer2012-12-262-4/+4
| | | | llvm-svn: 171108
* Merge still more SSE/AVX instruction definitions.Craig Topper2012-12-261-43/+15
| | | | llvm-svn: 171103
* Merge more SSE/AVX instruction definitions.Craig Topper2012-12-261-129/+49
| | | | llvm-svn: 171102
* TableGen/FixedLenDecoderEmitter.cpp: Fix a potential mask overflow in ↵NAKAMURA Takumi2012-12-261-1/+1
| | | | | | | | fieldFromInstruction(). Reported by Yang Yongyong, thanks! llvm-svn: 171101
* revert an accidental commit.Nadav Rotem2012-12-261-12/+0
| | | | llvm-svn: 171098
* Fix 80 column violation.Craig Topper2012-12-261-2/+2
| | | | llvm-svn: 171097
* Fix class name in comment.Craig Topper2012-12-261-1/+1
| | | | llvm-svn: 171096
* Merge SSE/AVX PCMPEQ/PCMPGT instruction definitions.Craig Topper2012-12-261-62/+12
| | | | llvm-svn: 171095
* Doc: add fmuladd to the list of vectorizeable functions. Thanks hfinkel.Nadav Rotem2012-12-261-0/+14
| | | | llvm-svn: 171094
* Remove 'v' from mnemonic to fix asm matching failures.Craig Topper2012-12-261-1/+1
| | | | llvm-svn: 171093
* Use an additional multiclass to merge the 128/256-bit SSE/AVX instruction ↵Craig Topper2012-12-261-108/+42
| | | | | | definitions for a bunch of SSE2 integer arithmetic instructions. llvm-svn: 171092
* Reformat the docs.Nadav Rotem2012-12-261-20/+7
| | | | llvm-svn: 171091
* white spaceNadav Rotem2012-12-261-1/+0
| | | | llvm-svn: 171090
* Use an additional multiclass to merge the 128/256-bit SSE/AVX instruction ↵Craig Topper2012-12-261-30/+18
| | | | | | definitions for PAND/POR/PXOR/PANDN llvm-svn: 171087
* Merge an AVX/SSE 256-bit and 128-bit multiclass.Craig Topper2012-12-261-26/+15
| | | | llvm-svn: 171086
* Mark VANDNPD/VANDNPDS as not commutable.Craig Topper2012-12-261-1/+2
| | | | llvm-svn: 171085
* llvm/test/CodeGen/X86: FileCheck-ize two tests in r171083.NAKAMURA Takumi2012-12-262-2/+17
| | | | llvm-svn: 171084
* llvm/test/CodeGen/X86: Disable avx in two tests corresponding to r171082.NAKAMURA Takumi2012-12-262-2/+2
| | | | llvm-svn: 171083
* Remove alignment from a bunch more VEX encoded operations in the folding tables.Craig Topper2012-12-261-47/+47
| | | | llvm-svn: 171082
* Remove alignment from folding table for VMOVUPD as an unaligned instruction ↵Craig Topper2012-12-261-1/+1
| | | | | | it shouldn't require alignment... llvm-svn: 171081
* Remove alignment requirements from (V)EXTRACTPS. This instruction does ↵Craig Topper2012-12-261-2/+2
| | | | | | 32-bit stores which aren't required to be aligned on SSE or AVX. llvm-svn: 171080
* BBVectorize: Use VTTI to compute costs for intrinsics vectorizationHal Finkel2012-12-262-12/+143
| | | | | | | | | | | | For the time being this includes only some dummy test cases. Once the generic implementation of the intrinsics cost function does something other than assuming scalarization in all cases, or some target specializes the interface, some real test cases can be added. Also, for consistency, I changed the type of IID from unsigned to Intrinsic::ID in a few other places. llvm-svn: 171079
* Remove alignment requirement from VCVTSS2SD in folding tables. Reverting ↵Craig Topper2012-12-261-2/+2
| | | | | | r171049. This instruction doesn't require alignment. llvm-svn: 171078
* LoopVectorize: Enable vectorization of the fmuladd intrinsicHal Finkel2012-12-252-0/+61
| | | | llvm-svn: 171076
* BBVectorize: Enable vectorization of the fmuladd intrinsicHal Finkel2012-12-252-0/+29
| | | | llvm-svn: 171075
* Loosen scheduling restrictions on the PPC dcbt intrinsicHal Finkel2012-12-252-1/+24
| | | | | | | | | | | As with the prefetch intrinsic to which it maps, simply have dcbt marked as reading from and writing to its arguments instead of having unmodeled side effects. While this might cause unwanted code motion (because aliasing checks don't really capture cache-line sharing), it is more important that prefetches in unrolled loops don't block the scheduler from rearranging the unrolled loop body. llvm-svn: 171073
OpenPOWER on IntegriCloud