- Apr 27, 2024
-
-
Cinhi Young authored
- The behavior is similar to UCOMISD on x86, which is also used to compare two fp values, specifically on handling of NaNs. - Update related tests regarding this change. - The further goal is to implement `llvm.minimum` and `llvm.maximum` intrinsics for MIPS R6 and Pre-R6. Part of https://github.com/llvm/llvm-project/issues/64207
-
Nikolas Klauser authored
For most algorithms we've just added underscores to the detail function. This changes `std::find` to match that pattern.
-
Kazu Hirata authored
This patch adds to StringRef the equivalent of std::string_view::{starts,ends}_with(char) in C++20. -
Vitaly Buka authored
Reverts llvm/llvm-project#90307 Breaks bots https://lab.llvm.org/buildbot/#/builders/5/builds/42943
-
Thorsten Schütt authored
preliminary steps poison symbols
-
Semyon Khechnev authored
There is the `MulSIExtendedRHSOne` canonicalization for arith.mulsi_extended that is defined as follows: `mulsi_extended(x, 1) -> [x, extsi(cmpi slt, x, 0)]`. In the implementation of this, there is a `IsScalarOrSplatOne` constraint for the second argument. However, this constraint does not correctly handle situation when multiplying i1 values. Therefore, an additional constraint has been added which checks the second argument for strict positivity. fix #88732
-
Vitaly Buka authored
Primary motivation: is that after #84651 msan will complain if fields accessed after ~__no_destroy. My understanding of the https://eel.is/c++draft/basic.life#10 Static object with trivial destruction has program lifetime. Static object with empty destuctor has implicit lifetime, and accessing the object after lifetime is UB. It was UB before #84651, it's just msan ignored union members. Existing code with unions uses empty destructor, so accessing after the main() can cause UB. "placement new" version can have trivial destructor, so there is no end of lifetime. Secondary motivation: empty destructor will register __cxa_atexit with -O0. https://gcc.godbolt.org/z/hce587b65 We can not remove the destructor with union where _Tp can have non-trivial destructor. But we can remove destructor if we use in-place new instead of union. https://gcc.godbolt.org/z/Yqxx57eEd - empty even with -O0. New test fails without the patch on https://lab.llvm.org/buildbot/#/builders/sanitizer-x86_64-linux-bootstrap-msan
-
Aiden Grossman authored
This patch refactors the llvm-mca rules slightly so that the source files within the tool source directory but not the library source directory are included in a separate cc_library. This patch also adds the llvm-mca unittests.
-
LLVM GN Syncbot authored
-
Perry MacMurray authored
Adds the HexagonCopyHoisting pass, which moves a common copy instruction into a basic block if it is present in all successor basic blocks. --------- Co-authored-by:Jyotsna Verma <jverma@quicinc.com>
-
Owen Pan authored
Fixes #78166.
-
Kazu Hirata authored
Currently, we convert FrameId to Frame and CallStackId to a call stack at several places. This patch unifies those into function objects -- FrameIdConverter and CallStackIdConverter. The existing implementation of CallStackIdConverter, being removed in this patch, handles both FrameId and CallStackId conversions. This patch splits it into two phases for flexibility (but make them composable) because some places only require the FrameId conversion.
-
Kazu Hirata authored
We don't need to explicitly create these instances of ArrayRef because Hasher::update takes ArrayRef, and ArrayRef can be implicitly constructed from C arrays.
-
Craig Topper authored
-
Vitaly Buka authored
https://lab.llvm.org/buildbot/#/builders/168/builds/20063 (should be fixed with #90292) More details in #83774 This reverts commit cf5a8b48.
-
Maksim Panchenko authored
Mostly NFC accept for one assertion that was converted into an error.
-
Aiden Grossman authored
In the SubprocessMemory destructor, I was using a normal std::string to hold the name of the current shared memory name, but a const reference works just as well in this situation while having better performance characteristics. Fixes #90289
-
Craig Topper authored
This reduces nesting of the common 32-bit case and makes it easier to add longer instruction lengths in the future.
-
Fangrui Song authored
-
Vitaly Buka authored
Msan uses `__msan_param_tls` to pass shadow of arguments. Position of arguments is expected to be available during compile time, if size of the argument is know. This is not true for vscale. As work around we require that vscale parameters are always initialized, then we don't need to pass shadow. Ret val should work out of the box as we don't need to know size compile time.
-
Amara Emerson authored
Trying to do fewerElements on this results in an assert. rdar://126373053
-
Usama Hameed authored
This is not needed as the correct linker version is detected at configure time and passed to all tests on Darwin. rdar://125052667
-
Ryosuke Niwa authored
[alpha.webkit.UncountedCallArgsChecker] Avoid emitting warnings for Ref, RefPtr, and their variants. (#90153) Skip the analysis of Ref, RefPtr, and their variant classes in UncountedCallArgsChecker since these classes are "trusted" to not do anything dangerous.
-
Maksim Panchenko authored
Reference section name via wrapper.
-
Brendan Dahl authored
This currently only defines a constant, but in the future will be used to gate builtins for experimenting and prototyping half-precision proposal (https://github.com/WebAssembly/half-precision).
-
Valentin Clement (バレンタイン クレメン) authored
Data transfer should not be issued in device function.
-
Florian Hahn authored
The versioned value may not be used in the loop directly but through a sext/zext. Add new live-ins in those cases.
-
Chelsea Cassanova authored
https://github.com/llvm/llvm-project/pull/87409 removed the broadcast bits from SBDebugger and placed them in `lldb-enumerations.h`. This is API-breaking so this commits places the enum back into `SBDebugger.h` and references the bits from `lldb-enumerations.h`. rdar://127128536
-
Florian Mayer authored
This will also be used by stack MTE
-
Amir Ayupov authored
-
Stanislav Mekhanoshin authored
-
Adrian Prantl authored
This patch adds DWARF constants for DW_AT_language_name and DW_AT_language_version to Dwarf.def and Dwarf.h. While the DWARF 6 spec is not finalized, the constants are published on the DWARF website and considered stable, with idea being that the list published on dwarfstd.org is the authoritative source that is being continuously updated between DWARF revisions, as new languages are being developed. https://dwarfstd.org/languages-v6.html My main motivation for adding this is to use in https://github.com/llvm/llvm-project/pull/89981
-
Craig Topper authored
We're decoding a 1 bit field, but checked that the value was <= 2 instead of <= 1. This isn't a functional change because the generated disassembler code that calls this only extracts 1 bit.
-
dyung authored
This reverts commit 950b7ce0. This change is causing build failures on a bot https://lab.llvm.org/buildbot/#/builders/216/builds/38157
-
Michael Liao authored
- One of tests needs target directx
-
Fangrui Song authored
After https://reviews.llvm.org/D156363 changed -### to exist with code 1 if hasErrorOccurred, we can use -Werror to assert no warnings. This is more reliable than a NOT pattern, which may go stale (when the diagnostic is updated) without being noticed.
-
Craig Topper authored
We had some uses of uint64_t and unsigned. These all come from tblgen code that is templated on InsnType which is currently uint32_t.
-
Joseph Huber authored
Summary: All of these are functionally the same code, just compiled for separate architectures. We currently do not expose a way to execute these on separate architectures as the host plugin works using `dlopen` into the same process, and therefore cannot possibly be an incompatible architecture. (This could work with a remote plugin, but this is not supported yet). This patch simply renames all of these to the same thing so we no longer need to check around for its varying definitions.
-
Marc Auberer authored
Resolves #89674
-
Alexey Bataev authored
Before deleting extractelement instruction for vectorized GEP with external users, need to check that all users vectorized before deleting this extractelement.
-