- Jun 30, 2021
-
-
Arthur O'Dwyer authored
Differential Revision: https://reviews.llvm.org/D103160
-
Eugene Zhulenev authored
Depends On D104998 Function calls "transfer ownership" to the callee and it puts additional constraints on the reference counting optimization pass Reviewed By: mehdi_amini Differential Revision: https://reviews.llvm.org/D104999
-
Eugene Zhulenev authored
Depends On D104891 Outlining scf.parallel body as a function requires async-parallel-for pass to be a ModuleOp pass Reviewed By: bondhugula Differential Revision: https://reviews.llvm.org/D104998
-
Eugene Zhulenev authored
[mlir:Async] Remove async operations if it is statically known that the parallel operation has a single compute block Depends On D104850 Add a test that verifies that canonicalization removes all async overheads if it is statically known that the scf.parallel operation will be computed using a single block. Reviewed By: herhut Differential Revision: https://reviews.llvm.org/D104891
-
gbreynoo authored
The option --no-print-imm-hex was not included in the command guide for llvm-objdump but appears in the help text. This commit adds it to the command guide. Differential Revision: https://reviews.llvm.org/D104717
-
gbreynoo authored
llvm-objdump had some missing coverage that is fixed by this change: - A test specifically for --print-imm-hex, and coverage of --no-print-imm-hex - section-headers.test checks the aliases --headers or --section-headers - A test for the use of --private-headers for ELF that checks the output - A test for ELF program headers Differential Revision: https://reviews.llvm.org/D103974
-
- Jun 29, 2021
-
-
Piotr Sobczak authored
Related to D104622. Differential Revision: https://reviews.llvm.org/D105109
-
David Green authored
-
LLVM GN Syncbot authored
-
Louis Dionne authored
The __search helper function was once split into __functional for circular dependency reasons, however this is not an issue anymore now that we have finer grained headers.
-
Eugene Zhulenev authored
Concurrent JIT compilation + PerfJITEventListener triggers tsan error Reviewed By: cota Differential Revision: https://reviews.llvm.org/D104977
-
Florian Hahn authored
Add additional coverage for computing UREM/SREM C, 0.
-
Philip Reames authored
If we unroll a loop in the vectorizer (without vectorizing), and the cost model requires a epilogue be generated for correctness, the code generation must actually do so. The included test case on an unmodified opt will access memory one past the expected bound. As a result, this patch is fixing a latent miscompile. Differential Revision: https://reviews.llvm.org/D103700
-
Pratyush Das authored
If a default template type argument is manually specified to be of the default type, then it is committed when printing the template. Differential revision: https://reviews.llvm.org/D103040
-
Louis Dionne authored
Before this patch, Lit parameters that were set as a result of CMake options were not made available to from-scratch configs. This patch serializes those parameters into the generated lit config file so that they are available to all configs. Differential Revision: https://reviews.llvm.org/D105047
-
Louis Dionne authored
Differential Revision: https://reviews.llvm.org/D105040
-
Jeremy Morse authored
https://lab.llvm.org/buildbot/#/builders/5/builds/9208 (dbg-phis-merging-in-ldv.mir and dbg-phis-with-loops.mir in the asan check stage)
-
Alex Zinenko authored
-
Johannes Doerfert authored
This reverts commit 25073a4e. This breaks non-x86 OpenMP builds for a while now. Until a solution is ready to be upstreamed we revert the feature and unblock those builds. See: https://reviews.llvm.org/rG25073a4ecfc9b2e3cb76776185e63bfdb094cd98#1005821 and https://reviews.llvm.org/rG25073a4ecfc9b2e3cb76776185e63bfdb094cd98#1005821 The currently proposed fix (D104788) seems not to be ready yet: https://reviews.llvm.org/D104788#2841928
-
Johannes Doerfert authored
This reverts commit eab1fd38. This commit fixed a problem with 25073a4e (D103121) which is the one we actually need to revert to unblock non-X86 builds of OpenMP. Can be reapplied, or merged into, D103121 as it goes in again.
-
Johannes Doerfert authored
As we have done with other states we want the AAValueSimplify state to be explicit to use it more easily in our helpers.
-
Johannes Doerfert authored
-
Johannes Doerfert authored
There was a TODO but now we actually check if the select condition is assumed constant and only look at the relevant operand.
-
Johannes Doerfert authored
-
Johannes Doerfert authored
While we might eventually want to disallow allocas that do not have the alloca-AS set, it seems undesirable to crash on them. Add a cast when required so that we can support such allocas (at least here). Differential Revision: https://reviews.llvm.org/D104866
-
Balazs Benics authored
It turns out that the CheckerManager::hasPathSensitiveCheckers() missed checking for the BeginFunctionCheckers. It seems like other callbacks are also missing: - ObjCMessageNilCheckers - BeginFunctionCheckers - NewAllocatorCheckers - PointerEscapeCheckers - EndOfTranslationUnitCheckers In this patch, I wanted to use a fold-expression, but until C++17 arrives we are left with the old-school method. When I tried to write a unittest I observed an interesting behavior. I subscribed only to the BeginFunction event, it was not fired. However, when I also defined the PreCall with an empty handler, suddenly both fired. I could add this test demonstrating the issue, but I don't think it would serve much value in a long run. I don't expect regressions for this. However, I think it would be great to enforce the completeness of this list in a runtime check. I could not come up with a solution for this though. PS: Thank you @Szelethus for helping me debugging this. Differential Revision: https://reviews.llvm.org/D105101 Reviewed by: vsavchenko
-
David Sherwood authored
This reverts commit 9dde5141.
-
Dylan Fleming authored
Reviewed By: sdesmalen Differential Revision: https://reviews.llvm.org/D104722
-
Jeremy Morse authored
This patch reads machine value numbers from DBG_PHI instructions (marking where SSA PHIs used to be), and matches them up with DBG_INSTR_REF instructions that refer to them. Essentially they are two separate parts of a DBG_VALUE: the place to read the value (register and program position), and where the variable is assigned that value. Sometimes these DBG_PHIs can be duplicated, usually by tail duplication. This corresponds to the SSA structure of the program being destroyed, and the original PHI being split. When this happens: run LLVMs standard SSAUpdater utility, to work out what values should appear in which blocks. The majority of this patch is boilerplate to make use of SSAUpdater. If there are any additional PHIs on the path between multiple DBG_PHIs and their using DBG_INSTR_REF, their existance is validated, just in case a value gets clobbered along the way (see dbg-phis-with-loops.mir for several examples). Differential Revision: https://reviews.llvm.org/D86814
-
Ben Shi authored
The r1 register should be cleared in prologue of ISR as it is used as constant zero. Reviewed By: dylanmckay Differential Revision: https://reviews.llvm.org/D99467
-
Simon Pilgrim authored
Suggested on D101074 - add a 'icmp sgt i64 %0, -2147483649' comparison that can fold to 'icmp sge i64 %0, -2147483648' on D101074 allowing i32 immediate folding
-
David Sherwood authored
Avoid creating a IRBuilder stack variable with the same name as the class member.
-
Nicolas Vasilache authored
The case where a non-dominating read can be found is captured by slightly generalizing `AliasInfo::wouldCreaateReadAfterWriteInterference`. This simplification will make it easier to implement bufferization across function call. APIs are also simplified were possible. Differential revision: https://reviews.llvm.org/D104845
-
Nico Weber authored
SymtabSection::emitStabs() writes the symbol table in the order of externalSymbols, which has the order of symtab->getSymbols(), which is just the order symbols are added to the symbol table. In practice, symbols in the symbol files of input .o files are sorted, but since that's not guaranteed we sort them in ObjFile::parseSymbols(). To make sure several symbols with the same address keep the order they're in the input file, we have to use stable_sort(). In practice, std::sort() on already-sorted inputs won't change the order of just adjacent elements, and while in theory std::sort() could use a random pivot, in practice the code should be deterministic as it was previously too. But now lld/test/MachO/stabs.s passes with LLVM_ENABLE_EXPENSIVE_CHECKS=ON (the last test that was failing with that set). Fixes a regression from D99972. While here, remove an empty section in stabs.s and move .subsections_via_symbols to the end where it usually is (this part n...
-
Tim Northover authored
-
Florian Hahn authored
Reduced test case for PR49731.
-
David Sherwood authored
This reverts commit dcfc2c3f.
-
Felipe de Azevedo Piovezan authored
This patch brings support for setting runtime preemption specifiers of LLVM's GlobalValues. In LLVM semantics, if the `dso_local` attribute is not explicitly requested, then it is inferred based on linkage and visibility. We model this same behavior with a UnitAttribute: if it is present, then we explicitly request the GlobalValue to marked as `dso_local`, otherwise we rely on the GlobalValue itself to make this decision. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D104983
-
Alex Zinenko authored
This data structure and algorithm collection is no longer in use. Reviewed By: bondhugula Differential Revision: https://reviews.llvm.org/D105102
-
Florian Hahn authored
This patch fixes a crash when the target instruction for sinking is dead. In that case, no recipe is created and trying to get the recipe for it results in a crash. To ensure all sink targets are alive, find & use the first previous alive instruction. Note that the case where the sink source is dead is already handled. Found by https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=35320 Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D104603
-