- Jan 14, 2022
-
-
Chuanqi Xu authored
Now when we are checking if the expression `co_await promise.final_suspend()` is not throw, we would check unconditionally for its child expressions recursively. It takes unnecessary time. And the compiler would complains if the implementation in final_suspend() may throw even if the higher level function signature marked noexcept already. This fixes bug48453 too.
-
Mehdi Amini authored
-
Mehdi Amini authored
Do not build llc and mlir-cpu-runner to run MLIR tests with the native target isn't configured (NFC) The relevant tests are already disabled in this case.
-
Alexander Belyaev authored
Differential Revision: https://reviews.llvm.org/D117283
-
Mehdi Amini authored
This makes `ninja check-mlir` work without the host targets configured.
-
Bryce Wilson authored
Differential Revision: https://reviews.llvm.org/D117241
-
Amir Ayupov authored
Summary: Follow the clang-tidy suggestion to replace reset-release with move assignment. Move assignment's effect for unique_ptr: > Effects: Transfers ownership from `u` to `*this` as if by calling `reset(u.release())` followed by an assignment from `std::forward<D>(u.get_deleter())`.
-
Amir Ayupov authored
Summary: LLVM Programmer’s Manual strongly discourages the use of `std::vector<bool>` and suggests `llvm::BitVector` as a possible replacement.
-
Mehdi Amini authored
Partially revert cac7aabb: some APIs don't have in-tree users and some build breaks weren't caught
-
Stella Laurenzo authored
This is important because *Objects targets need to only depend on other *Objects targets, not on the unsuffixed CAPI rules. Depending on how it is linked in the current setup, it can cause duplicate symbols. Differential Revision: https://reviews.llvm.org/D117176
-
jacquesguan authored
We could use vmv.v.i/vmv.v.x whose eew is 32 to lower the i64 splat vector if the i64 constant scalar could be splitted into two same i32 scalar. Differential Revision: https://reviews.llvm.org/D117079
-
jacquesguan authored
Precommit test for D117079. Differential Revision: https://reviews.llvm.org/D117081
-
Craig Topper authored
-
Vitaly Buka authored
-
Craig Topper authored
The abi name test shows incorrect fcvt.d.h, fcvt.h.d, fcvt.f.h, and fcvt.h.f instructions around the inline assembly.
-
Craig Topper authored
Using named registers as input or output constraints creates fcvt.d.s and fcvt.s.d instructions around the inline assembly. This makes the data unusable by the inline assembly and corrupts the results of the inline assembly.
-
Nenad Mikša authored
Reviewed By: #sanitizers, vitalybuka Differential Revision: https://reviews.llvm.org/D116376
-
Vitaly Buka authored
-
John Ericson authored
This builds on D116521 to add this functionality to Polly without more copy-pasted code. Reviewed By: beanz Differential Revision: https://reviews.llvm.org/D116555
-
Maurice Heumann authored
TLS initializers, for example constructors of thread-local variables, don't necessarily get called. If a thread was created before a module is loaded, the module's TLS initializers are not executed for this particular thread. This is why Microsoft added support for dynamic TLS initialization. Before every use of thread-local variables, a check is added that runs the module's TLS initializers on-demand. To do this, the method `__dyn_tls_on_demand_init` gets called. Internally, it simply calls `__dyn_tls_init`. No additional TLS initializer that sets the guard needs to be emitted, as the guard always gets set by `__dyn_tls_init`. The guard is also checked again within `__dyn_tls_init`. This makes our check redundant, however, as Microsoft's compiler also emits this check, the behaviour is adopted here. Reviewed By: majnemer Differential Revision: https://reviews.llvm.org/D115456
-
River Riddle authored
When constructing an OperationName, the overwhelming majority of cases are from registered operations. This revision adds a non-locked lookup into the currently registered operations, which prevents locking in the common case. This revision also optimizes several uses of RegisteredOperationName that expect the operation to be registered, e.g. such as in OpBuilder. These changes provides a reasonable speedup (5-10%) in some compilations, especially on platforms where locking is expensive. Differential Revision: https://reviews.llvm.org/D117187
-
James Y Knight authored
This commit sometimes causes a crash when compiling a vtable thunk. E.g.: clang '--target=aarch64-grtev4-linux-gnu' -xc++ - -c -o /dev/null <<EOF struct a { virtual int f(); }; struct c { virtual int &g() const; }; struct d : a, c { int &g() const; }; int &d::g() const {} EOF Some follow-up commits have been reverted as well: Revert "IR: Make getRetAlign check callee function attributes" Revert "Fix MSVC "32-bit shift implicitly converted to 64 bits" warning. NFC." Revert "Fix MSVC "32-bit shift implicitly converted to 64 bits" warning. NFC." This reverts commit 4f414af6. This reverts commit a5507d2e. This reverts commit 3d2d208f. This reverts commit 07ddfa95. -
Konstantin Varlamov authored
Differential Revision: https://reviews.llvm.org/D116642
-
wren romano authored
This guarantees the preconditions of fromCOO; whereas prior to this, one could call the constructor directly with an unsorted tensor, which would cause fromCOO to misbehave. Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D117167
-
Peixin-Qiao authored
Differential Revision: https://reviews.llvm.org/D116300
-
Tue Ly authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Chuanqi Xu authored
This patch fixes a crash due to following simple program: > export struct Unit { > bool operator<(const Unit&); > }; It would crash since the compiler would set the module ownership for Unit. And the declaration with a module ownership is assumed to own a module. But here isn't one. So here is the crash. This patch fixes this by exiting early if it finds the export decl is already invalid. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D117093 -
LLVM GN Syncbot authored
-
Nikolas Klauser authored
Add `std::ranges::in_in_result` Reviewed By: Quuxplusone, Mordante, #libc Spies: ldionne, libcxx-commits, mgorny Differential Revision: https://reviews.llvm.org/D116278
-