summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [llvm-readobj] Dump GNU_PROPERTY_X86_FEATURE_2_{NEEDED,USED} notes in ↵Fangrui Song2019-02-133-36/+88
| | | | | | | | | | | | | | | | | | .note.gnu.property Summary: And change the output ("X86 features" -> "x86 feature") a bit. Reviewers: grimar, xiangzhangllvm, hjl.tools, rupprecht Reviewed By: rupprecht Subscribers: rupprecht, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58112 llvm-svn: 353908
* [MC] Make symbol version errors non-fatalReid Kleckner2019-02-133-8/+14
| | | | | | | | | We stil don't have a source location, which is pretty lame, but at least we won't tell the user to file a clang bug report anymore. Fixes PR40712 llvm-svn: 353907
* [Reproducers] Integrate FileProvider with clangJonas Devlieghere2019-02-137-3/+89
| | | | | | | | | | This patch hooks up clang and lldb's reproducers functionality. It ensures that when capturing a reproducer, headers and modules imported through the expression parser are collected. Differential revision: https://reviews.llvm.org/D58076 llvm-svn: 353906
* [xray][tests][RHDTS] Add -lstdc++ after LLVM libs, resolving link error with ↵Hubert Tong2019-02-131-2/+3
| | | | | | | | | | | | | | | | | | | | | RHDTS Summary: A link error was encountered when using the Red Hat Developer Toolset. In the RHDTS, `libstdc++.so` is a linker script that may resolve symbols to a static library. This patch places `-lstdc++` later in the ordering. Reviewers: sfertile, nemanjai, tstellar, dberris Reviewed By: dberris Subscribers: dberris, mgorny, delcypher, jdoerfert, #sanitizers, llvm-commits Tags: #llvm, #sanitizers Differential Revision: https://reviews.llvm.org/D58144 llvm-svn: 353905
* [dsymutil] Improve readability of cloneAllCompileUnits (NFC)Jonas Devlieghere2019-02-131-5/+13
| | | | | | Add some newlines and improve consistency between the two loops. llvm-svn: 353904
* [dsymutil] Don't clone empty CUsJonas Devlieghere2019-02-134-15/+11
| | | | | | | | | | | | | | | The DWARF standard says that an empty compile unit is not valid: > Each such contribution consists of a compilation unit header (see > Section 7.5.1.1 on page 200) followed by a single DW_TAG_compile_unit or > DW_TAG_partial_unit debugging information entry, together with its > children. Therefore we shouldn't clone them in dsymutil. Differential revision: https://reviews.llvm.org/D57979 llvm-svn: 353903
* [tsan] #undef one-letter macrosEvgeniy Stepanov2019-02-121-0/+8
| | | | | | | | buildgo.sh puts most of sanitizer_common together in a single source file. These single-letter macros end up affecting a lot of unrelated code; #undef them as early as possible. llvm-svn: 353902
* [MemorySSA & LoopPassManager] Add remaining book keeping [NFCI].Alina Sbirlea2019-02-123-3/+12
| | | | | | | | Add plumbing to get MemorySSA in the remaining loop passes. Also update unit test to add the dependency. [EnableMSSALoopDependency remains disabled]. llvm-svn: 353901
* AMDGPU: Try to use function specific STMatt Arsenault2019-02-122-21/+22
| | | | | | | | Subtargets are a function level property, so ideally we would eliminate everywhere that needs to check the global one. Rename the function to try avoiding confusion. llvm-svn: 353900
* AMDGPU: Ignore CodeObjectV3 when inliningMatt Arsenault2019-02-122-0/+14
| | | | | | | | | | This was inhibiting inlining of library functions when clang was invoking the inliner directly. This is covering a bit of a mess with subtarget feature handling, and this shouldn't be a subtarget feature. The behavior is different depending on whether you are using a -mattr flag in clang, or llc, opt. llvm-svn: 353899
* [SystemZ] Remember to cast value to void to disable warning.Jonas Paulsson2019-02-121-2/+2
| | | | | | Hopefully fixes buildbot problems. llvm-svn: 353898
* [LICM] Cap the clobbering calls in LICM.Alina Sbirlea2019-02-122-27/+41
| | | | | | | | | | | | | | | | | | | Summary: Unlimitted number of calls to getClobberingAccess can lead to high compile times in pathological cases. Switching EnableLicmCap flag from bool to int, and enabling to default 100. (tested to be appropriate for current bechmarks) We can revisit this value when enabling MemorySSA. Reviewers: sanjoy, chandlerc, george.burgess.iv Subscribers: jlebar, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D57968 llvm-svn: 353897
* [testsuite] Add a comment explaining what this test does.Davide Italiano2019-02-121-0/+1
| | | | llvm-svn: 353896
* [Tests] A few more live-in deopt lowering testsPhilip Reames2019-02-121-2/+52
| | | | | | Nothing super interesting, just making sure obvious cases work. llvm-svn: 353895
* [testsuite] Convert TestSingleQuote to lit.Davide Italiano2019-02-125-85/+8
| | | | | | Nothing crazy, this is pretty mechanical. llvm-svn: 353894
* Revert r353880 "[HIP] Handle compile -m options and propagate into LLC"Reid Kleckner2019-02-122-68/+2
| | | | | | This was still causing test failures in the clang test suite. llvm-svn: 353893
* AMDGPU/NFC: Remove SubtargetFeatureISAVersion since it is not used anywhereKonstantin Zhuravlyov2019-02-121-10/+0
| | | | llvm-svn: 353892
* [libFuzzer] move the implementation of the fork mode into a separate fileKostya Serebryany2019-02-126-93/+165
| | | | llvm-svn: 353891
* docs: Update the ShadowCallStack documentation.Peter Collingbourne2019-02-121-96/+116
| | | | | | | | | | | | - Remove most of the discussion of the x86_64 implementation; link to an older version of the documentation for details of that implementation. - Add description of the compatibility and security issues discovered during the development of the aarch64 implementation for Android. Differential Revision: https://reviews.llvm.org/D58105 llvm-svn: 353890
* AMDGPU: Remove duplicate processor (gfx900)Konstantin Zhuravlyov2019-02-121-8/+0
| | | | llvm-svn: 353889
* [gn build] Separate debug and optimization settingsDavid Major2019-02-122-3/+12
| | | | | | | | | | This patch adds an `is_optimized` variable, orthogonal to `is_debug`, to allow for a gn analogue to `RelWithDebInfo` builds. As part of this we'll want to explicitly enable GC+ICF, for the sake of `is_debug && is_optimized` builds. The flags normally default to true except that if you pass `/DEBUG` they default to false. Differential Revision: https://reviews.llvm.org/D58075 llvm-svn: 353888
* [X86] Follow up to r353878, add MSVC compatibility command lines to other ↵Craig Topper2019-02-123-112/+115
| | | | | | | | intrinsic tests that uses packed structs to control alignment. r353878 fixed a bug in _mm_loadu_ps and added a command line to catch it. Adding additional command lines to prevent breaking other intrinsics in the future. llvm-svn: 353887
* [SelectionDAG] Clean up comments in SelectionDAGBuilder.h. NFCBjorn Pettersson2019-02-121-46/+42
| | | | | | | Remove redundant function/variable names from doxygen comments (as suggested in https://reviews.llvm.org/D57697). llvm-svn: 353886
* [HIP] Fix hip-toolchain-rdc testsAaron Enye Shi2019-02-122-6/+0
| | | | | | | | | | Since we removed changed the way HIP Toolchain will propagate -m options into LLC, we need to remove from these older tests. This is related to rC353880. Differential Revision: https://reviews.llvm.org/D57977 llvm-svn: 353885
* Fix auto-upgrade for the new parameter to llvm.objectsizeErik Pilkington2019-02-123-2/+14
| | | | | | | | | | r352664 added a 'dynamic' parameter to objectsize, but the AutoUpgrade changes were incomplete. Also, fix an off-by-one error I made in the upgrade logic that is now no longer unreachable. Differential revision: https://reviews.llvm.org/D58071 llvm-svn: 353884
* [ConstProp] add test for miscompile from bitcast transform; NFCSanjay Patel2019-02-121-2/+16
| | | | | | This problem goes with the fix in D51215. llvm-svn: 353883
* Make ModuleDependencyCollector's method virtual (NFC)Jonas Devlieghere2019-02-121-5/+5
| | | | | | | | | | | | | | For reproducers in LLDB we want to hook up into the existing clang infrastructure. To make that happen we need to be able to override the ModuleDependencyCollector's methods. The alternative was to inherit from the DependencyCollector directly, but that would mean re-implementing the ModuleDependencyListener and the ModuleDependencyPPCallbacks and ModuleDependencyMMCallbacks. Differential revision: https://reviews.llvm.org/D58072 llvm-svn: 353882
* [HIP] Handle compile -m options and propagate into LLCAaron Enye Shi2019-02-122-2/+68
| | | | | | | | | | | Allow the compile options for -m such as -mxnack/-mno-xnack, -msram-ecc/-mno-sram-ecc, -mcode-object-v3/-mno-code-object-v3 to propagate into LLC args. Also add lit tests to verify features are properly passed. Differential Revision: https://reviews.llvm.org/D57977 Reviewers: yaxunl, kzhuravl llvm-svn: 353880
* [X86] Use __m128_u for _mm_loadu_ps after r353555Reid Kleckner2019-02-122-1/+2
| | | | | | | | Add secondary triple to existing SSE test for it. I audited other uses of __attribute__((__packed__)) in the intrinsic headers, and this seemed to be the only missing one. llvm-svn: 353878
* Disable PIC/PIE for MSP430 targetAnton Korobeynikov2019-02-122-0/+34
| | | | | | | | | | Relocatable code generation is meaningless on MSP430, as the platform is too small to use shared libraries. Patch by Dmitry Mikushev! Differential Revision: https://reviews.llvm.org/D56927 llvm-svn: 353877
* [llvm-dwp] Use color-formatted error reportingJordan Rupprecht2019-02-121-2/+3
| | | | llvm-svn: 353876
* [NFC] typoJF Bastien2019-02-121-1/+1
| | | | llvm-svn: 353875
* Fix undefined behaviour in PPCInstPrinter::printBranchOperand.Sean Fertile2019-02-121-1/+1
| | | | | | | | Fix the undefined behaviour introduced by my previous patch r353865 (left shifting a potentially negative value), which was caught by the bots that run UBSan. llvm-svn: 353874
* [llvm-dwp] Avoid writing the output dwp file when there is an errorJordan Rupprecht2019-02-122-6/+13
| | | | | | | | | | | | | | | | Summary: Use ToolOutputFile to clean up the output file unless dwp actually finishes successfully. Reviewers: dblaikie Reviewed By: dblaikie Subscribers: jdoerfert, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58130 llvm-svn: 353873
* [AArch64] Expand v8i8 cttz (PR39729)Nikita Popov2019-02-122-9/+125
| | | | | | | | | | | Fix for https://bugs.llvm.org/show_bug.cgi?id=39729. Rather than adding just a case for v8i8 I'm setting cttz to expand for all vector types. Differential Revision: https://reviews.llvm.org/D58008 llvm-svn: 353872
* [InlineSpiller] Fix a crash due to lack of forward progress from remat (try 2)Philip Reames2019-02-122-1/+490
| | | | | | | | | | | This is a recommit of r335091 Add more test cases for deopt-operands via regalloc, and r335077 [InlineSpiller] Fix a crash due to lack of forward progress from remat specifically for STATEPOINT. They were reverted due to a crash. This change includes the text of both original changes, but also includes three aditional pieces: 1) A bug fix for the observed crash. I had failed to record the failed remat value as live which resulted in an instruction being deleted which still had uses. With the machine verifier, this is caught quickly. Without it, we fail in StackSlotColoring due to an empty live interval from LiveStack. 2) A test case which demonstrates the fix for (1). See @test11. 3) A control flag which defaults to disabling this for the moment. Once I've run more extensive validaton, I will switch the default and then remove this flag. llvm-svn: 353871
* [AMDGPU] Require at least protected visibility for certain symbolsScott Linder2019-02-123-0/+95
| | | | | | | | | This allows the global visibility controls to be restrictive while still populating the dynamic symbol table where required. Differential Revision: https://reviews.llvm.org/D56871 llvm-svn: 353870
* [lldb-instr] Pass PCHContainerOperations to ClangToolJonas Devlieghere2019-02-122-1/+8
| | | | | | | | | | | | On a local modules build this would cause an error. > fatal error: no handler registered for module format 'obj' > LLVM ERROR: unknown module format Interestingly enough, this didn't trigger on the GreenDragon CMake bot, which is configured with modules. llvm-svn: 353869
* [lldb] [unittest] Avoid mixing '127.0.0.1' and 'localhost'Michal Gorny2019-02-122-3/+3
| | | | | | | | | | | | | | | | | | | Fix the tests not to use '127.0.0.1' and 'localhost' interchangeably. More specifically, since tests bind specifically to 127.0.0.1, connect to that address as well; using 'localhost' can resolve to IPv6 address which can cause issues -- for example, if the matching port happens to be used by some other process, the tests hang forever waiting for the client to connect. While technically the case of randomly selected IPv4 port being taken on IPv6 loopback is not very likely, NetBSD happens to be suffering from some weird kernel issue where connection to that port succeeds nevertheless. Until we can really figure out what goes wrong there, this saves us from the tests hanging randomly. Differential Revision: https://reviews.llvm.org/D58131 llvm-svn: 353868
* [SystemZ] Use VGM whenever possible to load FP immediates.Jonas Paulsson2019-02-125-3/+122
| | | | | | | | | | | | | isFPImmLegal() has been extended to recognize certain FP immediates that can be built with VGM (Vector Generate Mask). These scalar FP immediates (that were previously loaded from the constant pool) are now selected as VGMF/VGMG in Select(). Review: Ulrich Weigand https://reviews.llvm.org/D58003 llvm-svn: 353867
* [PPC64] Update tests to reflect change in printing of call operand. [NFC]Sean Fertile2019-02-128-14/+13
| | | | | | | The printing of branch operands for call instructions was changed to properly handle negative offsets. Updating the tests to reflect that. llvm-svn: 353866
* [PowerPC] Fix printing of negative offsets in call instruction dissasembly.Sean Fertile2019-02-125-2/+60
| | | | llvm-svn: 353865
* [GlobalISel][NFC] Gardening: Make translateSimpleUnaryIntrinsic generalJessica Paquette2019-02-122-32/+24
| | | | | | | | | | | | | | Instead of only having this code work for unary intrinsics, have it work for an arbitrary number of parameters. Factor out the cases that fall under this (fma, pow). This makes it a bit easier to add more intrinsics which don't require any special work. Differential Revision: https://reviews.llvm.org/D58079 llvm-svn: 353863
* [tablegen] Add locations to many PrintFatalError() callsDaniel Sanders2019-02-1213-80/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: While working on the GISel Combiner, I noticed I was producing location-less error messages fairly often and set about fixing this. In the process, I noticed quite a few places elsewhere in TableGen that also neglected to include a relevant location. This patch adds locations to errors that relate to a specific record (or a field within it) and also have easy access to the relevant location. This is particularly useful when multiclasses are involved as many of these errors refer to the full name of a record and it's difficult to guess which substring is grep-able. Unfortunately, tablegen currently only supports Record granularity so it's not currently possible to point at a specific Init so these sometimes point at the record that caused the error rather than the precise origin of the error. Reviewers: bogner, aditya_nandakumar, volkan, aemerson, paquette, nhaehnle Reviewed By: nhaehnle Subscribers: jdoerfert, nhaehnle, asb, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, jrtc27, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, PkmX, jocewei, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58077 llvm-svn: 353862
* [GlobalISel][AArch64] Select llvm.bswap* for non-vector typesJessica Paquette2019-02-124-1/+58
| | | | | | | | | | | | | | | | This teaches the IRTranslator to emit G_BSWAP when it runs into Intrinsic::bswap. This allows us to select G_BSWAP for non-vector types in AArch64. Add a select-bswap.mir test, and add global isel checks to a couple existing tests in test/CodeGen/AArch64. This doesn't handle every bswap case, since some of these rely on known bits stuff. This just lets us handle the naive case. Differential Revision: https://reviews.llvm.org/D58081 llvm-svn: 353861
* [X86][AVX] Enable shuffle combining support for zero_extend Simon Pilgrim2019-02-122-11/+28
| | | | | | A more limited version of rL352997 that had to be disabled in rL353198 - allow extension of any 128/256/512 bit vector that at least uses byte sized scalars. llvm-svn: 353860
* [DAGCombiner] convert logic-of-setcc into bit magic (PR40611)Sanjay Patel2019-02-123-18/+40
| | | | | | | | | | | | | | | | | | | | If we're comparing some value for equality against 2 constants and those constants have an absolute difference of just 1 bit, then we can offset and mask off that 1 bit and reduce to a single compare against zero: and/or (setcc X, C0, ne), (setcc X, C1, ne/eq) --> setcc ((add X, -C1), ~(C0 - C1)), 0, ne/eq https://rise4fun.com/Alive/XslKj This transform is disabled by default using a TLI hook ("convertSetCCLogicToBitwiseLogic()"). That should be overridden for AArch64, MIPS, Sparc and possibly others based on the asm shown in: https://bugs.llvm.org/show_bug.cgi?id=40611 llvm-svn: 353859
* [OpenMP] Fix broken link to browse sourcesJonathan Peyton2019-02-121-1/+1
| | | | llvm-svn: 353858
* [clangd] Fix a lit-test.Kadir Cetinkaya2019-02-121-1/+1
| | | | | | | | | | | | | | | | | | Summary: Fixes https://bugs.llvm.org/show_bug.cgi?id=40593. Non-percent-encoded chars doesn't cause any problems on the input-side since we assume everything after authority section is data and don't interpret them as delimeters. Reviewers: sammccall Subscribers: ilya-biryukov, ioeric, MaskRay, jkorous, arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D58126 llvm-svn: 353857
* Fix Xcode project for RemoteAwarePlatform files.Greg Clayton2019-02-121-7/+10
| | | | llvm-svn: 353856
OpenPOWER on IntegriCloud