- May 10, 2021
-
-
Alex Zinenko authored
Previously, the OpenMP to LLVM IR conversion was setting the alloca insertion point to the same position as the main compuation when converting OpenMP `parallel` operations. This is problematic if, for example, the `parallel` operation is placed inside a loop and would keep allocating on stack on each iteration leading to stack overflow. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D101307
-
Pushpinder Singh authored
Previously clang would print a binary blob into the bundled file for amdgcn. With this patch, it will instead print textual IR as expected. Reviewed By: JonChesterfield Differential Revision: https://reviews.llvm.org/D102065
-
Guillaume Chatelet authored
This patch provides a way to specify the default target cpu optimizations to use when compiling llvm-libc. This ensures we don't rely on current compiler's default and allows compiling and cross compiling for a particular target. Differential Revision: https://reviews.llvm.org/D101991
-
Pushpinder Singh authored
This patch prevents runtime tests running on systems without amdgpu. Reviewed By: protze.joachim, tianshilei1992 Differential Revision: https://reviews.llvm.org/D102054
-
Pushpinder Singh authored
This patch is suppose to fix the issue of hsa.h not found. Issue was reported in D99949 Reviewed By: JonChesterfield Differential Revision: https://reviews.llvm.org/D102067
-
Fraser Cormack authored
This patch extends VectorLegalizer::ExpandSELECT to permit expansion also for scalable vector types. The only real change is conditionally checking for BUILD_VECTOR or SPLAT_VECTOR legality depending on the vector type. We can use this to fix "cannot select" errors for scalable vector selects on the RISCV target. Note that in future patches RISCV will possibly custom-lower vector SELECTs to VSELECTs for branchless codegen. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D102063
-
Adrian Kuegel authored
Inside a templated function, other class members need to be called with this->. Otherwise we get: explicit qualification required to use member 'setDebugName' from dependent base class.
-
Jun Ma authored
Since index_vector is lowered into step_vector in D100816, we can just remove index_vector, use step_vector for codegen directly. Differential Revision: https://reviews.llvm.org/D101593
-
Lang Hames authored
Dispatching query callbacks, rather than running them on the current thread, will allow them to be distributed across multiple threads.
-
Lang Hames authored
Generalizing this API allows work to be distributed more evenly. In particular, query callbacks can now be dispatched (rather than running immediately on the thread that satisfied the query). This avoids the pathalogical case where an operation on one thread satisfies many queries simultaneously, causing large amounts of work to be run on that thread while other threads potentially sit idle.
-
Teresa Johnson authored
Ignore ephemeral values (only feeding llvm.assume intrinsics) when computing the instruction count to decide if a block is small enough for threading. This is similar to the handling of these values in the InlineCost computation. These instructions will eventually be removed and shouldn't count against code size (similar to the existing ignoring of phis). Without this change, when enabling -fwhole-program-vtables, which causes type test / assume sequences to be inserted by clang, we can get different threading decisions. In particular, when building with instrumentation FDO it can affect the optimizations decisions before FDO matching, leading to some mismatches. Differential Revision: https://reviews.llvm.org/D101494
-
Yuanfang Chen authored
-
Zakk Chen authored
RISCVAsmPrinter already has MCSubtargetInfo. Reviewed By: HsiangKai Differential Revision: https://reviews.llvm.org/D101889
-
Chia-hung Duan authored
We are able to bind the result from native function while rewriting pattern. In matching pattern, if we want to get some values back, we can do that by passing parameter as return value placeholder. Besides, add the semantic of '$_self' in NativeCodeCall while matching, it'll be the operation that defines certain operand. Differential Revision: https://reviews.llvm.org/D100746
-
Jez Ng authored
This unbreaks my local build, which is configured to build only parts of LLVM.
-
Nico Weber authored
On a section with alignment of 16, subsections aligned to 16-byte boundaries should keep their 16-byte alignment. Fixes PR50274. (The same bug could have happened with -order_file previously.) Differential Revision: https://reviews.llvm.org/D102139
-
Jez Ng authored
This would cause us to pull in symbols (and code) that should be unused. Reviewed By: #lld-macho, thakis Differential Revision: https://reviews.llvm.org/D102137
-
Tomasz Miąsko authored
Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D101821
-
Roman Lebedev authored
As measured by exegesis, and confirmed by ref docs.
-
Roman Lebedev authored
-
Roman Lebedev authored
As confirmed by exegesis measurements, and ref docs. It does actually execute. While there, bump latency for MULX32rr, that seems to match measurements.
-
Roman Lebedev authored
-
Roman Lebedev authored
As measured by exegesis and confirmed in reference docs.
-
Roman Lebedev authored
-
David Green authored
These nodes are not handled correctly by CombineBaseUpdate. For the moment, similar to 5f1cad4d mark them as unsupported.
-
Nikita Popov authored
applyLoopGuards() already combines conditions from multiple nested guards. However, it cannot use multiple conditions on the same guard, combined using and/or. Add support for this by recursing into either `and` or `or`, depending on the direction of the branch. Differential Revision: https://reviews.llvm.org/D101692
-
Nikita Popov authored
Add tests for and/and, and/or, or/or, or/and combinations.
-
Roman Lebedev authored
-
Roman Lebedev authored
As measured by exegesis and confirmed by reference docs.
-
LemonBoy authored
-
Nikita Popov authored
-
- May 09, 2021
-
-
Mark de Wever authored
- Move LWG-3218 to the chrono section. - Mark the several parts 'In progress'.
-
Greg McGary authored
Enforce standard practice Differential Revision: https://reviews.llvm.org/D102112
-
Roman Lebedev authored
-
Roman Lebedev authored
To the best of my knowledge, all instructions are modelled, and have reasonable values to them; flipping the switch doesn't cause any diff for MCA tests, so either we're good, or we have test coverage gaps. I'm not really sure why no other X86 sched model is marked as complete.
-
Roman Lebedev authored
-
Fangrui Song authored
-
Krzysztof Parzyszek authored
-
Andrea Di Biagio authored
Correctly track the number of move eliminated in the Register File statistics.
-
Greg McGary authored
Symbols explicitly exported via command-line options `--exported_symbol SYM` and `--exported_symbols_list FILE` must be defined. Before this fix, lazy symbols defined in archives would be left to languish. We now force them to be included in the linked output. Differential Revision: https://reviews.llvm.org/D102100
-