- Mar 05, 2020
-
-
Louis Dionne authored
The goal of the test was only to check that we could access the `this->current` member of std::reverse_iterator from a derived class, but in doing so we incremented a null iterator, which is UB.
-
Sanjay Patel authored
The initial placement of vector-combine in the opt pipeline revealed phase ordering bugs: https://bugs.llvm.org/show_bug.cgi?id=45015 https://bugs.llvm.org/show_bug.cgi?id=42022 This patch contains a few independent changes: 1. Move the pass up in the pipeline, so it happens just after loop-vectorization. This is only to keep vectorization passes together in the pipeline at the moment. I don't have evidence of interaction between these yet. 2. Add an -early-cse pass after -vector-combine to clean up redundant ops. This was partly proposed as far back as rL219644 (which is why it's effectively being moved in the old PM code). This is important because the subsequent -instcombine doesn't work as well without EarlyCSE. With the CSE, -instcombine is able to squash shuffles together in 1 of the tests (because those are simple "select" shuffles). 3. Remove the -vector-combine pass that was running after SLP. We may want to do that eventually, but I don't have a test case to support it yet. Differential Revision: https://reviews.llvm.org/D75145
-
Balazs Benics authored
Summary: Intended to be a non-functional change but it turned out CallEvent handles constructor calls unlike CallExpr which doesn't triggered for constructors. All in all, this change shouldn't be observable since constructors are not yet propagating taintness like functions. In the future constructors should propagate taintness as well. This change includes: - NFCi change all uses of the CallExpr to CallEvent - NFC rename some functions, mark static them etc. - NFC omit explicit TaintPropagationRule type in switches - NFC apply some clang-tidy fixits Reviewers: NoQ, Szelethus, boga95 Reviewed By: Szelethus Subscribers: martong, whisperity, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp, Charusso, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D72035
-
- Mar 04, 2020
-
-
Sanjay Patel authored
As discussed in the commit thread for rGa253a2a7 and D73978, we can do more undef folding for FP ops. The nnan and ninf fast-math-flags specify that if an operand is the disallowed value, the result is poison, so we can produce an undef result. But this doesn't work as expected (the undef operand cases remain) because of a Flags propagation problem in SelectionDAGBuilder. I've added DAGCombiner calls to enable these for the other cases because we've shown in other patches that (because of the limited way that SDAG iterates), it is possible to miss simplifications like this if they are done only at node creation time. Several potential follow-ups to expand on this patch are possible. Differential Revision: https://reviews.llvm.org/D75576
-
Alex Zinenko authored
Recently introduced support for converting sequential reduction loops to CFG of basic blocks in the Standard dialect makes it possible to perform a staged conversion of parallel reduction loops into a similar CFG by using sequential loops as an intermediate step. This is already the case for parallel loops without reduction, so extend the pattern to support an additional use case. Differential Revision: https://reviews.llvm.org/D75599
-
Jeremy Morse authored
On my Windows machine at least, the path to python contains a space.
-
Alexey Bataev authored
Do not allow to use 'sink' and 'source' dependency kinds in 'depobj' directive.
-
AndreyChurbanov authored
Patch by Michael Klemm. Differential Revision: https://reviews.llvm.org/D74956
-
Louis Dionne authored
It is timing sensitive and it fails from time to time. If marking it as flaky doesn't help, we can try tweaking the time outs.
-
John Brawn authored
We need to make sure that PluginAttrInstances is deleted before shared libraries are unloaded, because otherwise when deleting its contents we'll try to access a virtual destructor which no longer exists. As shared libraries are managed using ManagedStatic we can do this by also using ManagedStatic for PluginAttrInstances as ManagedStatics are deleted in reverse order of construction and we know that PluginAttrInstances will only be accessed, and thus constructed, after shared libraries have been loaded.
-
Mikhail Maltsev authored
Revert "Promote nameless lambda used by dl_iterate_phdr to named function to clean up control flow inside findUnwindSections. Also, expose the data structure" This reverts commit d9337123. The commit broke the build in several configurations (including Windows and bare-metal). For details see comments in https://reviews.llvm.org/D75480
-
Alexander Belyaev authored
Differential Revision: https://reviews.llvm.org/D75578
-
Tatyana Krasnukha authored
-
Tatyana Krasnukha authored
This prevents calling Breakpoint::shared_from_this of an object that is not owned by any shared_ptr. Differential Revision: https://reviews.llvm.org/D74557
-
David Green authored
-
Stephan Herhut authored
Summary: A test is passing `-o -` to lld in the hope of writing the output to standard out but that is not the case. Instead it creates a file named `-.lto.o`. This fixes it by creating a temporary file in the work directory. Differential Revision: https://reviews.llvm.org/D75605
-
Evgeniy Brevnov authored
-
Pavel Labath authored
This command had nearly identical code for the "then" and "else" branches of the "if (m_options.num_instructions != 0)" condition. This patch factors out the common parts of the two blocks to reduce duplication.
-
Jonathan Coe authored
Summary: Treat C# object initializers as braced lists. Allow lambdas inside C# braced lists. Reviewers: krasimir Reviewed By: krasimir Subscribers: cfe-commits, MyDeveloperDay Tags: #clang-format, #clang Differential Revision: https://reviews.llvm.org/D75473
-
Adrian Kuegel authored
Summary: This adds an rsqrt op to the standard dialect, and lowers it as 1 / sqrt to the LLVM dialect. Differential Revision: https://reviews.llvm.org/D75353
-
Pavel Labath authored
-
Pavel Labath authored
-
Pavel Labath authored
-
Pavel Labath authored
-
Pavel Labath authored
Summary: getInitialLength is a *DWARF*DataExtractor method so I had to "upgrade" some DataExtractors to be able to make use of it. Reviewers: ikudrin, jhenderson, probinson Subscribers: aprantl, hiraditya, llvm-commits, dblaikie Tags: #llvm Differential Revision: https://reviews.llvm.org/D75535
-
Pavel Labath authored
Reviewers: ikudrin, jhenderson, probinson Subscribers: hiraditya, dblaikie, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D75532
-
Kerry McLaughlin authored
Summary: Implements the @llvm.aarch64.sve.xar intrinsic Reviewers: andwar, c-rhodes, dancgr, efriedma, rengolin Reviewed By: andwar Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, cfe-commits, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D75160
-
Kadir Cetinkaya authored
-
Evgeniy Brevnov authored
[DependenceAnalysis] Dependecies for loads marked with "ivnariant.load" should not be shared with general accesses(PR42151). Summary: This is second attempt to fix the problem with incorrect dependencies reported in presence of invariant load. Initial fix (https://reviews.llvm.org/D64405) was reverted due to a regression reported in https://reviews.llvm.org/D70516. The original fix changed caching behavior for invariant loads. Namely such loads are not put into the second level cache (NonLocalDepInfo). The problem with that fix is the first level cache (CachedNonLocalPointerInfo) still works as if invariant loads were in the second level cache. The solution is in addition to not putting dependence results into the second level cache avoid putting info about invariant loads into the first level cache as well. Reviewers: jdoerfert, reames, hfinkel, efriedma Reviewed By: jdoerfert Subscribers: DaniilSuchkov, hiraditya, bmahjour, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D73027
-
Simon Pilgrim authored
Use castAs if we know the cast should succeed (or we're dereferencing without check), the castAs will assert as well so we can remove local non-null asserts.
-
Simon Pilgrim authored
If SimplifyDemandedBits succeeds in simplifying the byte src, add the CVT_F32_UBYTE node back to the worklist as we might be able to simplify further. Yet another step towards removing SelectionDAG::GetDemandedBits.
-
Florian Hahn authored
This builder provides a convenient way for targets to lower various matrix operations to LLVM IR, making use of matrix intrinsics where available. Reviewers: anemet, Gerolf, hfinkel, andrew.w.kaylor, LuoYuanke Reviewed By: anemet Differential Revision: https://reviews.llvm.org/D72280
-
Kadir Cetinkaya authored
-
gbreynoo authored
- Added handling of thin archives to symtab.test. - Added handling of newlines to response.test. - 62fa3332 exposed behaviour regarding the use of -- on the command line. Added double-hyphen.test to cover this. Differential Revision: https://reviews.llvm.org/D73333
-
Ilya Biryukov authored
Summary: This changes introduces an enum to represent dependencies as a bitmask and extract common patterns from code that computes dependency bits into helper functions. Reviewers: rsmith, martong, shafik, ilya-biryukov, hokein Subscribers: hokein, sammccall, Mordante, riccibruno, merge_guards_bot, rnkovacs, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D71920
-
evgeny authored
-
Kadir Cetinkaya authored
Summary: Replace usage of RawLexer with syntax tokens inside ReplayPreamble. Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D74842
-
Kadir Cetinkaya authored
Summary: Selection tree was performing an early claim only for VarDecls, but there are other cases where we can have declarators, e.g. FieldDecls. This patch extends the early claim logic to all types of declarators. Fixes https://github.com/clangd/clangd/issues/292 Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75106
-
evgeny authored
Differential revision: https://reviews.llvm.org/D75422
-
Georgii Rymar authored
We use size_t for a file offset what is wrong, because size_t is 32-bit value on 32-bit platforms. I was reported that after my 0b511c23 "[llvm-readobj] - Report warnings instead of errors for broken relocations." The following error is observed on 32-bit Arch Linux: [100%] Running all regression tests FAIL: LLVM :: tools/llvm-readobj/ELF/relocation-errors.test (52954 of 54768) ******************** TEST 'LLVM :: tools/llvm-readobj/ELF/relocation-errors.test' FAILED *** ... llvm-project/llvm/test/tools/llvm-readobj/ELF/relocation-errors.test:9:14:error: LLVM-NEXT: expected string not found in input # LLVM-NEXT: warning: '[[FILE]]': unable to print relocation 1 in section 3: unable to access section [index 6] data at 0x17e7e7e8b0: offset goes past the end of file ^ <stdin>:9:1: note: scanning from here /llvm-project/build/bin/llvm-readobj: warning: 'llvm-project/build/test/tools/llvm-readobj/ELF/Output/relocation-errors.test.tmp64': unable to print relocation 1 in section 3: unable to access section [index 6] data at 0xe7e7e8b0: offset goes past the end of file This patch should fix the issue.
-