- Sep 18, 2021
-
-
Usman Nadeem authored
zip1(uzp1(A, B), uzp2(A, B)) --> A zip2(uzp1(A, B), uzp2(A, B)) --> B Differential Revision: https://reviews.llvm.org/D109666 Change-Id: I4a6578db2fcef9ff71ad0e77b9fe08354e6dbfcd
-
- Sep 17, 2021
-
-
Arthur Eubanks authored
Nobody has complained about this, and the documentation for LLVMContext::yield() states that LLVM is allowed to never call it. Reviewed By: asbirlea Differential Revision: https://reviews.llvm.org/D110008
-
Adrian Prantl authored
This fixes a bug in clang where, when clang sees a switch with a fallthrough to a default like this: static void funcA(void) {} static void funcB(void) {} int main(int argc, char **argv) { switch (argc) { case 0: funcA(); break; case 10: default: funcB(); break; } } It does not add a proper debug location for that switch case, such as case 10: above. Patch by Shubham Rastogi! Differential Revision: https://reviews.llvm.org/D109940
-
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
-
cchen 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
-
cchen authored
Use irbuilder as default and remove redundant Clang codegen for masked construct and master construct. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D100874
-
Sanjay Patel authored
-
Aart Bik authored
Note that this revision adds a very tiny bit of constant folding in the sparse compiler lattice construction. Although I am generally trying to avoid such canonicalizations (and rely on other passes to fix this instead), the benefits of avoiding a very expensive disjunction lattice construction justify having this special code (at least for now). Reviewed By: bixia Differential Revision: https://reviews.llvm.org/D109939
-
Aart Bik authored
Reviewed By: ThomasRaoux Differential Revision: https://reviews.llvm.org/D109992
-
Dávid Bolvanský authored
-
Andrew Browne authored
[DFSan] Add force_zero_label abilist option to DFSan. This can be used as a work-around for overtainting. Reviewed By: morehouse Differential Revision: https://reviews.llvm.org/D109847
-
Jan Kratochvil authored
In whole GIT history this map has been always only written but never read.
-
Jeremie Courreges-Anglas authored
-
peter klausler authored
An unused variable declaration from a recent change is eliciting a fatal warning; remove it.
-
Samuel authored
Add reduction to set operands to default values Reviewed By: aeubanks Differential Revision: https://reviews.llvm.org/D108903
-
Hongtao Yu authored
A couple tweaks to 1. allow more thinlto importing by excluding probe intrinsics from IR size in module summary 2. Allow general default attributes (nofree nosync nounwind) for pseudo probe intrinsic. Without those attributes, pseudo probes will be basically treated as unknown calls which will in turn block their containing functions from annotated with those attributes. Reviewed By: wenlei Differential Revision: https://reviews.llvm.org/D109976
-
Keith Smiley authored
This uses darwin's default libtool since llvm-ar isn't normally available. Differential Revision: https://reviews.llvm.org/D109461
-
Krzysztof Drewniak authored
It is the case that, for all positive a and b such that b divides a (e mod (a * b)) mod b = e mod b. For example, ((d0 mod 35) mod 5) can be simplified to (d0 mod 5), but ((d0 mod 35) mod 4) cannot be simplified further (x = 36 is a counterexample). This change enables more complex simplifications. For example, ((d0 * 72 + d1) mod 144) mod 9 can now simplify to (d0 * 72 + d1) mod 9 and thus to d1 mod 9. Expressions with chained modulus operators are reasonably common in tensor applications, and this change _should_ improve code generation for such expressions. Reviewed By: nicolasvasilache Differential Revision: https://reviews.llvm.org/D109930
-
thomasraoux authored
Differential Revision: https://reviews.llvm.org/D109984
-
Martin Storsjö authored
Windows on armv7 is as alignment tolerant as Linux. The alignment considerations in the Windows on ARM ABI are documented at https://docs.microsoft.com/en-us/cpp/build/overview-of-arm-abi-conventions?view=msvc-160#alignment. The document doesn't explicitly say in which state the OS configures the SCTLR.A register (and it's not accessible from user space to inspect), but in practice, unaligned loads/stores do work and seem to be as fast as aligned loads and stores. (Unaligned strd also does seem to work, contrary to Linux, but significantly slower, as they're handled by the kernel - exactly as the document describes.) Differential Revision: https://reviews.llvm.org/D109960
-
peter klausler authored
A function can't be a specification function if it has a dummy procedure argument, even if it's optional and unused. So don't check the reference for actual procedure arguments, but rather the characteristics of the function. Differential Revision: https://reviews.llvm.org/D109935
-
peter klausler authored
From subclause 6.3.3.5: a program unit END statement cannot be continued in fixed form, and other statements cannot have initial lines that look like program unit END statements. I think this is to avoid violating assumptions that are important to legacy compilers' statement classification routines. Differential Revision: https://reviews.llvm.org/D109933
-
Aaron Ballman authored
-
Tozer authored
Dexter currently accepts two possible arguments to determine the binary used for testing; either --builder <builder> (and optionally compiler/linker flags) to build the binary, or --binary <binary> to use the provided binary directly. If both are passed, then --binary overrides --builder; if neither are passed, then an error is raised. This patch instead puts these arguments into a required mutually exclusive argument group, so that an error is automatically raised by argparse if both or neither are given. As an additional change, the --cflags and --ldflags will now raise a warning if they are passed without the --builder flag, as they are meaningless if Dexter is using a pre-built binary. Reviewed By: Orlando Differential Revision: https://reviews.llvm.org/D109833
-
Alexey Bataev authored
-
peter klausler authored
Catch invalid attempts to extract the unknowable extent of the last dimension of an assumed-size array dummy argument, and clean up problems with assumed-rank arguments in similar circumstances exposed by testing the fix. Differential Revision: https://reviews.llvm.org/D109918
-
peter klausler authored
A procedure actual argument to a PURE procedure should be required to have an explicit interface. Implicit-interface actual arguments to non-PURE procedures remain a warning. Differential Revision: https://reviews.llvm.org/D109926
-
thomasraoux authored
Even with all parallel loops reading the output value is still allowed so we don't have to handle reduction loops differently. Differential Revision: https://reviews.llvm.org/D109851
-
thomasraoux authored
Differential Revision: https://reviews.llvm.org/D109859
-
thomasraoux authored
Differential Revision: https://reviews.llvm.org/D107856
-
Vy Nguyen authored
[lld-macho] Ignore local personality symbols if non-local with the same name exisst, to avoid "too many personalities" error. Sometimes people intentionally re-define a dylib personlity symbol as a local defined symbol as a workaround to a ld -r bug. As a result, we could see "too many personalities" to encode. This patch tries to handle this case by ignoring the local symbols entirely. Differential Revision: https://reviews.llvm.org/D107533
-
Shilei Tian authored
-
peter klausler authored
INT, NINT, FLOOR, and CEILING were failing to report overflow as an error while folding operations with constant operands. Differential Revision: https://reviews.llvm.org/D109922
-
AndreyChurbanov authored
-
AndreyChurbanov authored
The third-party ittnotify sources updated from https://github.com/intel/ittapi. Changes applied: - llvm license aded to all files; initial BSD license saved in LICENSE.txt; - clang-formatted; - renamed *.c to *.cpp, similar to what we did with all our sources; - added #include "kmp_config.h" with definition of INTEL_ITTNOTIFY_PREFIX macro into ittnotify_static.cpp. Differential Revision: https://reviews.llvm.org/D109333
-
peter klausler authored
The intrinsic inquiry functions SIZE and UBOUND -- but not LBOUND -- require a DIM= argument if their first argument is an assumed-size array. The intrinsic SHAPE must not be used with an assumed-size array. Differential Revision: https://reviews.llvm.org/D109912
-
Kazu Hirata authored
-
Roman Lebedev authored
[X86] Improve `matchBinaryShuffle()`'s `BLEND` lowering with per-element all-zero/all-ones knowledge We can use `OR` instead of `BLEND` if either the element we are not picking is zero (or masked away); or the element we are picking overwhelms (e.g. it's all-ones) whatever the element we are not picking: https://alive2.llvm.org/ce/z/RKejao Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D109726
-