summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ARM: disallow SP as Rn for Thumb2 TST & TEQ instructionsTim Northover2019-05-084-18/+31
| | | | | | | | Using SP in this position is unpredictable in ARMv7. CMP and CMN are not affected, and of course v8 relaxes this requirement, but that's handled elsewhere. llvm-svn: 360242
* [VPlan] Fix "value never used" static analyzer warning. NFCI.Simon Pilgrim2019-05-081-2/+1
| | | | llvm-svn: 360241
* [MCA] Slightly refactor CodeRegion.h. NFCIAndrea Di Biagio2019-05-082-24/+22
| | | | | | Also, use a SmallVector instead of a std::vector for the code region. llvm-svn: 360240
* R600InstrInfo.cpp - Add getTransSwizzle assert for the swizzle op index. NFCI.Simon Pilgrim2019-05-081-0/+1
| | | | | | Fixes static analyzer undefined value warning. llvm-svn: 360239
* [polly][SCEV] Expand SCEV matcher cases for new smin/umin opsKeno Fischer2019-05-085-1/+61
| | | | | | | These were added in rL360159, but I neglected to update polly at the same time. llvm-svn: 360238
* [MCA] Remove dead assignment. NFCAndrea Di Biagio2019-05-081-1/+0
| | | | llvm-svn: 360237
* [SIMode] Fix typo in Status constructorSimon Pilgrim2019-05-081-1/+1
| | | | | | | | As noted in https://www.viva64.com/en/b/0629/ (Snippet No. 36) and the scan-build CI reports (https://llvm.org/reports/scan-build/report-SIModeRegister.cpp-Status-1-1.html#EndPath), rL348754 introduced a typo in the Status constructor due to argument variable names shadowing the member variable names. Differential Revision: https://reviews.llvm.org/D61595 llvm-svn: 360236
* [DebugInfo] Fix use-after-move warning. NFCI.Simon Pilgrim2019-05-081-1/+1
| | | | | | Don't rely on DWARFAbbreviationDeclarationSet::extract cleaning the struct up for reuse - the analyzers don't like it. llvm-svn: 360235
* Fix cppcheck operator precedence warning. NFCI.Simon Pilgrim2019-05-081-2/+2
| | | | llvm-svn: 360234
* [llvm-objcopy] Add --prefix-alloc-sectionsJames Henderson2019-05-088-10/+146
| | | | | | | | | | | | | | | | This patch adds support for --prefix-alloc-sections, which adds a prefix to every allocated section names. It adds a prefix after renaming section names by --rename-section as GNU objcopy does. Fixes PR41266: https://bugs.llvm.org/show_bug.cgi?id=41266 Differential Revision: https://reviews.llvm.org/D60042 Patch by Seiya Nuta. llvm-svn: 360233
* [SCCP] Fix crash when trying to constant-fold terminators multiple times.Florian Hahn2019-05-082-1/+103
| | | | | | | | | | | | | | If we fold a branch/switch to an unconditional branch to another dead block we replace the branch with unreachable, to avoid attempting to fold the unconditional branch. Reviewers: davide, efriedma, mssimpso, jdoerfert Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D61300 llvm-svn: 360232
* [clang-tidy] Do not show incorrect fix in modernize-make-uniqueIlya Biryukov2019-05-082-2/+11
| | | | | | | | | | | | | | | | | | Summary: The case when initialize_list hides behind an implicit case was not handled before. Reviewers: aaron.ballman Reviewed By: aaron.ballman Subscribers: xazax.hun, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D61642 llvm-svn: 360231
* [CMake] Install import librariesMartin Storsjo2019-05-081-16/+3
| | | | | | | | | | | | Simplify the cmake logic to install both runtime and import libraries (treated as ARCHIVE), as the later are needed to link against llvm. Patch by Julien Schueller! Differential Revision: https://reviews.llvm.org/D61425 llvm-svn: 360230
* [NFC][PowerPC] Add test for store combine optimization.QingShan Zhang2019-05-081-0/+793
| | | | llvm-svn: 360229
* [CodeGenPrepare] Don't split the store if it is volatileQingShan Zhang2019-05-082-0/+21
| | | | | | | | We shouldn't split the store when it is volatile. Differential Revision: https://reviews.llvm.org/D61169 llvm-svn: 360228
* [llvm-objcopy] - Fix for "Bug 41775 - SymbolTableSection::addSymbol - shadow ↵George Rimar2019-05-082-3/+3
| | | | | | | | | | | | | | | | | | | variable names" This is a fix for https://bugs.llvm.org/show_bug.cgi?id=41775, Problem is in the final line: Size += this->EntrySize; I checked that we do not actually need it in this place, since we always call removeSectionReferences which calls removeSymbols which updates the Size. But it worth to keep it, that allows to relax the dependencies. Differential revision: https://reviews.llvm.org/D61636 llvm-svn: 360227
* [NFC] Add a static function to do the endian checkQingShan Zhang2019-05-081-15/+37
| | | | | | | | Add a new function to do the endian check, as I will commit another patch later, which will also need the endian check. Differential Revision: https://reviews.llvm.org/D61236 llvm-svn: 360226
* Fix for the greendragon bots.Leonard Chan2019-05-082-2/+4
| | | | | | Adds extra checks for ObjC GC and Ownership. llvm-svn: 360225
* [Sema] Correct typos in return statements so the return types of 'auto' ↵Sam McCall2019-05-082-2/+19
| | | | | | | | | | | | | | | | | | | | | functions are always deduced. Summary: e.g. auto foo() { return no_such_thing; // Return value is a TypoExpr } using T = decltype(foo()); // Uh-oh, undeduced auto. Reviewers: rsmith Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D61649 llvm-svn: 360224
* [llvm] Avoid div by 0 when updating profile weights.Mircea Trofin2019-05-082-0/+188
| | | | | | | | | | | | | | Reviewers: davidxl Reviewed By: davidxl Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61661 llvm-svn: 360223
* [ValueTracking] Improve isKnowNonZero for IntsDan Robertson2019-05-084-25/+19
| | | | | | | | | Improve isKnownNonZero for integers in order to improve cttz optimizations. Differential Revision: https://reviews.llvm.org/D60846 llvm-svn: 360222
* [Support] Add error handling to sys::Process::getPageSize().Lang Hames2019-05-0812-22/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch changes the return type of sys::Process::getPageSize to Expected<unsigned> to account for the fact that the underlying syscalls used to obtain the page size may fail (see below). For clients who use the page size as an optimization only this patch adds a new method, getPageSizeEstimate, which calls through to getPageSize but discards any error returned and substitues a "reasonable" page size estimate estimate instead. All existing LLVM clients are updated to call getPageSizeEstimate rather than getPageSize. On Unix, sys::Process::getPageSize is implemented in terms of getpagesize or sysconf, depending on which macros are set. The sysconf call is documented to return -1 on failure. On Darwin getpagesize is implemented in terms of sysconf and may also fail (though the manpage documentation does not mention this). These failures have been observed in practice when highly restrictive sandbox permissions have been applied. Without this patch, the result is that getPageSize returns -1, which wreaks havoc on any subsequent code that was assuming a sane page size value. <rdar://problem/41654857> Reviewers: dblaikie, echristo Subscribers: kristina, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59107 llvm-svn: 360221
* Fix buildbot break after r360195Nemanja Ivanovic2019-05-081-0/+2
| | | | llvm-svn: 360220
* [Docs] Fix incorrect heading and update titles.Jonas Devlieghere2019-05-083-9/+9
| | | | | | | | This patch fixes two incorrect headings in source.rst which caused it to show up on the homepage. I also updated the titles to have more sensible links there. llvm-svn: 360219
* [Docs] Re-order homepage: Download -> Build -> TestJonas Devlieghere2019-05-082-14/+17
| | | | | | I also reformatted some paragraphs to 80 cols. llvm-svn: 360218
* Split ActOnCallExpr into an ActOnCallExpr to be called by the parser,Richard Smith2019-05-0810-23/+32
| | | | | | | and a BuildCallExpr to be called internally within Sema to build / rebuild calls. llvm-svn: 360217
* Propagate command interpreter errors from lldlbinitJonas Devlieghere2019-05-0811-8/+48
| | | | | | | | | | | | | | This patch ensures that we propagate errors coming from the lldbinit file trough the command/script interpreter. Before, if you did something like command script import syntax_error.py, and the python file contained a syntax error, lldb wouldn't tell you about it. This changes with the current patch: errors are now propagated by default. PS: Jim authored this change and I added testing. Differential revision: https://reviews.llvm.org/D61579 llvm-svn: 360216
* [libFuzzer] extend the test for data flow tracer and coverage; also ↵Kostya Serebryany2019-05-081-1/+11
| | | | | | hopefully fix it on the bot llvm-svn: 360215
* [hip] Fix ambiguity from `>>>` of CUDA.Michael Liao2019-05-082-1/+14
| | | | | | | | | | | | | | | | | Summary: - For template arguments ending with `>>>`, we should cease lookahead and treat it as type-id firstly, so that deduction could work properly. Reviewers: tra, yaxunl Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D61396 llvm-svn: 360214
* [libFuzzer] extend the data flow tracer to also produce basic block coverage ↵Kostya Serebryany2019-05-085-41/+116
| | | | | | for every input. An extended test coming in a separte change. llvm-svn: 360213
* Fix build on NetBSD 8.99.38Kamil Rytarowski2019-05-081-0/+2
| | | | | | | | With recent changes the dev/nvmm/nvmm_ioctl.h header is no longer a standalone NVMM header. Disable it until the NVMM operations will stabilize and be included in the ioctl(2) interceptors. llvm-svn: 360212
* [libFuzzer] disable two tests on i386 that are causing timeouts on the botsKostya Serebryany2019-05-082-2/+2
| | | | llvm-svn: 360211
* [Tests] Expand coverage of small memset zero idiomsPhilip Reames2019-05-071-0/+255
| | | | llvm-svn: 360210
* [Docs] Add timestampJonas Devlieghere2019-05-071-1/+1
| | | | llvm-svn: 360209
* [Expression] Remove unused dependencyAlex Langford2019-05-073-4/+1
| | | | | | | | | lldbExpression was linking against lldbPluginExpressionParserClang, and lldbPluginExpressionParserClang was linking against lldbExpression. There's no reason lldbExpression should need anything from lldbPluginExpressionParserClang, so let's remove that dependency. llvm-svn: 360208
* [COFF] Use COFF stubs for extern_weak functionsReid Kleckner2019-05-077-19/+87
| | | | | | | | | | | | | | | | | | | | | | | Summary: A COFF stub indirects the reference to a symbol through memory. A .refptr.$sym global variable pointer is created to refer to $sym. Typically mingw uses these for external global variable declarations, but we can use them for weak function declarations as well. Updates the dso_local classification to add a special case for extern_weak symbols on COFF in both clang and LLVM. Fixes PR37598 Reviewers: smeenai, mstorsjo Subscribers: hiraditya, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D61615 llvm-svn: 360207
* [ValueTracking] add logic for known-never-nan with minnum/maxnumSanjay Patel2019-05-072-6/+7
| | | | | | From the LangRef: "Returns NaN only if both operands are NaN." llvm-svn: 360206
* Reapply r360194 "[JITLink] Add support for MachO .alt_entry atoms." with fixes.Lang Hames2019-05-076-31/+192
| | | | | | | | | This patch modifies MachOAtomGraphBuilder to use setLayoutNext rather than addEdge, and fixes a bug in the section layout algorithm that could result in atoms appearing more than once in the section ordering (which resulted in those atoms being assigned invalid addresses during layout). llvm-svn: 360205
* Regenerate test case again after last revertReid Kleckner2019-05-071-26/+26
| | | | llvm-svn: 360204
* Delete test cases added in r360162 that should have been deleted in r360190Reid Kleckner2019-05-073-0/+0
| | | | llvm-svn: 360203
* [analyzer] Fix a crash when doing RVO from within blocks.Artem Dergachev2019-05-072-0/+24
| | | | | | | | | | When looking for the location context of the call site, unwrap block invocation contexts because they are attached to the current AnalysisDeclContext while what we need is the previous AnalysisDeclContext. Differential Revision: https://reviews.llvm.org/D61545 llvm-svn: 360202
* [MemorySSA] Fix CHECKs in test. [NFC]Alina Sbirlea2019-05-071-2/+5
| | | | llvm-svn: 360201
* Revert r360194 "[JITLink] Add support for MachO .alt_entry atoms."Lang Hames2019-05-074-173/+12
| | | | | | The testcase is asserting on some bots - reverting while I investigate. llvm-svn: 360200
* [AMDGPU] Check MI bundles for hazardsAustin Kerbow2019-05-074-11/+222
| | | | | | | | | | | | | | | | Summary: GCNHazardRecognizer fails to identify hazards that are in and around bundles. This patch allows the hazard recognizer to consider bundled instructions in both scheduler and hazard recognizer mode. We ignore “bundledness” for the purpose of detecting hazards and examine the instructions individually. Reviewers: arsenm, msearles, rampitec Reviewed By: rampitec Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61564 llvm-svn: 360199
* [CodeGen] Rename DEBUG_TYPE for default hazard recognizer.Austin Kerbow2019-05-071-1/+1
| | | | | | | | | | | | | | | | | | Summary: The DEBUG_TYPE of the default hazard recognizer should be updated to match the DEBUG_TYPE of the machine-scheduler pass. Reviewers: rampitec Reviewed By: rampitec Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61359 llvm-svn: 360198
* [InstSimplify] add tests for minnum/maxnum and NaN; NFCSanjay Patel2019-05-071-0/+22
| | | | llvm-svn: 360197
* [CMake] Detecting python modules should be cachedChris Bieneman2019-05-071-2/+5
| | | | | | | | | | | | | | Summary: This requres exec-ing python, which in a trace I ran of the CMake re-configure time took ~2% of the reconfigure time. Reviewers: phosek, smeenai, compnerd Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61402 llvm-svn: 360196
* -frewrite-imports: Add support for wildcard rules in umbrella modules withDavid Blaikie2019-05-074-4/+55
| | | | | | | | | | This trips over a few other limitations, but in the interests of incremental development I'm starting here & I'll look at the issues with -verify and filesystem checks (the fact that the behavior depends on the existence of a 'foo' directory even though it shouldn't need it), etc. Reviewers: rsmith Differential Revision: https://reviews.llvm.org/D61656 llvm-svn: 360195
* [JITLink] Add support for MachO .alt_entry atoms.Lang Hames2019-05-074-12/+173
| | | | | | | | | | | | | | | | The MachO .alt_entry directive is applied to a symbol to indicate that it is locked (in terms of address layout and liveness) to its predecessor atom. I.e. it is an alternate entry point, at a fixed offset, for the previous atom. This patch updates MachOAtomGraphBuilder to check for the .alt_entry flag on symbols and add a corresponding LayoutNext edge to the atom-graph. It also updates MachOAtomGraphBuilder_x86_64 to generalize handling of the X86_64_RELOC_SUBTRACTOR relocation: previously either the minuend or subtrahend of the subtraction had to be the same as the atom being fixed up, now it is only necessary for the minuend or subtrahend to be locked (via any chain of alt_entry directives) to the atom being fixed up. llvm-svn: 360194
* [Core] Remove unused dependenciesAlex Langford2019-05-071-2/+0
| | | | llvm-svn: 360193
OpenPOWER on IntegriCloud