- May 02, 2023
-
-
LU Hongyi authored
This patch resolves an issue where a value is incorrectly displayed if it is represented by DW_OP_div. This issue is caused by lldb evaluating operands of DW_OP_div as unsigned and performed unintended unsigned division. This issue is resolved by creating two temporary signed scalar and performing signed division. (Addresses GH#61727) Differential Revision: https://reviews.llvm.org/D147370
-
Samira Bazuzi authored
This will eliminate the need for more pass-through APIs. Also replace pass-through usages with this exposure. Reviewed By: ymandel, gribozavr2, xazax.hun Differential Revision: https://reviews.llvm.org/D149464
-
Nikita Popov authored
There is no need to combine metadata if we're performing store to load forwarding. In that case we would end up combining metadata on an unrelated load instruction.
-
Nikita Popov authored
-
LLVM GN Syncbot authored
-
Balázs Kéri authored
Reviewed By: donat.nagy Fixed test failures with previous commit. Differential Revision: https://reviews.llvm.org/D138777
-
Nikita Popov authored
After D149435, LCSSA formation no longer needs access to ScalarEvolution, so remove the argument from the utilities.
-
David Green authored
This adds ComputeNumSignBits for the NEON vector comparison nodes, which all either return 0 or -1. Also adds sign_extend_inreg from VASHR+VSHL to show it performing transforms. Differential Revision: https://reviews.llvm.org/D148624
-
Simon Pilgrim authored
-
Simon Pilgrim authored
-
Vassil Vassilev authored
This came up as a review comment in https://reviews.llvm.org/D148425
-
Jay Foad authored
-
LLVM GN Syncbot authored
-
Balázs Kéri authored
This reverts commit 1aa36da1.
-
Christian Ulmann authored
This commit removes potential UB in the PGO instrumentation passes that was caused by casting away constness and then potentially modifying the object. Reviewed By: gysit Differential Revision: https://reviews.llvm.org/D148903
-
LLVM GN Syncbot authored
-
Victor Perez authored
Define llvm.trap, llvm.debugtrap, and llvm.ubsantrap intrinsics in the llvm dialect. Signed-off-by:
Victor Perez <victor.perez@codeplay.com> Differential Revision: https://reviews.llvm.org/D149574
-
Nikita Popov authored
The GEP minus the base pointer (which is the pre-inc addrec) is exactly the Accum value that was already calculated.
-
Balázs Kéri authored
Reviewed By: donat.nagy Differential Revision: https://reviews.llvm.org/D138777
-
Hans Wennborg authored
-
NAKAMURA Takumi authored
`sanitizer-x86_64-linux-android` uses LLVM_TABLEGEN.
-
Nikita Popov authored
LCSSA currently invalidates SCEV for all instructions for which LCSSA phi nodes are created. This used to be necessary, because SCEV has historically tried to maintain LCSSA form as well. As such, some SCEV uses of the value would have to become uses of the phi node instead. However, nowadays SCEV itself no longer maintains LCSSA form. The SCEV of on LCSSA phi node will be the same as the SCEV of its argument. LCSSA is instead maintained in the SCEVExpander. As such, I believe it is no longer necessary to perform any SCEV invalidation during LCSSA construction. After this patch the ScalarEvolution argument to the LCSSA utilities is no longer necessary -- I'll remove it in a followup NFC patch to keep this patch more concise. Differential Revision: https://reviews.llvm.org/D149435
-
Ulrich Weigand authored
Currently, most Mach-O tests fail when executed on a big-endian host. This is because the Mach-O back-end does not perform the necessary byte swaps when accessing the (little-endian) binary file format. For now, simply consider all Mach-O tests unsupported on big-endian hosts, to enable running the test suite at all on such hosts. Reviewed by: oontvoo Differential Revision: https://reviews.llvm.org/D149270
-
Jonas Devlieghere authored
Various OptionValue related classes are passing around will_modify but the value is never used. This patch simplifies the interfaces by removing the redundant argument.
-
Adrian Kuegel authored
-
Théo Degioanni authored
Ajustments to the MLIR mem2reg changes. Reviewed By: gysit, kuhar Differential Revision: https://reviews.llvm.org/D149431
-
Mehdi Amini authored
This new features enabled to dedicate custom storage inline within operations. This storage can be used as an alternative to attributes to store data that is specific to an operation. Attribute can also be stored inside the properties storage if desired, but any kind of data can be present as well. This offers a way to store and mutate data without uniquing in the Context like Attribute. See the OpPropertiesTest.cpp for an example where a struct with a std::vector<> is attached to an operation and mutated in-place: struct TestProperties { int a = -1; float b = -1.; std::vector<int64_t> array = {-33}; }; More complex scheme (including reference-counting) are also possible. The only constraint to enable storing a C++ object as "properties" on an operation is to implement three functions: - convert from the candidate object to an Attribute - convert from the Attribute to the candidate object - hash the object Optional the parsing and printing can also be customized with 2 extra functions. A new options is introduced to ODS to allow dialects to specify: let usePropertiesForAttributes = 1; When set to true, the inherent attributes for all the ops in this dialect will be using properties instead of being stored alongside discardable attributes. The TestDialect showcases this feature. Another change is that we introduce new APIs on the Operation class to access separately the inherent attributes from the discardable ones. We envision deprecating and removing the `getAttr()`, `getAttrsDictionary()`, and other similar method which don't make the distinction explicit, leading to an entirely separate namespace for discardable attributes. Recommit d572cd1b after fixing python bindings build. Differential Revision: https://reviews.llvm.org/D141742 -
Shengchen Kan authored
https://llvm.org/docs/LangRef.html#llvm-powi-intrinsic The max length of the integer power of `llvm.powi` intrinsic is 32, and the value can be negative. If we use `int32_t` to store this value, `-Val` will underflow when it is `INT32_MIN` The issue was reported in D149033.
-
Phoebe Wang authored
The `ReversePredicate` should have made sure the reverse predicate is supported by target, but the check comes from early function and might be invalid by any mistake. So it's better to double confirm it here. Differential Revision: https://reviews.llvm.org/D149586
-
Phoebe Wang authored
This code was added in 408b5e66, but neither the return value nor `Res` was used in the following code. Differential Revision: https://reviews.llvm.org/D149584
-
4vtomat authored
This patch implements 1.0-RC3: https://github.com/riscv/riscv-aia/releases/download/1.0-RC3/riscv-interrupts-1.0-RC3.pdf Differential Revision: https://reviews.llvm.org/D148066
-
Shengchen Kan authored
This reverts commit b73229e5. It caused LIT failure on non-X86 targets.
-
4vtomat authored
Add missing early clobber and widen constraints for vector crypto instruction: vwsll Differential Revision: https://reviews.llvm.org/D149127
-
NAKAMURA Takumi authored
- It doesn't work if `ALL_FILES` has `$<TARGET_OBJECTS>` with Makefile generator. - It was a micro-optimization in the ancient age. (introduced in rGe6bc093b)
-
Shengchen Kan authored
Issue was reported in D149033, `Val` can be negative value and arithmetic right shift always keeps the sign bit. BTW, the redundant code `Val = -Val` is removed by this patch.
-
Jonas Devlieghere authored
Similar to fdbe7c7f, refactor OptionValueProperties to return a std::optional instead of taking a fail value. This allows the caller to handle situations where there's no value, instead of being unable to distinguish between the absence of a value and the value happening the match the fail value. When a fail value is required, std::optional::value_or() provides the same functionality.
-
Vitaly Buka authored
Revert "Don't loop unswitch vector selects" Breaks msan. Details in D138526. This reverts commit bf089732. This reverts commit e479ed90.
-
Jonas Devlieghere authored
Remove TestExternalEditor.test as the code to open the transcript in an external editor is conditional on lldb running in a graphical session. As a result this test passes locally but not on the bots.
-
Jonas Devlieghere authored
Fix warning, remove trailing whitespace and fix formatting.
-
Jonas Devlieghere authored
I didn't account for the scenario where the string was set but was empty. This commit restores the old behavior and fixes TestMemoryFind.py.
-