- Sep 19, 2021
-
-
David Blaikie authored
DWARFDie: Improve type printing for function and array types - with qualifiers (cv/reference) and pointers to them
-
Simon Pilgrim authored
Both ports are required in most cases. Update the uops counts + port usage based off the most recent llvm-exegesis captures (PR36895) and what Intel AoM / Agner / InstLatX64 reports as well. Noticed while trying to improve fp costs for vectorization via the D103695 helper script.
-
Simon Pilgrim authored
We can combine unary shuffles into either of SHUFPS's inputs and adjust the shuffle mask accordingly. Unlike general shuffle combining, we can be more aggressive and handle multiuse cases as we're not going to accidentally create additional shuffles.
-
David Blaikie authored
Move most type tests to a pre-generated assembly file to make it easier to add more weird cases without having to hand craft more DWARF. Move the novel array types that aren't reachable via clang-generated DWARF to a separate file for easy maintenance.
-
Simon Pilgrim authored
Based off a mixture of llvm-exegesis captures (PR36895) and Intel AoM / Agner / InstLatX64 reports.
-
Roman Lebedev authored
[X86][TLI] SimplifyDemandedVectorEltsForTargetNode(): don't break apart broadcasts from which not just the 0'th elt is demanded Apparently this has no test coverage before D108382, but D108382 itself shows a few regressions that this fixes. It doesn't seem worthwhile breaking apart broadcasts, assuming we want the broadcasted value to be preset in several elements, not just the 0'th one. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D108411
-
Roman Lebedev authored
[X86] lowerShuffleAsDecomposedShuffleMerge(): if both inputs are broadcastable/identities, canonicalize broadcasts as such Split off from D108253. Broadcast is simpler than any other shuffle we might produce to do what we want to do here, so prefer it. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D108382
-
Roman Lebedev authored
-
Roman Lebedev authored
[X86] combineX86ShufflesRecursively(): call SimplifyMultipleUseDemandedVectorElts() on after finishing recursing This was suggested in https://reviews.llvm.org/D108382#inline-1039018, and it avoids regressions in that patch. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D109065
-
Sanjay Patel authored
If we transform these, we have to propagate no-wrap/undef carefully.
-
David Green authored
These were apparently missing, having no pattern that could convert a VGETLANEu of a v4f16 to an i32. Added bf16 whilst here, following the same code.
-
xndcn authored
1. Add missing indent in CondBranchOp 2. Remove indent in block label Differential Revision: https://reviews.llvm.org/D109805
-
Simon Pilgrim authored
Both ports are required, for reg and mem variants - we can also use the WriteFComX class directly and remove the unnecessary InstRW overrides. Matches what Intel AoM / Agner / InstLatX64 report as well.
-
Sylvestre Ledru authored
-
Ben Shi authored
Optimize (add (shl x, c0), (shl y, c1)) -> (SLLI (SH*ADD x, y), c1), if c0-c1 == 1/2/3. Reviewed By: craig.topper, luismarques Differential Revision: https://reviews.llvm.org/D108916
-
David Blaikie authored
-
David Blaikie authored
-
- Sep 18, 2021
-
-
Roman Lebedev authored
Should avoid some regressions in D109065 Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D109989
-
Nikita Popov authored
Missed this one in 80110aaf. This is another test mixing up alias scopes and alias scope lists.
-
Nikita Popov authored
Mostly this fixes cases where !noalias or !alias.scope were passed a scope rather than a scope list. In some cases I opted to drop the metadata entirely instead, because it is not really relevant to the test.
-
alokmishra.besu authored
This patch supports OpenMP 5.0 metadirective features. It is implemented keeping the OpenMP 5.1 features like dynamic user condition in mind. A new function, getBestWhenMatchForContext, is defined in llvm/Frontend/OpenMP/OMPContext.h Currently this function return the index of the when clause with the highest score from the ones applicable in the Context. But this function is declared with an array which can be used in OpenMP 5.1 implementation to select all the valid when clauses which can be resolved in runtime. Currently this array is set to null by default and its implementation is left for future. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D91944
-
Usman Nadeem authored
Change-Id: Iae9bf18619e4926301a866c7e2bd38ced524804e
-
Mehdi Amini authored
This is catching misconfiguration. For example one of my automation had a typo running `-DLLVM_ENABLE_PROJECTS=nlir` and it was just silently ignored. Instead, an error will now be displayed. Recommit 4121ac1e after fixing it to not fail on "all" Differential Revision: https://reviews.llvm.org/D110016
-
Alexandre Ganea authored
This is an attempt to fix the situation described by https://reviews.llvm.org/D104207#2826290 and PR41508. See sequence of operations leading to the bug in https://reviews.llvm.org/D104207#3004689 We ensure that the Latch is completely "free" before decrementing the number of TaskGroupInstances. Differential revision: https://reviews.llvm.org/D109914
-
David Green authored
Put a limit on the size of constant integers we test when looking for VQDMULH, to prevent it from crashing from values more than 64bits.
-
Arjun P authored
As per the LLVM Coding Standards, function names should be verb phrases.
-
Kazu Hirata authored
-
Arjun P authored
Reviewed By: Groverkss Differential Revision: https://reviews.llvm.org/D109962
-
Nico Weber authored
-
Jacques Pienaar authored
For creating a fused loc using array of locations and metadata. Differential Revision: https://reviews.llvm.org/D110022
-
Nico Weber authored
This reverts commit c7d7b98e. Breaks tests on macOS, see comment on https://reviews.llvm.org/D91944
-
Aaron Puchert authored
Previously in D104261 we warned about dropping locks from back edges, this is the corresponding change for exclusive/shared joins. If we're entering the loop with an exclusive change, which is then relaxed to a shared lock before we loop back, we have already analyzed the loop body with the stronger exclusive lock and thus might have false positives. There is a minor non-observable change: we modify the exit lock set of a function, but since that isn't used further it doesn't change anything. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D106713
-
Roman Lebedev authored
``` CMake Error at CMakeLists.txt:76 (MESSAGE): all isn't a know project: clang;clang-tools-extra;compiler-rt;cross-project-tests;libc;libclc;libcxx;libcxxabi;libunwind;lld;lldb;mlir;openmp;parallel-libs;polly;pstl;flang;llvm ``` This reverts commit 4121ac1e.
-
Sylvestre Ledru authored
-
Sylvestre Ledru authored
-
Sylvestre Ledru authored
-
Uday Bondhugula authored
Add a constant propagator for gpu.launch op in cases where the grid/thread IDs can be trivially determined to take a single constant value of zero. Differential Revision: https://reviews.llvm.org/D109994
-
Mehdi Amini authored
This is catching misconfiguration. For example one of my automation had a typo running `-DLLVM_ENABLE_PROJECTS=nlir` and it was just silently ignored. Instead, an error will now be displayed. Differential Revision: https://reviews.llvm.org/D110016
-
Joseph Huber authored
This patch adds support for using dynamic shared memory in the new device runtime. The new function `__kmpc_get_dynamic_shared` will return a pointer to the buffer of dynamic shared memory. Currently the amount of memory allocated is set by an environment variable. In the future this amount will be added to the amount used for the smart stack which will be configured in a similar way. Reviewed By: tianshilei1992 Differential Revision: https://reviews.llvm.org/D110006
-
Joseph Huber authored
This patch adds fields for the device number and number of devices into the device environment struct and debugging values. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D110004
-