summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [cmake] Update SOVERSION for the new versioning schemeMichal Gorny2017-01-171-5/+3
| | | | | | | | | | | | | | | Update SOVERSION to use just the major version number rather than major+minor, to match the new versioning scheme where only major is used to indicate API/ABI version. Since two-digit SOVERSIONs were introduced post 3.9 branching, this change does not risk any SOVERSION collisions. In the past, two-component X.Y SOVERSIONs were shortly used but those will not interfere with the new ones since the new versions start at 4. Differential Revision: https://reviews.llvm.org/D28730 llvm-svn: 292255
* [LV] Mark non-consecutive-like pointers non-uniformMatthew Simpson2017-01-172-0/+62
| | | | | | | | | | | If a memory instruction will be vectorized, but it's pointer operand is non-consecutive-like, the instruction is a gather or scatter operation. Its pointer operand will be non-uniform. This should fix PR31671. Reference: https://llvm.org/bugs/show_bug.cgi?id=31671 Differential Revision: https://reviews.llvm.org/D28819 llvm-svn: 292254
* [scudo] Eliminate the runtime dependency on libc++abiPetr Hosek2017-01-171-1/+1
| | | | | | | | | | | | Making this variable non-static avoids the need for locking to ensure that the initialization is thread-safe which in turns eliminates the runtime dependency on libc++abi library (for __cxa_guard_acquire and __cxa_guard_release) which makes it possible to link scudo against pure C programs. Differential Revision: https://reviews.llvm.org/D28757 llvm-svn: 292253
* [WebAssembly] Add triple support for the new wasm object formatDan Gohman2017-01-176-2/+17
| | | | | | Differential Revision: https://reviews.llvm.org/D26701 llvm-svn: 292252
* Rename scalar_promote.ll to scalar-promote.ll and scalar_promote-unwind.ll ↵Xin Tong2017-01-172-0/+0
| | | | | | to scalar-promote-unwind.ll. NFCI llvm-svn: 292251
* Refactor out LoopInfo computation so that it can be used byXin Tong2017-01-171-41/+48
| | | | | | | | | | | | | | | | | | other test cases. Summary: Refactor out LoopInfo computation so that it can be used by other test cases. So i am changing this test proactively for later commit, which will use this function. Reviewers: sanjoy, hfinkel Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D28778 llvm-svn: 292250
* [EarlyCSE] Don't DSE across readnone functions that may throwSanjoy Das2017-01-172-6/+22
| | | | | | | | | | | | Summary: Depends on D28740 Reviewers: dberlin, chandlerc, hfinkel, majnemer Subscribers: mcrosier, llvm-commits Differential Revision: https://reviews.llvm.org/D28741 llvm-svn: 292249
* [InstCombine] add tests for shl nsw + icmp sle; NFCSanjay Patel2017-01-171-0/+138
| | | | | | | We want to handle these cases similarly to icmp sgt, so add the tests for it. See: https://reviews.llvm.org/D28406 llvm-svn: 292248
* Fix Python 3 language issues and add an explicit check for Python version == 2.Jonathan Coe2017-01-172-9/+17
| | | | | | | | | | | | | | | | | Summary: Python bindings cannot support Python 3 without work being done to fix Unicode c-string conversion. This was attempted in https://reviews.llvm.org/D26082. That patch was reverted due to memory access issues on Linux. This revision fixes enough language compatibility issues for the clang module to be loaded and raise an error if the Python version is not 2. Reviewers: mgorny, MathieuDuponchelle, rengolin, compnerd Reviewed By: compnerd Differential Revision: https://reviews.llvm.org/D28682 llvm-svn: 292247
* [TLI] Appease spurious MSVC warning using llvm_unreachable. NFC.Ahmed Bougacha2017-01-171-1/+2
| | | | | | | | | | | | | r292188 confused MSVC because of the combined lack of a default case and return statement. Move the unreachable outside of the NumLibFuncs case, to make it obvious that all cases should be handled. llvm_unreachable is __declspec(noreturn), so I'm assuming this does appease MSVC. llvm-svn: 292246
* [Sema] Fix bug in handling of designated initializer.Akira Hatanaka2017-01-172-0/+16
| | | | | | | | | | | | CheckDesignatedInitializer wasn't taking into account the base classes when computing the index for the field in the derived class, which caused the test case to crash during IRGen because of a malformed AST. rdar://problem/26795040 Differential Revision: https://reviews.llvm.org/D28705 llvm-svn: 292245
* Remove an overeager assert from r288844.Joerg Sonnenberger2017-01-172-3/+3
| | | | llvm-svn: 292244
* Revert r291640 change to fold X86 comparison with atomic_load_add.Bob Wilson2017-01-172-86/+10
| | | | | | | | Even with the fix from r291630, this still causes problems. I get widespread assertion failures in the Swift runtime's WeakRefCount::increment() function. I sent a reduced testcase in reply to the commit. llvm-svn: 292242
* [PM] Teach the LoopPassManager to automatically canonicalize loops byChandler Carruth2017-01-177-12/+28
| | | | | | | | | | | | | | runnig LCSSA over them prior to running the loop pipeline. This also teaches the loop PM to verify that LCSSA form is preserved throughout the pipeline's run across the loop nest. Most of the test updates just leverage this new functionality. One has to be relaxed with the new PM as IVUsers is less powerful when it sees LCSSA input. Differential Revision: https://reviews.llvm.org/D28743 llvm-svn: 292241
* COFF: add error() and warn() to Error.{cpp,h}Bob Haarman2017-01-175-7/+72
| | | | | | | | | | | | Summary: This copies over some functionality we have in ELF/Error.{cpp,h} and makes it available in COFF/Error.{cpp,h} Reviewers: pcc, rafael, ruiu Subscribers: Differential Revision: https://reviews.llvm.org/D28692 llvm-svn: 292240
* [ValueTracking] recognize a 'not' of an assumed condition as falseSanjay Patel2017-01-174-8/+16
| | | | | | | | Also, add the corresponding match to the AssumptionCache's 'Affected Values' list. Differential Revision: https://reviews.llvm.org/D28485 llvm-svn: 292239
* [InstCombine] Fold ((C1 OP zext(X)) & C2) -> zext((C1 OP X) & C2)David Majnemer2017-01-172-15/+74
| | | | | | | This further extends r292179 to support additional binary operators beyond subtraction. llvm-svn: 292238
* Revert r292231.Kuba Mracek2017-01-174-28/+4
| | | | llvm-svn: 292237
* Revert r292232.Kuba Mracek2017-01-175-19/+0
| | | | llvm-svn: 292236
* [X86][AVX512] Add all_of/any_of avx512vl testsSimon Pilgrim2017-01-172-0/+464
| | | | llvm-svn: 292235
* Make sure that clang-format input is in the right encodingPhilipp Stephani2017-01-172-1/+115
| | | | | | | | | | | | Summary: Add unit tests. Reviewers: klimek, massberg Reviewed By: massberg Differential Revision: https://reviews.llvm.org/D28800 llvm-svn: 292234
* [ValueTracking] Extend known bits to understand @llvm.bitreverse.Chad Rosier2017-01-173-0/+70
| | | | | | Differential Revision: https://reviews.llvm.org/D28780 llvm-svn: 292233
* [lit] Limit parallelism of sanitizer tests on Darwin [compiler-rt part]Kuba Mracek2017-01-175-0/+19
| | | | | | | | | | Running lit tests and unit tests of ASan and TSan on macOS has very bad performance when running with a high number of threads. This is caused by xnu (the macOS kernel), which currently doesn't handle mapping and unmapping of sanitizer shadow regions (reserved VM which are several terabytes large) very well. The situation is so bad that increasing the number of threads actually makes the total testing time larger. The macOS buildbots are affected by this. Note that we can't easily limit the number of sanitizer testing threads without affecting the rest of the tests. This patch adds a special "group" into lit, and limits the number of concurrently running tests in this group. This helps solve the contention problem, while still allowing other tests to run in full, that means running lit with -j8 will still with 8 threads, and parallelism is only limited in sanitizer tests. Differential Revision: https://reviews.llvm.org/D28420 llvm-svn: 292232
* [lit] Limit parallelism of sanitizer tests on Darwin [llvm part]Kuba Mracek2017-01-174-4/+28
| | | | | | | | | | Running lit tests and unit tests of ASan and TSan on macOS has very bad performance when running with a high number of threads. This is caused by xnu (the macOS kernel), which currently doesn't handle mapping and unmapping of sanitizer shadow regions (reserved VM which are several terabytes large) very well. The situation is so bad that increasing the number of threads actually makes the total testing time larger. The macOS buildbots are affected by this. Note that we can't easily limit the number of sanitizer testing threads without affecting the rest of the tests. This patch adds a special "group" into lit, and limits the number of concurrently running tests in this group. This helps solve the contention problem, while still allowing other tests to run in full, that means running lit with -j8 will still with 8 threads, and parallelism is only limited in sanitizer tests. Differential Revision: https://reviews.llvm.org/D28420 llvm-svn: 292231
* [InstCombine] reduce indent; NFCISanjay Patel2017-01-171-133/+131
| | | | llvm-svn: 292230
* [clang-tidy] Fix crash in modernize-use-using (http://llvm.org/PR29135)Alexander Kornienko2017-01-172-33/+35
| | | | llvm-svn: 292229
* Add a isInCurrentDSO helper. NFC.Rafael Espindola2017-01-176-11/+12
| | | | llvm-svn: 292228
* [Clang] - Update code to match upcoming llvm::zlib API.George Rimar2017-01-172-17/+36
| | | | | | | | | | | | | | D28684 changed llvm::zlib to return Error instead of Status. It was accepted and committed in r292214, but then reverted in r292217 because I missed that clang code also needs to be updated. Patch do that. D28684 recommitted again as r292226 Differential revision: https://reviews.llvm.org/D28807 llvm-svn: 292227
* Recommit r292214 "[Support/Compression] - Change zlib API to return Error ↵George Rimar2017-01-176-72/+83
| | | | | | | | | | | | | | | | | | instead of custom status" No any changes, will follow up with D28807 commit containing APLi change for clang to fix build issues happened. Original commit message: [Support/Compression] - Change zlib API to return Error instead of custom status. Previously API returned custom enum values. Patch changes it to return Error with string description. That should help users to report errors in universal way. Differential revision: https://reviews.llvm.org/D28684 llvm-svn: 292226
* [ELF] - Support optional comma after output section command.George Rimar2017-01-172-0/+8
| | | | | | | | | | | | | | | | | I found this when tried to link linux kernel with LLD: https://github.com/torvalds/linux/blob/master/arch/x86/entry/vdso/vdso-layout.lds.S#L86 Output section command can have optional comma at the end: .text : { *(.text*) } :text =0x90909090, It was documented about 3 years ago for binutils: https://sourceware.org/ml/binutils/2014-04/msg00045.html Differential revision: https://reviews.llvm.org/D28803 llvm-svn: 292225
* [AMDGPU] Assembler: fix v_mac_f16 immediatesSam Kolton2017-01-173-13/+34
| | | | | | | | | | Reviewers: vpykhtin, artem.tamazov, tstellarAMD Subscribers: arsenm, kzhuravl, wdng, nhaehnle, yaxunl, tony-tye Differential Revision: https://reviews.llvm.org/D28802 llvm-svn: 292224
* [X86][SSE] Tests showing horizontal all_of/any_of of vector comparison resultsSimon Pilgrim2017-01-172-0/+1602
| | | | llvm-svn: 292223
* [llvm-objdump tests] Copy the inputs of tests closer to tests.Krasimir Georgiev2017-01-175-3/+3
| | | | | | | | | | | | | | | | | Summary: Tests under tools/llvm-objdump should not use inputs from Object. Copied the required inputs and aligned the new tests to be more consistent with the existing tests in this respect. Reviewers: ioeric Reviewed By: ioeric Subscribers: davide, djasper, cfe-commits Differential Revision: https://reviews.llvm.org/D28799 llvm-svn: 292222
* [ELF] - Fix for huge-temporary-file.sGeorge Rimar2017-01-171-1/+1
| | | | | | Removed mentioning of checks. Sorry for noise. llvm-svn: 292221
* [ELF] - Added huge-temporary-file.s testcase.George Rimar2017-01-171-0/+12
| | | | | | | | | | | | Inputs shown in that testcase previously created a huge temporarily file under 32 bits. It was fixed by D28107. During review was suggested to add a testcase even without CHECKs for documentation purposes. Patch do that. llvm-svn: 292220
* [ELF] - Do not create huge garbage files on section offset overflow.George Rimar2017-01-171-0/+3
| | | | | | | | | | | | Patch changes behavior to not try open the output file if we already know about error. That is not just cleaner, but also fixes nasty behavior of linker that could create huge temporarily files under certain conditions. Differential revision: https://reviews.llvm.org/D28107 llvm-svn: 292219
* Remove dead code.Haojian Wu2017-01-171-3/+0
| | | | llvm-svn: 292218
* Revert r292214 "[Support/Compression] - Change zlib API to return Error ↵George Rimar2017-01-176-83/+72
| | | | | | | | | instead of custom status." It broked clang: http://lab.llvm.org:8080/green//job/clang-stage1-cmake-RA-incremental_build/34218/consoleFull#46141505449ba4694-19c4-4d7e-bec5-911270d8a58c llvm-svn: 292217
* BrainF example: fixing output buffering issueBoris Ulasevich2017-01-171-0/+4
| | | | | | Differential Revision: https://reviews.llvm.org/D27824 llvm-svn: 292216
* [clang-move] Handle helpers with forward declarations.Haojian Wu2017-01-175-14/+108
| | | | | | | | | | | | Reviewers: ioeric Reviewed By: ioeric Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D28801 llvm-svn: 292215
* [Support/Compression] - Change zlib API to return Error instead of custom ↵George Rimar2017-01-176-72/+83
| | | | | | | | | | | | status. Previously API returned custom enum values. Patch changes it to return Error with string description. That should help users to report errors in universal way. Differential revision: https://reviews.llvm.org/D28684 llvm-svn: 292214
* Relax assert when setting access functions with invariant base pointersTobias Grosser2017-01-173-12/+16
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: Instead of forbidding such access functions completely, we verify that their base pointer has been hoisted and only assert in case the base pointer was not hoisted. I was trying for a little while to get a test case that ensures the assert is correctly fired in case of invariant load hoisting being disabled, but I could not find a good way to do so, as llvm-lit immediately aborts if a command yields a non-zero return value. As we do not generally test our asserts, not having a test case here seems OK. This resolves http://llvm.org/PR31494 Suggested-by: Michael Kruse <llvm@meinersbur.de> Reviewers: efriedma, jdoerfert, Meinersbur, gareevroman, sebpop, zinob, huihuiz, pollydev Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D28798 llvm-svn: 292213
* [cmake] Make lldb build with the android ndk toolchain filePavel Labath2017-01-177-26/+19
| | | | | | | | | | | | | | | | | Summary: The NDK cmake toolchain file defines CMAKE_SYSTEM_NAME=Android, so switch the build to use that. I have also updated the in-tree toolchain file to do that (instead of defining __ANDROID_NDK__), so it can still be used to build. After migrating the last bits of non-toolchainy bits out of the in-tree toolchain, I intend to delete it. Reviewers: tberghammer, danalbert Subscribers: srhines, mgorny, lldb-commits Differential Revision: https://reviews.llvm.org/D28775 llvm-svn: 292212
* [XRay][Arm] Enable back XRay testing on Arm32 and fix the failing testsSerge Rogatch2017-01-172-2/+9
| | | | | | | | | | | | | | | | | Summary: Testing of XRay was occasionally disabled on 32-bit Arm targets (someone assumed that XRay was supported on 64-bit targets only). This patch should fix that problem. Also here the instruction&data cache incoherency problem is fixed, because it may be causing a test to fail. This patch is one of a series: see also - https://reviews.llvm.org/D28624 Reviewers: dberris, rengolin Reviewed By: rengolin Subscribers: llvm-commits, aemerson, rengolin, dberris, iid_iunknown Differential Revision: https://reviews.llvm.org/D28623 llvm-svn: 292211
* [XRay][Arm] Repair XRay table emission on Arm32 and add tests to identify ↵Serge Rogatch2017-01-173-0/+15
| | | | | | | | | | | | | | | | | | | such problem earlier Summary: Emission of XRay table was occasionally disabled for Arm32, but this bug was not then detected because earlier (also by mistake) testing of XRay was occasionally disabled on 32-bit Arm targets. This patch should fix that problem and detect such problems in the future. This patch is one of a series, see also - https://reviews.llvm.org/D28623 Reviewers: rengolin, dberris Reviewed By: dberris Subscribers: llvm-commits, aemerson, rengolin, dberris, iid_iunknown Differential Revision: https://reviews.llvm.org/D28624 llvm-svn: 292210
* [InstCombine][X86][AVX] Add DemandedElts support for VPERMILPD/VPERMILPS ↵Simon Pilgrim2017-01-173-19/+30
| | | | | | | | instructions Simplify a vpermilvar shuffle mask based on the elements of the mask that are actually demanded. llvm-svn: 292209
* Update the release tester for MIPS. NFC.Vasileios Kalintiris2017-01-171-2/+2
| | | | llvm-svn: 292208
* [clang-move] Ignore using decls which are defined in macros.Haojian Wu2017-01-174-9/+71
| | | | | | | | | | | | | | | | | Summary: Also ignore helpers which are defined in macro. Currently clang-move doesn't handle macro well enough, especiall for complex macros. This patch will ignore declarations in macros to make the behavior of clang-move more correct. Reviewers: ioeric Reviewed By: ioeric Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D28774 llvm-svn: 292207
* Remove pid_t usage from llvm-xrayPavel Labath2017-01-171-1/+3
| | | | | | This type is not available on windows. llvm-svn: 292206
* AMDGPU: Add replacement export intrinsicsMatt Arsenault2017-01-177-20/+733
| | | | llvm-svn: 292205
OpenPOWER on IntegriCloud