summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Retry^2 "[ProfileData] (llvm) Use Error in InstrProf and Coverage, NFC"Vedant Kumar2016-05-1618-504/+612
| | | | | | | | | | | | | | | Transition InstrProf and Coverage over to the stricter Error/Expected interface. Changes since the initial commit: - Address undefined-var-template warning. - Fix error message printing in llvm-profdata. - Check errors in loadTestingFormat() + annotateAllFunctions(). - Defer error handling in InstrProfIterator to InstrProfReader. Differential Revision: http://reviews.llvm.org/D19901 llvm-svn: 269694
* llvm-dwp: Streamline duplicate DWO ID diagnostic handlingDavid Blaikie2016-05-162-30/+33
| | | | | | | | Actually use the error return path rather than printing the duplicate information then a separate error. But also just tidy up/deduplicate some of the code for generating the diagnostic text. llvm-svn: 269692
* sync up common profile header /nfcXinliang David Li2016-05-161-9/+27
| | | | llvm-svn: 269690
* [SystemZ] Support LRVH and STRVH opcodesBryan Chan2016-05-168-5/+417
| | | | | | | | | | | | Summary: On Linux, /usr/include/bits/byteswap-16.h defines __byteswap_16(x) as an inlined LRVH (Load Reversed Half-word) instruction. The SystemZ back-end did not support this opcode and the inlined assembly would cause a fatal error. Reviewers: bryanpkc, uweigand Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D18732 llvm-svn: 269688
* Remove extra whitespace. NFC.Chad Rosier2016-05-161-1/+1
| | | | llvm-svn: 269685
* ThinLTO: sort inputs and schedule by decreasing sizeMehdi Amini2016-05-161-4/+18
| | | | | | | | | | | This is a compile time optimization: keeping a large file to process at the end hurts parallelism. The heurisitic used right now is the input buffer size, however we may want to consider the number of functions to import or the different number of files to load for importing as well. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269684
* [WebAssembly] Mark COPY_LOCAL and TEE_LOCAL instructions has having no side ↵Dan Gohman2016-05-162-3/+7
| | | | | | effects. llvm-svn: 269683
* ThinLTO caching: reload cached file with mmap and drop heap-allocated memory ↵Mehdi Amini2016-05-161-5/+14
| | | | | | | | | | | | buffer This is reducing pressure on the OS memory system, and is NFC when not using a cache. I measure a 10x memory consumption reduction when linking opt with full debug info. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269682
* [WebAssembly] Use eqz to negate a branch conditions.Dan Gohman2016-05-162-10/+3
| | | | llvm-svn: 269681
* [BasicAA] Update comments based on feedback from hfinkel. NFCI.Geoff Berry2016-05-161-1/+4
| | | | | | | Original change Hal's comments were based on: http://reviews.llvm.org/D19730 llvm-svn: 269678
* [WebAssembly] Add a few optimization ideas to README.txt.Dan Gohman2016-05-161-0/+15
| | | | llvm-svn: 269677
* [X86] Remove transformVSELECTtoBlendVECTOR_SHUFFLEMichael Kuperstein2016-05-162-119/+10
| | | | | | | | | | | | | | | The new X86 shuffle lowering can do just fine without transforming vselects into vector_shuffles. It looks like the only thing this code does right now is cause trouble - in particular, it can lead to combine/legalization infinite loops. Note that it's not completely NFC, since some of the shuffle masks get inverted, which may cause slight differences further down the line. We may want to find a way to invert those masks, but that's orthogonal to this commit. This fixes the hang in PR27689. llvm-svn: 269676
* [Hexagon] Make getCallerSavedRegs specific to a register classKrzysztof Parzyszek2016-05-163-33/+61
| | | | llvm-svn: 269674
* [LAA] Rename forwarding conflict detection option (NFC)Matthew Simpson2016-05-162-7/+7
| | | | | | | This patch renames the option enabling the store-to-load forwarding conflict detection optimization. This change was requested in the review of D20241. llvm-svn: 269668
* [LAA] Comment couldPreventStoreLoadForward. NFCAdam Nemet2016-05-162-2/+11
| | | | | | | Also s/Cycles/Iters/ in NumCyclesForStoreLoadThroughMemory to make it clear that this is not about clock cycles but loop cycles/iterations. llvm-svn: 269667
* [LAA] clang-format the function couldPreventStoreLoadForward. NFCAdam Nemet2016-05-161-9/+9
| | | | llvm-svn: 269666
* [Hexagon] Simplify HexagonInstrInfo::isPredicableKrzysztof Parzyszek2016-05-162-85/+6
| | | | | | | Remove all the checks for constant extenders from isPredicable. The users of it should be the ones checking cost/profitability. llvm-svn: 269664
* [PM] Port indirect call promotion pass to new pass managerXinliang David Li2016-05-169-0/+27
| | | | llvm-svn: 269660
* [LV] Ensure safe VF for loops with interleaved accessesMatthew Simpson2016-05-162-1/+79
| | | | | | | | | | | | | The selection of the vectorization factor currently doesn't consider interleaved accesses. The vectorization factor is based on the maximum safe dependence distance computed by LAA. However, for loops with interleaved groups, we should instead base the vectorization factor on the maximum safe dependence distance divided by the maximum interleave factor of all the interleaved groups. Interleaved accesses not in a group will be scalarized. Differential Revision: http://reviews.llvm.org/D20241 llvm-svn: 269659
* [llc] New diagnostic handlerRenato Golin2016-05-1631-34/+69
| | | | | | | | | | | | | | | | | | | | | | Without a diagnostic handler installed, llc's behaviour is to exit on the first error that it encounters. This is very different from the behaviour of clang and other front ends, which try to gather as many errors as possible before exiting. This commit adds a diagnostic handler to llc, allowing it to find and report more than one error. The old behaviour is preserved under a flag (-exit-on-error). Some of the tests fail with the new diagnostic handler, so they have to use the new flag in order to run under the previous behaviour. Some of these are known bugs, others need further investigation. Ideally, we should fix the tests and remove the flag at some point in the future. Reapplied after fixing the LLDB build that was broken due to the new DiagnosticSeverity in LLVMContext.h, and fixed an UB in the new change. Patch by Diana Picus. llvm-svn: 269655
* [LAA] Add option to disable conflict detection (NFC)Matthew Simpson2016-05-161-2/+9
| | | | llvm-svn: 269654
* Use proper capitalization and punctuation per coding standards. NFC.Chad Rosier2016-05-161-1/+1
| | | | llvm-svn: 269652
* Fixed unused variable warningSimon Pilgrim2016-05-161-1/+0
| | | | llvm-svn: 269650
* [X86][SSSE3] Lower vector CTLZ with PSHUFB lookupsSimon Pilgrim2016-05-163-1863/+613
| | | | | | | | | | This patch uses PSHUFB to lower vector CTLZ and avoid (slower) scalarizations. The leading zero count of each 4-bit nibble of the vector is determined by using a PSHUFB lookup. Pairs of results are then repeatedly combined up to the original element width. Differential Revision: http://reviews.llvm.org/D20016 llvm-svn: 269646
* macho2yaml.cpp: Fix "reserved" uninitialized.NAKAMURA Takumi2016-05-161-0/+1
| | | | | FIXME: It should reflect actual field. llvm-svn: 269645
* [Sparc][LEON] Add LEON-specific CASA instruction.Chris Dewhurst2016-05-168-24/+79
| | | | | | Differental Revision: http://reviews.llvm.org/D20098 llvm-svn: 269644
* Appease msc18 to move PassBuilder::crossRegisterProxies() in front of ↵NAKAMURA Takumi2016-05-161-14/+14
| | | | | | | | PassBuilder::parseModulePassPipeline(). I don't know why it crashed cl.exe but it works. llvm-svn: 269643
* [mips][ias] Fix R_MICROMIPS_GOT16 evaluation and eliminate symbol for ↵Daniel Sanders2016-05-163-8/+84
| | | | | | | | | | | | | | | | | | | R_MICROMIPS_(GOT|HI|LO)16 Summary: The failure r269410 worked around turned out to be caused by an incorrect evaluation of R_MICROMIPS_GOT16 which then caused the GOT entries to be incorrect. This patch fixes the evaluation and reverts r269410. Reviewers: sdardis, vkalintiris, rafael Subscribers: rafael, dsanders, sdardis, llvm-commits Differential Revision: http://reviews.llvm.org/D20242 llvm-svn: 269641
* [mips][ias] EF_MIPS_MICROMIPS should iff microMIPS code was emitted.Daniel Sanders2016-05-165-6/+34
| | | | | | | | | | | | | | | Summary: This fixes PR27682. Additionally, '.set micromips' by itself is not sufficient to raise the EF_MIPS_MICROMIPS flag. It is also necessary to emit a microMIPS instruction. This has also been fixed. Reviewers: sdardis, vkalintiris, rafael Subscribers: rafael, dsanders, sdardis, llvm-commits Differential Revision: http://reviews.llvm.org/D20214 llvm-svn: 269639
* ThinLTO: fix non-determinism in bitcode writingMehdi Amini2016-05-161-1/+8
| | | | | | | | Calls are initialized from a DenseMap. We can sort them using the value id to recover some determinism during serialization. From: mehdi_amini <mehdi_amini@91177308-0d34-0410-b5e6-96231b3b80d8> llvm-svn: 269638
* Revert "ThinLTO: fix non-determinism in bitcode writing"Mehdi Amini2016-05-161-7/+1
| | | | | | | This reverts commit r269634, bots are broken. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269637
* [mips] Addition of a third operand to the instructions [d]div, [d]divuZoran Jovanovic2016-05-1610-54/+228
| | | | | | | | | Author: obucina Reviewers: dsanders Adds support for third operand for [D]DIV[U] instructions. Additional test for case when destination reg is zero register Differential Revision: http://reviews.llvm.org/D16888 llvm-svn: 269636
* ThinLTO: fix another non-determinism in bitcode writingMehdi Amini2016-05-161-2/+9
| | | | | | | | GlobalVars Refs are initialized from a DenseSet. We can sort them using the value id to recover some determinism during serialization. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269635
* ThinLTO: fix non-determinism in bitcode writingMehdi Amini2016-05-161-1/+7
| | | | | | | | Calls are initialized from a DenseMap. We can sort them using the value id to recover some determinism during serialization. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269634
* ThinLTO: fix non-determinism in bitcode writingMehdi Amini2016-05-161-1/+7
| | | | | | | | Refs are initialized from a DenseSet. We can sort them using the value id to recover some determinism during serialization. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269629
* [PM] RewriterStatepointForGC: add missing dependency.Davide Italiano2016-05-161-0/+1
| | | | llvm-svn: 269624
* [AVX512] Fix mask argument type for insertf32x4/inserti32x4.Craig Topper2016-05-152-12/+12
| | | | llvm-svn: 269616
* [X86][SSE] Simplify zero'th index extract element matchingSimon Pilgrim2016-05-151-2/+3
| | | | llvm-svn: 269615
* [X86][SSE] Removed duplicate variables. NFCI.Simon Pilgrim2016-05-151-18/+10
| | | | | | Removed duplicate getOperand / getSimpleValueType calls. llvm-svn: 269614
* [AVX512] Change 512-bit insertf32x4/inserti32x4 builtin name to match gcc.Craig Topper2016-05-151-2/+2
| | | | | | Clang doesn't currently use this builtin. Will fix that soon. llvm-svn: 269609
* [profile] Header file cleanup /NFCXinliang David Li2016-05-152-47/+2
| | | | | | | | Remove runtime specific decls from the common header. This change also syncs up InstrProfData.inc between llvm and compiler_rt. llvm-svn: 269608
* [X86][SSE] Added constant index tests for 128-bit integer vector typesSimon Pilgrim2016-05-151-0/+136
| | | | llvm-svn: 269604
* [X86][SSE] Added variable index tests for 128-bit integer vector typesSimon Pilgrim2016-05-151-0/+66
| | | | llvm-svn: 269603
* Fixed typo in testSimon Pilgrim2016-05-151-8/+16
| | | | llvm-svn: 269602
* add test to show missing optimizationSanjay Patel2016-05-151-0/+37
| | | | llvm-svn: 269601
* [X86][SSE] Added extra extractelement testsSimon Pilgrim2016-05-151-29/+288
| | | | | | | | | | Added constant index tests for all 256-bit integer vector types (touching lower / upper 128-bits) Added variable index tests for all 256-bit integer vector types Added out-of-range index tests for all 256-bit integer vector types llvm-svn: 269600
* regenerate checksSanjay Patel2016-05-151-10/+16
| | | | llvm-svn: 269596
* [X86][SSE] Regenerate extractelement testsSimon Pilgrim2016-05-151-22/+98
| | | | | | Added SSE2/AVX2 target tests llvm-svn: 269595
* [CostModel][X86] Added scalar bitreverse testsSimon Pilgrim2016-05-151-0/+51
| | | | llvm-svn: 269594
* Move helper classes into anonymous namespaces. NFC.Benjamin Kramer2016-05-156-2/+10
| | | | llvm-svn: 269591
OpenPOWER on IntegriCloud