- Apr 21, 2023
-
-
Serguei Katkov authored
The pass uses ReachingDefAnalysis which has no information about instructions in dead blocks. So do not process them. Reviewed By: pengfei Differential Revision: https://reviews.llvm.org/D148329
-
Lang Hames authored
These tests have been failing on 32-bit machines. https://github.com/llvm/llvm-project/issues/62184.
-
Lang Hames authored
-
Akshay Khadse authored
This change fixes some static code analysis warnings. Reviewed By: LuoYuanke Differential Revision: https://reviews.llvm.org/D148811
-
Shilei Tian authored
Currently we don't check call backs for global variable simplification. What's more, the only way that we can register a simplification call back for global variable is through its initializer (essentially a `Constant *`). It might not correspond to the right global variable. In this patch, we set up a dedicated simplification map for `GlobalVariable`. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D144749
-
Jie Fu authored
/home/jiefu/llvm-project/lldb/source/Target/PathMappingList.cpp:51:5: error: 'scoped_lock' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported] std::scoped_lock locks(m_mutex, rhs.m_mutex); ^ /usr/lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/mutex:692:11: note: add a deduction guide to suppress this warning class scoped_lock ^ /home/jiefu/llvm-project/lldb/source/Target/PathMappingList.cpp:72:3: error: 'scoped_lock' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported] std::scoped_lock locks(m_mutex, rhs.m_mutex); ^ /usr/lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/mutex:692:11: note: add a deduction guide to suppress this warning class scoped_lock ^ 2 errors generated. -
Akshay Khadse authored
This change fixes static code analysis errors Reviewed By: LuoYuanke Differential Revision: https://reviews.llvm.org/D148813
-
LLVM GN Syncbot authored
-
Nikolas Klauser authored
This is a first step towards granularizing `<locale>`. Reviewed By: ldionne, #libc Spies: arichardson, libcxx-commits, mikhail.ramalho Differential Revision: https://reviews.llvm.org/D146397
-
Siva Chandra Reddy authored
This fix is similar to the one done in https://reviews.llvm.org/D148844. This miss was caught by the risv64 builder. Differential Revision: https://reviews.llvm.org/D148871
-
Nikolas Klauser authored
We decided to go a different route. To make the switch easier, rip out the old integration first and build on a clean base. Reviewed By: ldionne, #libc, #libc_abi Spies: arichardson, libcxx-commits Differential Revision: https://reviews.llvm.org/D148480
-
Sam McCall authored
I'd like to use this in a CI system where it's easier to tell the program about paths than manipulate $PATH.
-
Chuanqi Xu authored
Close https://github.com/llvm/llvm-project/issues/62241 In tooling group (SG15), it is still unclear how tools should support header units. Add a warning in the documentation to avoid further confusions.
-
Diego Caballero authored
Fix wrong debug type. Reviewed By: hanchung Differential Revision: https://reviews.llvm.org/D148729
-
Mircea Trofin authored
This makes it easier to reuse the legality part for other import policies that wouldn't use thresholds. Importing un-inlinable functions is also legal, because they could be further specialized in a context-specific way, without inlining. Differential Revision: https://reviews.llvm.org/D148838
-
Nick Desaulniers authored
Alan spotted another test failure that was a result of https://reviews.llvm.org/D148546 when running expensive checks tests locally on windows. Reviewed By: ayzhao Differential Revision: https://reviews.llvm.org/D148861
-
Igor Kudrin authored
Without this dependency, it is possible that llvm-lib.exe will not be built, in which case CMake will try to use lib.exe to build libraries, but this tool cannot handle bitcode files. Differential Revision: https://reviews.llvm.org/D148751
-
Nick Desaulniers authored
My reland of https://reviews.llvm.org/D148546 has caused a few windows demangler tests to fail when run with -DLLVM_ENABLE_EXPENSIVE_CHECKS=ON on windows. I have a sneaking suspicion that MSVC's std::string_view::iterator::operator* may be missing a nullptr check. Link: https://lab.llvm.org/buildbot/#/builders/42/builds/9723/steps/7/logs/stdio Reviewed By: ayzhao Differential Revision: https://reviews.llvm.org/D148852
-
Mikhail R. Gadelha authored
This patch adds assertions to prevent the compilation when we try to bit cast a type that is not trivially copyable when using __builtin_bit_cast, or when we try to bit cast a type that is not trivially copyable and trivially constructable when using memcpy. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D148739
-
Joseph Huber authored
Summary: The `+ptx` features correspond to the related CUDA version. We require a certain set of features from the `ptxas` assembler, which is tied to the CUDA version. Some of the ones set here were insufficient, so I am simply setting a cutoff to the CUDA 9.0 release as the minimum. This roughly corresponds to what should be required for sm_60 to be compiled with the source.
-
Sp00ph authored
Previously, `vecreduce_{and,or} vNi1` could lead to miscompilations because the legalizer first decides to `any_ext` the operand (which is correct for `vecreduce_{and,or}`) and then decides to use `vecreduce_u{min,max}` instead (for which `any_ext` is incorrect). This patch changes it so the `vecreduce_u{min,max}` operations use `sign_ext` instead of `any_ext`. Issue: https://github.com/llvm/llvm-project/issues/62211 Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D148672 -
Valentin Clement authored
Values in bounds are expected to have integer or index types. Enforce this expectation by restricting the type to be IntOrIndex. Reviewed By: razvanlupusoru Differential Revision: https://reviews.llvm.org/D148839
-
Siva Chandra Reddy authored
This bug was caught by the aarch64 full build builder. Differential Revision: https://reviews.llvm.org/D148844
-
Jez Ng authored
In particular, make it `foo.a(foo.o)$ARCHIVE_OFFSET`. The goal is to make it more similar to both ld64 implementation, which uses the `foo.a(foo.o)$MODULE_ID` format. We dump some of these names in LTO code, so matching ld64's format is helpful. This format is also more similar to LLD-ELF's, which is `foo.a(foo.o at $ARCHIVE_OFFSET)`. Reviewed By: #lld-macho, oontvoo Differential Revision: https://reviews.llvm.org/D148828
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D148842
-
Craig Topper authored
If the AVL is a virtual register defined by a vsetvli with the same vlmax we need and the previous vsetvli we saw in the data flow also has that vlmax, we can use the x0, x0 form when we insert a vsetvli. Not only does this avoid an update of the VL physical register, but it may allow doLocalPostpass to completely remove the inserted vsetvli by rewriting the vtype of the previous vsetvli. Differential Revision: https://reviews.llvm.org/D148735
-
Craig Topper authored
-
Peter Klausler authored
Allow two currently erroneous cases of !DIR$ IGNORE_TKR errors: allocatable and pointers, and IGNORE_TKR(R) on (other) arguments passed via descriptors. Downgrade these cases to warnings when they appear in external interfaces, since their implementations may well be in C. But retain the error status on these cases for module procedures, since the Fortran implementation probably can't work. Differential Revision: https://reviews.llvm.org/D148833
-
Rahul Kayaith authored
Currently conversions to interfaces may happen implicitly (e.g. `Attribute -> TypedAttr`), failing a runtime assert if the interface isn't actually implemented. This change marks the `Interface(ValueT)` constructor as explicit so that a cast is required. Where it was straightforward to I adjusted code to not require casts, otherwise I just made them explicit. Depends on D148491, D148492 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D148493
-
Rahul Kayaith authored
This allows implicit conversion from `ElementsAttr` to `TypedAttr`, but required renaming the `ElementsAttr::getType()` interface method to `getShapedType`. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D148492
-
Rahul Kayaith authored
This adds `arith::ConstantOp::materialize`, which builds a constant from an attribute and type only if it would result in a valid op. This is useful for dialect `materializeConstant` hooks, and allows for removing the previous `Attribute, Type` builder which was only used during materialization. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D148491
-
Alexey Bataev authored
instruction, NFC.
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D148818
-
Aaron Ballman authored
This is the first instance where we've really needed to add documentation for a diagnostic group, but -Wwrite-strings really deserves it. This warning option changes the semantic behavior of code, so enabling it can cause code to break (and disabling it can too). That's worth calling out loudly in our documentation.
-
Siva Chandra Reddy authored
After the switch to `add_custom_target` to run integration tests, most of them were not actually being run because of the difference in the way the COMMAND value is treated between `add_custom_target` and `add_custom_command`. This patch gets the integration tests to run again by passing the correct set of arguments to `add_custom_target`. Reviewed By: michaelrj Differential Revision: https://reviews.llvm.org/D148786
-
Michael Jones authored
Uint addition and subtraction normally use builtins which aren't constexpr. This patch adds an rvalue overload version of the addition and subtraction operation that is always constexpr. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D148759
-
Doru Bercea authored
Review: https://reviews.llvm.org/D148832
-
Noah Goldstein authored
Includes macros: linux/SCHED_OTHER // posix req linux/SCHED_FIFO // posix req linux/SCHED_RR // posix req linux/SCHED_BATCH linux/SCHED_ISO linux/SCHED_IDLE linux/SCHED_DEADLINE Includes types: struct sched_param { int sched_priority; } Includes functions: sched_setparam sched_getparam sched_setscheduler sched_getscheduler sched_get_priority_max sched_get_priority_min sched_rr_get_interval Reviewed By: michaelrj Differential Revision: https://reviews.llvm.org/D148069 -
Noah Goldstein authored
Previously unconditionally stored to the return value. This is incorrect, we should only return if user value is non-null. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D148293
-
Ramiro Leal-Cavazos authored
This commit adds a pattern that expands `math.roundeven` into `math.round` + some ops from `arith`. This is needed to be able to run `math.roundeven` in a vectorized manner. Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D148285
-