- Apr 07, 2022
-
-
Florian Hahn authored
This brings the VPlan block naming in line with the naming of the generated basic blocks.
-
- Apr 06, 2022
-
-
Argyrios Kyrtzidis authored
[Support/Hash functions] Change the `final()` and `result()` of the hashing functions to return an array of bytes Returning `std::array<uint8_t, N>` is better ergonomics for the hashing functions usage, instead of a `StringRef`: * When returning `StringRef`, client code is "jumping through hoops" to do string manipulations instead of dealing with fixed array of bytes directly, which is more natural * Returning `std::array<uint8_t, N>` avoids the need for the hasher classes to keep a field just for the purpose of wrapping it and returning it as a `StringRef` As part of this patch also: * Introduce `TruncatedBLAKE3` which is useful for using BLAKE3 as the hasher type for `HashBuilder` with non-default hash sizes. * Make `MD5Result` inherit from `std::array<uint8_t, 16>` which improves & simplifies its API. Differential Revision: https://reviews.llvm.org/D123100
-
Evgeniy Brevnov authored
By specification, source and destination of llvm.memcpy.* must either be equal or non-overlapping. This semantics is hard or impossible to figure out once lowered. This patch explicitly marks loads from source and stores to destination as not aliasing if source and destination is known to be not equal. Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D118441
-
Zi Xuan Wu authored
Add CSKY target toolchains to support csky in linux and elf environment. It can leverage the basic universal Linux toolchain for linux environment, and only add some compile or link parameters. For elf environment, add a CSKYToolChain to support compile and link. Also add some parameters into basic codebase of clang driver. Differential Revision: https://reviews.llvm.org/D121445
-
Yuanfang Chen authored
by invoking `SupportTests --gtest_shuffle=1`. `HideUnrelatedOptions`/`HideUnrelatedOptionsMulti` failed due to other tests calling `cl::ResetCommandLineParser()` which causes default options to be removed. `ExitOnError` would hang due to the threading environment. Renaming it as `*Deathtest` is the recommended practice by GTest docs.
-
- Apr 05, 2022
-
-
Ben Barham authored
This reverts commit 3fda0edc, which breaks crash reproducers in very specific circumstances. Specifically, since crash reproducers have `UseExternalNames` set to false, the `File->getFileEntry().getDir()->getName()` call in `DoFrameworkLookup` would use the *cached* directory name instead of the directory of the looked-up file. The plan is to re-commit this patch but to *add* `ExposesExternalVFSPath` rather than replace `IsVFSMapped`. Differential Revision: https://reviews.llvm.org/D123103
-
Paul Robinson authored
-
Michael Kruse authored
Follow-up on D117226 for createSections. Reviewed By: shraiysh Differential Revision: https://reviews.llvm.org/D117835
-
Evgeniy Brevnov authored
Unit test for functionality going to be added by D118441 Differential Revision: https://reviews.llvm.org/D118440
-
Nikita Popov authored
This allows both explicitly enabling and explicitly disabling opaque pointers, in anticipation of the default switching at some point. This also slightly changes the rules by allowing calls if either the opaque pointer mode has not yet been set (explicitly or implicitly) or if the value remains unchanged.
-
Evgeniy Brevnov authored
Transforms/Utils/MemTransferLowerTest
-
Simon Pilgrim authored
Revert rG5adc94bb8a23eb819f6ca80e722f5b0e6e41401d "New regression test against expandMemCpyAsLoop utility" This was causing link errors on buildbots (and locally)
-
Evgeniy Brevnov authored
Unit test for functionality going to be added by D118441 Differential Revision: https://reviews.llvm.org/D118440
-
- Apr 04, 2022
-
-
Alex Brachet authored
This reverts commit 948f3dec.
-
Yuanfang Chen authored
This relands commit a87ba5c8. Adjust llvm/utils/lit/tests/googletest-timeout.py for new test output.
-
Yuanfang Chen authored
This reverts commit a87ba5c8. Breaks bots: https://lab.llvm.org/buildbot/#/builders/196/builds/10454
-
Yuanfang Chen authored
This helps lit unit test performance by a lot, especially on windows. The performance gain comes from launching one gtest executable for many subtests instead of one (this is the current situation). The shards are executed by the test runner and the results are stored in the json format supported by the GoogleTest. Later in the test reporting stage, all test results in the json file are retrieved to continue the test results summary etc. On my Win10 desktop, before this patch: `check-clang-unit`: 177s, `check-llvm-unit`: 38s; after this patch: `check-clang-unit`: 37s, `check-llvm-unit`: 11s. On my Linux machine, before this patch: `check-clang-unit`: 46s, `check-llvm-unit`: 8s; after this patch: `check-clang-unit`: 7s, `check-llvm-unit`: 4s. Reviewed By: yln, rnk Differential Revision: https://reviews.llvm.org/D122251
-
- Apr 01, 2022
-
-
Nathan Sidwell authored
Move node matcher compilation test to non-anonymous namespace and avoid using attribute.
-
Nathan Sidwell authored
* Add instantiation tests to ItaniumDemangleTest, to make sure all match functions provide constructor arguments to the provided functor. * Fix the Node constructors that lost const qualification on arguments. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D122665
-
Adrian Kuegel authored
-
Peixin-Qiao authored
This patch supports ordered clause specified without parameter in worksharing-loop directive in the OpenMPIRBuilder and lowering MLIR to LLVM IR. Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D114940
-
yanming authored
Add vp.fptoui, vp.uitofp, vp.fptrunc, vp.fpext, vp.trunc, vp.zext, vp.sext, vp.ptrtoint, vp.inttoptr intrinsic and docs. Reviewed By: frasercrmck, craig.topper Differential Revision: https://reviews.llvm.org/D122291
-
- Mar 31, 2022
-
-
Serge Pavlov authored
A new function 'getConstrainedIntrinsic' is added, which for any gived instruction returns id of the corresponding constrained intrinsic. If there is no constrained counterpart for the instruction or the instruction is already a constrained intrinsic, the function returns zero. This is recommit of 115b3ace, reverted in 8160dd58. Differential Revision: https://reviews.llvm.org/D69562
-
- Mar 30, 2022
-
-
Eli Friedman authored
Currently, we have two different lists of features each CPU supports... and those lists aren't consistent. This patch assumes AArch64.td is right, and tries to fix AArch64TargetParser to match. It's hard to find documentation for the right features, but reviewers have confirmed these changes. Probably we should try to unify the two lists at some point, but synchronizing them seems like a prerequisite to that anyway. Differential Revision: https://reviews.llvm.org/D122274
-
Ben Barham authored
If the `ExternalFS` has already remapped a path then the `RedirectingFileSystem` should not change it to the originally provided path. This fixes the original path always being used if multiple VFS overlays were provided and the path wasn't found in the highest (ie. first in the chain). This also renames `IsVFSMapped` to `ExposesExternalVFSPath` and only sets it if `UseExternalName` is true. This flag then represents that the `Status` has an external path that's different from its virtual path. Right now the contained path is still the external path, but further PRs will change this to *always* be the virtual path. Clients that need the external can then request it specifically. Note that even though `ExposesExternalVFSPath` isn't set for all VFS-mapped paths, `IsVFSMapped` was only being used by a hack in `FileManager` that was specific to module searching. In that case `UseExternalNames` is always `true` and so that hack still applies. Resolves rdar://90578880 and llvm-project#53306. Differential Revision: https://reviews.llvm.org/D122549
-
Fraser Cormack authored
This patch mostly follows up on D121292 which introduced the vp.fcmp intrinsic. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D122729
-
Fraser Cormack authored
This patch adds the first support for vector-predicated comparison intrinsics, starting with vp.fcmp. It uses metadata to encode its condition code, like the llvm.experimental.constrained.fcmp intrinsic. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D121292
-
Serge Pavlov authored
This reverts commit 115b3ace. Starting from this commit the buildbot sanitizer-x86_64-linux-bootstrap-msan starts failing (build 10071). Reverted for investigation.
-
Serge Pavlov authored
A new function 'getConstrainedIntrinsic' is added, which for any gived instruction returns id of the corresponding constrained intrinsic. If there is no constrained counterpart for the instruction or the instruction is already a constrained intrinsic, the function returns zero. Differential Revision: https://reviews.llvm.org/D69562
-
- Mar 29, 2022
-
-
Eli Friedman authored
On targets which don't allow "@" in unquoted identifiers, make sure we don't emit them; otherwise, we can't parse our own output. Differential Revision: https://reviews.llvm.org/D122516
-
Chris Bieneman authored
DXIL is wrapped in a container format defined by the DirectX 11 specification. Codebases differ in calling this format either DXBC or DXILContainer. Since eventually we want to add support for DXBC as a target architecture and the format is used by DXBC and DXIL, I've termed it DXContainer here. Most of the changes in this patch are just adding cases to switch statements to address warnings. Reviewed By: pete Differential Revision: https://reviews.llvm.org/D122062
-
Chris Bieneman authored
Adding an initializer list specialization for is_contained allows for compile-time evaluation when called with a constant or runtime evaluation for non-constant values. This patch doesn't add any uses of this template, but that is coming in a subsequent patch. Reviewed By: pete Differential Revision: https://reviews.llvm.org/D122079
-
Chris Bieneman authored
Fleshing this out now allows me to rely on enum math to translate values rather than having to translate the off cases. I should have added this in the first pass, but wasn't thinking about it.
-
- Mar 28, 2022
-
-
Nathan Sidwell authored
The OutputBuffer class tries to present a NUL-terminated string API to consumers. But several of them would prefer a StringView. In particular the Microsoft demangler, juggles between NUL-terminated and StringView, which is confusing. This adds a StringView conversion, and adjusts the Demanglers that can benefit from that. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D120990
-
- Mar 25, 2022
-
-
Johannes Doerfert authored
This reverts commit b9fd8f34 as it accidentally contained a unit test change that is not finished (and unrelated).
-
Johannes Doerfert authored
-
- Mar 24, 2022
-
-
Argyrios Kyrtzidis authored
BLAKE3 is a cryptographic hash function that is secure and very performant. The C implementation originates from https://github.com/BLAKE3-team/BLAKE3/tree/1.3.1/c License is at https://github.com/BLAKE3-team/BLAKE3/blob/1.3.1/LICENSE This patch adds: * `llvm/include/llvm-c/blake3.h`: The BLAKE3 C API * `llvm/include/llvm/Support/BLAKE3.h`: C++ wrapper of the C API * `llvm/lib/Support/BLAKE3`: Directory containing the BLAKE3 C implementation files, including the `LICENSE` file * `llvm/unittests/Support/BLAKE3Test.cpp`: unit tests for the BLAKE3 C++ wrapper This initial patch contains the pristine BLAKE3 sources, a follow-up patch will introduce LLVM-specific prefixes to avoid conflicts if a client also links with its own BLAKE3 version. And here's some timings comparing BLAKE3 with LLVM's SHA1/SHA256/MD5. Timings include `AVX512`, `AVX2`, `neon`, and the generic/portable implementations. The table shows the speed-up multiplier of BLAKE3 for hashing 100 MBs: | Processor | SHA1 | SHA256 | MD5 | |-------------------------|-------|--------|------| | Intel Xeon W (AVX512) | 10.4x | 27x | 9.4x | | Intel Xeon W (AVX2) | 6.5x | 17x | 5.9x | | Intel Xeon W (portable) | 1.3x | 3.3x | 1.1x | | M1Pro (neon) | 2.1x | 4.7x | 2.8x | | M1Pro (portable) | 1.1x | 2.4x | 1.5x | Differential Revision: https://reviews.llvm.org/D121510
-
Shraiysh Vaishay authored
This patch adds the nowait parameter to `createSingle` in OpenMPIRBuilder and handling for IR generation from OpenMP Dialect. Also added tests for the same. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D122371
-
- Mar 23, 2022
-
-
Marcus Johnson authored
It was previously reverted in a6beb18b due to test failures.
-
- Mar 22, 2022
-
-
Snehasish Kumar authored
This reverts commit f4b79442. Reland with underlying msan issue fixed in D122260.
-