summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* [asan] Use 1 byte aligned stores to poison shadow memoryVitaly Buka2016-08-221-2/+2
| | | | | | | | | | | | Summary: r279379 introduced crash on arm 32bit bot. I suspect this is alignment issue. Reviewers: eugenis Subscribers: llvm-commits, aemerson Differential Revision: https://reviews.llvm.org/D23762 llvm-svn: 279413
* [X86] Merge hasVEX_i8ImmReg into the ImmFormat type which had extra unused ↵Craig Topper2016-08-225-84/+91
| | | | | | encodings. This saves one bit in TSFlags. NFC llvm-svn: 279412
* [X86] Remove ignoreVEX_L from TSFlags. Only the disassembler needs it and ↵Craig Topper2016-08-222-23/+9
| | | | | | the disassembler doesn't use TSFlags. NFC llvm-svn: 279411
* Reformat.NAKAMURA Takumi2016-08-222-22/+22
| | | | llvm-svn: 279409
* Untabify.NAKAMURA Takumi2016-08-223-23/+20
| | | | llvm-svn: 279408
* [CostModel][X86] Removed shift testsSimon Pilgrim2016-08-211-80/+0
| | | | | | There are more thorough tests found in vshift-*-cost.ll llvm-svn: 279406
* [CostModel][X86] Added costs for vXi16 and vXi8 vectors for ↵Simon Pilgrim2016-08-211-114/+372
| | | | | | add/sub/mul/and/or/xor tests llvm-svn: 279405
* [CostModel][X86] Replaced SSSE3 with SSE2 costs to create a better baselineSimon Pilgrim2016-08-211-43/+43
| | | | llvm-svn: 279404
* [CostModel][X86] Added fsqrt and fma costsSimon Pilgrim2016-08-211-2/+104
| | | | llvm-svn: 279403
* [CostModel][X86] Split off float arithmetic cost testsSimon Pilgrim2016-08-212-215/+224
| | | | llvm-svn: 279402
* [InstCombine] use m_APInt to allow icmp (shl X, Y), C folds for splat ↵Sanjay Patel2016-08-212-16/+12
| | | | | | | | | | | constant vectors, part 4 This concludes the fixes for icmp+shl in this series: https://reviews.llvm.org/rL279339 https://reviews.llvm.org/rL279398 https://reviews.llvm.org/rL279399 llvm-svn: 279401
* remove FIXME comment; fixed by previous commitSanjay Patel2016-08-211-1/+0
| | | | llvm-svn: 279400
* [InstCombine] use m_APInt to allow icmp (shl X, Y), C folds for splat ↵Sanjay Patel2016-08-212-8/+8
| | | | | | | | constant vectors, part 3 This is a partial enablement (move the ConstantInt guard down). llvm-svn: 279399
* [InstCombine] use m_APInt to allow icmp (shl X, Y), C folds for splat ↵Sanjay Patel2016-08-212-9/+7
| | | | | | | | constant vectors, part 2 This is a partial enablement (move the ConstantInt guard down). llvm-svn: 279398
* [X86][AVX] Dropped combineShuffle256 - this can now be performed by ↵Simon Pilgrim2016-08-211-82/+0
| | | | | | EltsFromConsecutiveLoads llvm-svn: 279397
* [InstCombine] use APInt instead of ConstantInt in isSignBitCheck(); NFCISanjay Patel2016-08-211-8/+8
| | | | | | | | The callers still have ConstantInt guards, so there is no functional change intended from this change. But relaxing the callers will allow more folds for vector types. llvm-svn: 279396
* [AVX512][FastISel] Do not use K registers in TEST instructionsGuy Blank2016-08-212-31/+94
| | | | | | | | | In some cases, FastIsel was emitting TEST instruction with K reg input, which is illegal. Changed to using KORTEST when dealing with K regs. Differential Revision: https://reviews.llvm.org/D23163 llvm-svn: 279393
* ARM: Avoid dereferencing end() in ARMFrameLowering::emitEpilogueDuncan P. N. Exon Smith2016-08-212-2/+84
| | | | | | | | | | | | | | | | | | This fixes the crash from PR29072, where the MachineBasicBlock::iterator wasn't being properly checked against MachineBasicBlock::end() before iterating. This was another bug exposed by the new ilist::iterator::operator*() assertion from r279314. This testcase is poor quality. bugpoint couldn't reduce any further, and I haven't had time to dig into what's going on so I can't invent a better one. I didn't even get good CHECK lines in: this is just a crasher. I'm committing anyway since this is a real crash with an obvious fix, but I'll leave PR29072 open and ask an ARM maintainer to help improve the testcase. llvm-svn: 279391
* Fix broken macOS LLDB Xcode build from r279314Todd Fiala2016-08-201-1/+1
| | | | llvm-svn: 279390
* [X86][SSE] Regenerate 32-bit buildvector testSimon Pilgrim2016-08-201-7/+16
| | | | llvm-svn: 279389
* [X86][SSE] Regenerate subvector extraction widening testSimon Pilgrim2016-08-201-5/+17
| | | | llvm-svn: 279388
* [X86] Regenerate fp truncate testsSimon Pilgrim2016-08-202-11/+11
| | | | llvm-svn: 279387
* Regenerate testSimon Pilgrim2016-08-201-3/+3
| | | | llvm-svn: 279386
* Regenerate testSimon Pilgrim2016-08-201-9/+13
| | | | llvm-svn: 279385
* [X86][XOP] Tweak vpermil2pd test to stop it being combined awaySimon Pilgrim2016-08-201-3/+3
| | | | llvm-svn: 279384
* [asan] Minimize code size by using __asan_set_shadow_* for large blocksVitaly Buka2016-08-202-15/+93
| | | | | | | | | | | | | Summary: We can insert function call instead of multiple store operation. Current default is blocks larger than 64 bytes. Changes are hidden behind -asan-experimental-poisoning flag. PR27453 Differential Revision: https://reviews.llvm.org/D23711 llvm-svn: 279383
* Use SDValue::getOpcode() helper instead of via SDValue::getNode()Simon Pilgrim2016-08-201-2/+2
| | | | llvm-svn: 279381
* [asan] Initialize __asan_set_shadow_* callbacksVitaly Buka2016-08-202-0/+43
| | | | | | | | | | | | | | | Summary: Callbacks are not being used yet. PR27453 Reviewers: kcc, eugenis Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D23634 llvm-svn: 279380
* [asan] Optimize store size in FunctionStackPoisoner::poisonRedZonesVitaly Buka2016-08-204-54/+69
| | | | | | | | | | | | Summary: Reduce store size to avoid leading and trailing zeros. Reviewers: kcc, eugenis Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D23648 llvm-svn: 279379
* [asan] Cleanup instrumentation of dynamic allocasVitaly Buka2016-08-205-29/+49
| | | | | | | | | | Summary: Extract instrumenting dynamic allocas into separate method. Rename asan-instrument-allocas -> asan-instrument-dynamic-allocas Differential Revision: https://reviews.llvm.org/D23707 llvm-svn: 279376
* [X86][SSE] Added vector interleave test (PR21281)Simon Pilgrim2016-08-201-0/+151
| | | | llvm-svn: 279375
* [asan] Add support of lifetime poisoning into ComputeASanStackFrameLayoutVitaly Buka2016-08-204-33/+48
| | | | | | | | | | | | | | | Summary: We are going to combine poisoning of red zones and scope poisoning. PR27453 Reviewers: kcc, eugenis Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D23623 llvm-svn: 279373
* Move unittests/Support/IteratorTest.cpp to unittests/ADT/Duncan P. N. Exon Smith2016-08-203-1/+1
| | | | | | This testing stuff from ADT, not Support. Fix the file location. llvm-svn: 279372
* Reapply "[SLP] Initialize VectorizedValue when gathering"Matthew Simpson2016-08-202-8/+153
| | | | | | | | | | | The test case included in r279125 exposed existing undefined behavior in the SLP vectorizer that it did not introduce. This patch reapplies the original patch, but modifies the test case to avoid hitting the undefined behavior. This allows us to close PR28330 while keeping the UBSan bot happy. The undefined behavior the original test uncovered will be addressed in a follow-on patch. Reference: https://llvm.org/bugs/show_bug.cgi?id=28330 llvm-svn: 279370
* [SLP] Add command line option for minimum tree size (NFC)Matthew Simpson2016-08-201-1/+5
| | | | llvm-svn: 279369
* Revert "[SLP] Initialize VectorizedValue when gathering" to fix ubsan bot.Vitaly Buka2016-08-202-161/+8
| | | | | | | | This reverts commit r279125. https://reviews.llvm.org/D23410 llvm-svn: 279363
* [CMake/ASan] Skip using libedit if ASan is enabled -- it leaks memory.Chandler Carruth2016-08-201-1/+2
| | | | | | | Note that you'll have to clear this variable from your CMake cache for it to take effect. llvm-svn: 279362
* [Profile] add test with large countsXinliang David Li2016-08-202-0/+15
| | | | llvm-svn: 279361
* [PM] Introduce an abstraction for all the analyses over a particular IRChandler Carruth2016-08-203-13/+35
| | | | | | | | | | | | | | | | | | unit for use in the PreservedAnalyses set. This doesn't have any important functional change yet but it cleans things up and makes the analysis substantially more efficient by avoiding querying through the type erasure for every analysis. I also think it makes it much easier to reason about how analyses are preserved when walking across pass managers and across IR unit abstractions. Thanks to Sean and Mehdi both for the comments and suggestions. Differential Revision: https://reviews.llvm.org/D23691 llvm-svn: 279360
* [gold/ThinLTO] Restore ThinLTO file management in gold pluginTeresa Johnson2016-08-202-1/+20
| | | | | | | | | | | | | | | | | | Summary: The gold-plugin changes added along with the new LTO API in r278338 had the effect of removing the management of the PluginInputFile that ensured the files weren't released back to gold until the backend threads were complete. Add back the old file handling. Fixes PR29020. Reviewers: mehdi_amini Subscribers: mehdi_amini, llvm-commits, hjl.tools Differential Revision: https://reviews.llvm.org/D23721 llvm-svn: 279356
* [gold] Fix new gold test to specify emulation modeTeresa Johnson2016-08-201-0/+1
| | | | | | Add emulation mode option for new test added in r279023. llvm-svn: 279355
* [LTO] Add the ability to test -thinlto-emit-imports-files through llvm-lto2Mehdi Amini2016-08-192-1/+28
| | | | | | | | | | | | | | Summary: Start bringing llvm-lto2 to a level where we can test the LTO API a bit deeper. Reviewers: tejohnson Subscribers: llvm-commits, mehdi_amini Differential Revision: https://reviews.llvm.org/D23681 llvm-svn: 279349
* MachineFunction: Add llvm_unreachable for missing propertiesMatthias Braun2016-08-191-0/+1
| | | | | | Most compilers should give you a warning anyway though. llvm-svn: 279346
* Reset "undef" flag when coalescing subregister into whole registerKrzysztof Parzyszek2016-08-191-0/+1
| | | | llvm-svn: 279344
* GlobalISel: support legalization of G_FCONSTANTsTim Northover2016-08-195-0/+26
| | | | llvm-svn: 279341
* GlobalISel: teach legalizer how to handle integer constants.Tim Northover2016-08-194-3/+80
| | | | llvm-svn: 279340
* [InstCombine] use m_APInt to allow icmp (shl X, Y), C folds for splat ↵Sanjay Patel2016-08-193-33/+36
| | | | | | | | | constant vectors, part 1 This is a partial enablement (move the ConstantInt guard down) because there are many different folds here and one of the later ones will require reworking 'isSignBitCheck'. llvm-svn: 279339
* MachineFunction: Cleanup/simplify MachineFunctionProperties::print()Matthias Braun2016-08-194-40/+22
| | | | | | | | | | - Always compile print() regardless of LLVM_ENABLE_DUMP. (We usually only gard dump() functions with that). - Only show the set properties to reduce output clutter. - Remove the unused variant that even shows the unset properties. - Fix comments llvm-svn: 279338
* MachineFunction: Make LastProperty an alias of the last propertyMatthias Braun2016-08-192-4/+2
| | | | | | | This avoids unnecessary cases in switch statements covering all properties. llvm-svn: 279337
* Partially revert 279331, as we modify this instruction in the loopDaniel Berlin2016-08-191-3/+7
| | | | llvm-svn: 279335
OpenPOWER on IntegriCloud