- Mar 15, 2022
-
-
Ben Barham authored
The rest of LLVM uses `print` for the method taking the `raw_ostream` and `dump` only for the method with no parameters. Use the same for `RedirectingFileSystem`. Differential Revision: https://reviews.llvm.org/D121494
-
Kazu Hirata authored
-
Fangrui Song authored
With a sufficiently large output buffer, the only failure is Z_MEM_ERROR. Check it and call the noreturn report_bad_alloc_error if applicable. resize_for_overwrite may call report_bad_alloc_error as well. Now that there is no other error type, we can replace the return type with void and simplify call sites. Reviewed By: ikudrin Differential Revision: https://reviews.llvm.org/D121512
-
Jonas Devlieghere authored
-
Peter Klausler authored
LBOUND must return 1 for an empty dimension, no matter what explicit expression might appear in a declaration or arrive in a descriptor. Differential Revision: https://reviews.llvm.org/D121488
-
Eric Schweitz authored
around the feature in MLIR's canonicalizer, which considers the semantics of constants differently based on how they are packaged and not their values and use. Add test. Reviewed By: clementval Differential Revision: https://reviews.llvm.org/D121625
-
Andrzej Warzynski authored
This reverts commit b6a76004. It caused the following build failure: ``` ninja: error: dependency cycle: include/flang/__fortran_ieee_exceptions.mod -> include/flang/__fortran_ieee_exceptions.mod ``` See e.g.: * https://lab.llvm.org/buildbot/#/builders/172/builds/9595 To reproduce: ``` cmake -G Ninja \ -DLLVM_TARGETS_TO_BUILD=host \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_PROJECTS="clang;flang" \ ../../llvm ninja check-flang ```
-
Fraser Cormack authored
The InstAlias framework cannot match registers against zero_reg, which RVV uses to encode unmasked operations. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D92228
-
Louis Dionne authored
It turns out that the whole header is only enabled in C++20 and above, so these checks were redundant (and always true). Differential Revision: https://reviews.llvm.org/D121604
-
Mircea Trofin authored
Discussed extensively on D98232. The functionality introduced in D35816 never worked correctly. In D98232, it was fixed, but, as it was introducing a large compile-time regression, and the value of the original patch was called into doubt, we disabled it by default everywhere. A year later, it appears that caused no grief, so it seems safe to remove the disabled code. This should be accompanied by re-opening bug 26810. Differential Revision: https://reviews.llvm.org/D121128
-
Peter Klausler authored
The intrinsic module IEEE_ARITHMETIC must incorporate the public names from the intrisic module IEEE_EXCEPTIONS. Rename IEEE_EXCEPTIONS to __Fortran_ieee_exceptions so that it won't clash with the nonintrinsic namespace, establish a new intrinic IEEE_EXCEPTIONS module that USEs it, and add a USE to IEEE_ARITHMETIC. Differential Revision: https://reviews.llvm.org/D121490
-
Jonas Devlieghere authored
Use the debugger's asynchronous output stream for printing progress events. This allows the active IOHandler to be in charge of printing them and doing the necessary synchronization. Differential revision: https://reviews.llvm.org/D121502
-
zhongyunde authored
Test bit of lane EC-1 can use P register directly, eg: Materialize : Idx = (add (mul vscale, NumEls), -1) i1 = extract_vector_elt t37, Constant:i64<Idx> ... into: "ptrue p, all" + PTEST Reviewed By: paulwalker-arm Differential Revision: https://reviews.llvm.org/D121180 -
Stanislav Gatev authored
This is part of the implementation of the dataflow analysis framework. See "[RFC] A dataflow analysis framework for Clang AST" on cfe-dev. Differential Revision: https://reviews.llvm.org/D121455
-
Sam Clegg authored
Differential Revision: https://reviews.llvm.org/D121538
-
Teresa Johnson authored
Extend -wholeprogramdevirt-check to support both the existing trapping mode on an incorrect devirtualization, as well as a new mode to fallback to an indirect call on a mismatch. The new mode is The new mode is useful in cases where we want to enable devirtualization but cannot fully guarantee whole program visibility (e.g in the case where LTO has been disabled for a small set of objects that could potentially override virtual methods without having a symbol reference to anything in the base class including the vtable). Remove !prof and !callees metadata (which are used by indirect call promotion) from both the new direct call and the fallback indirect call (so that we don't perform another round of promotion on the latter). Also remove it from the direct call in the non-fallback cases, which was an oversight, although it didn't seem to cause any issues. Add tests for the metadata removal covering the various cases. Differential Revision: https://reviews.llvm.org/D121419
-
Valentin Clement authored
This patch lowers the format statement. Reviewed By: PeteSteinfeld Differential Revision: https://reviews.llvm.org/D121611
-
Jonas Devlieghere authored
-
Jonas Devlieghere authored
PrintAsync is relying on the IOHandler to print to the output/error stream. In that context it doesn't make much sense that this is using the debugger's streams rather than the one from the IOHandler. Differential revision: https://reviews.llvm.org/D121536
-
Arthur Eubanks authored
Includes verifier changes checking the elementtype, clang codegen changes to emit the elementtype, and ISel changes using the elementtype. Reviewed By: #opaque-pointers, nikic Differential Revision: https://reviews.llvm.org/D120527
-
Valentin Clement authored
This patch lowers common block variable to FIR. This patch is part of the upstreaming effort from fir-dev branch. Reviewed By: PeteSteinfeld Differential Revision: https://reviews.llvm.org/D121610 Co-authored-by:
V Donaldson <vdonaldson@nvidia.com> Co-authored-by:
Jean Perier <jperier@nvidia.com>
-
Andrew Browne authored
Use of setarch Was added by https://github.com/llvm/llvm-project/commit/f93c2b64ed381bc4bc52f4b8539026f1597f574d Running the test now it doesn't seem necessary because: 1) Explicitly only x86_64 is supported for dfsan. 2) https://reviews.llvm.org/D111522 makes it less flakey. Differential Revision: https://reviews.llvm.org/D121439
-
Andrew Litteken authored
[IROutliner] Avoid reusing PHINodes that have already been matched when merging outlined functions' phi node blocks When there are two external phi nodes for two different outlined regions, when compressing the created phi nodes between the two regions, the matching for the second phi node in the second region matches the first phi node created for the first region rather than the second phi node created for the first region. This adds an extra output path where there should not be one. The fix is the ignore phi nodes that have already been matched for each region. Reviewer: paquette Differential Revision: https://reviews.llvm.org/D121312
-
LLVM GN Syncbot authored
-
Valentin Clement authored
Lower the `all` intrinsic procedure. This patch is part of the upstreaming effort from fir-dev branch. Reviewed By: PeteSteinfeld Differential Revision: https://reviews.llvm.org/D121607 Co-authored-by:
mleair <leairmark@gmail.com> Co-authored-by:
Jean Perier <jperier@nvidia.com>
-
Jonas Devlieghere authored
This fixes the implicit module build after b1b4b6f3 broke the LLDB build: https://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake/42084/ My previous commit didn't have the modulemap change staged.
-
Arthur Eubanks authored
RequireAnalysis<GlobalsAA> doesn't actually recompute GlobalsAA. GlobalsAA isn't invalidated (unless specifically invalidated) because it's self-updating via ValueHandles, but can be imprecise during the self-updates. Rather than invalidating GlobalsAA, which would invalidate AAManager and any analyses that use AAManager, create a new pass that recomputes GlobalsAA. Fixes #53131. Differential Revision: https://reviews.llvm.org/D121167
-
Arthur Eubanks authored
-
Valentin Clement authored
This patch adds more lowering of operations sub-expression inside elemental call arguments. It tests array contexts where an address is needed for each element (for the argument), but part of the array sub-expression must be lowered by value (for the operation) This patch is part of the upstreaming effort from fir-dev branch. Reviewed By: PeteSteinfeld Differential Revision: https://reviews.llvm.org/D121606 Co-authored-by:
Jean Perier <jperier@nvidia.com> Co-authored-by:
Eric Schweitz <eschweitz@nvidia.com>
-
Arthur Eubanks authored
We still need the code after stripAndAccumulateConstantOffsets() since it doesn't handle GEPs of scalable types and non-constant but identical indexes. Differential Revision: https://reviews.llvm.org/D120523
-
serge-sans-paille authored
Bug introduced in fbbc41f8
-
Stella Stamenova authored
The test was marked as XFAIL on Windows, but recent changes have made it flaky instead
-
Jonas Devlieghere authored
This fixes the implicit module build after b1b4b6f3 broke the LLDB build: https://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake/42084/
-
Jonas Devlieghere authored
Move ProgressEventData out of debugger and into its own file. This is in preparation of adding a few new type of event data for diagnostics. Differential revision: https://reviews.llvm.org/D121506
-
Nikita Popov authored
DSE assumes that this is the case when forming a calloc from a malloc + memset pair. For tests, either update the malloc signature or change the data layout.
-
Matthias Springer authored
Differential Revision: https://reviews.llvm.org/D121597
-
Sam Clegg authored
Followup/fix for https://reviews.llvm.org/D121349.
-
Keith Smiley authored
This changes the clang-tidy script to discover binaries you've built locally without having to pass them. Differential Revision: https://reviews.llvm.org/D100692
-
- Mar 14, 2022
-
-
Sam Clegg authored
This change continues to lay the ground work for supporting extended const expressions in the linker. The included test covers object file reading and writing and the YAML representation. Differential Revision: https://reviews.llvm.org/D121349
-
Nikita Popov authored
In this case we may not generate a bitcast, so the new load/store becomes the external user.
-