- Apr 09, 2023
-
-
Craig Topper authored
-
Congcong Cai authored
range of replacing last namespace decl should be from last non nested namespace to last namespace Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D147843
-
Nikolas Klauser authored
This cuts the time it takes to run the test in half. Reviewed By: Mordante, #libc Spies: libcxx-commits Differential Revision: https://reviews.llvm.org/D147320
-
Min-Yih Hsu authored
- FP registers and register classes definitions - MC support for FP registers - MC support for the FPDR -> FPDR variant of FMOVE/FSMOVE/FDSMOVE Note that we don't implement 32/64-bit FP registers with subregisters since f32/f64 values will be converted to f80 upon storing into a register, rather than occupying part of the register. So we only use register classes with different value types to distinguish them. Differential Revision: https://reviews.llvm.org/D147480
-
Piotr Zegar authored
Currently check does not look into LinkageSpecDecl when removing redundant variable re-declarations. This were leaving code in non-compiling state. Fix patch fixes this and adds removal also of 'extern C'. Fixes: https://github.com/llvm/llvm-project/issues/42068 Reviewed By: carlosgalvezp Differential Revision: https://reviews.llvm.org/D146904
-
- Apr 08, 2023
-
-
Mark de Wever authored
Since stacktrace header is WIP and it's not sure that will be done before LLVM17 update the documentation. When the header is implemented implementing the formatter is trivial, so that can be done quickly afterwards. Implements parts of: - P2693R1 Formatting thread::id and stacktrace Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D144331
-
Timm Bäder authored
-
Timm Bäder authored
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D147845
-
Mark de Wever authored
Partially implements: - P1361 Integration of chrono with text formatting - P2372 Fixing locale handling in chrono formatters Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D144739
-
Mark de Wever authored
This LWG issue is based on the discussion regarding P2733R3 Fix handling of empty specifiers in std::format This paper was disussed and changed a few times in LEWG during the Issaquah meeting. The paper was not voted in, instead LEWG asked for a DR against C++26. This LWG issue contains the direction voted by LEWG. This issue has not been voted in yet. However it fixes some of the defencies on the container based formatting. Without this fix the range-default-formatter for strings looks bad when used in containers. The changes of this issue match the intended changes of P27333. type fmt before after (if changed) --------------------------------------------------------------- char {} a char {:?} 'a' array<char, 1> {} ['a'] array<char, 1> {::} [a] array<char, 1> {::c} [a] array<char, 1> {::?} ['a'] map<char, char> {} {a: a} -> {'a': 'a'} map<char, char> {::} {'a': 'a'} set<char> {} {'a'} set<char> {::} {a} set<char> {::c} {a} set<char> {::?} {'a'} tuple<char> {} ('a') stack<char> {} ['a'] stack<char> {::} [a] stack<char> {::c} [a] stack<char> {::?} ['a'] array<array<char, 1>, 1> {} [[a]] -> {'a': 'a'} array<array<char, 1>, 1> {::} [['a']] array<array<char, 1>, 1> {:::} [[a]] array<array<char, 1>, 1> {:::c} [[a]] array<array<char, 1>, 1> {:::?} [['a']] array<tuple<char>, 1> {} [(a)] -> [('a')] tuple<tuple<char>> {} ((a)) -> (('a')) tuple<array<char, 1>> {} ([a]) -> (['a']) Note the optimization text as mentioned in the tuple formatter can't be done. The call to parse may affect the formatter so its state needs to be preserved. Reviewed By: ldionne, #libc, EricWF Differential Revision: https://reviews.llvm.org/D145847 -
Florian Hahn authored
This removes the need to convert the end of the range to the next power-of-2 for the end iterator after 4bd3fda5 and was suggested as follow-up TODO in D147468.
-
Matt Arsenault authored
-
Matt Arsenault authored
Hopefully fixes issue #61132
-
Matt Arsenault authored
GlobalISel happens to insert some constant materializes before SI_END_CF in one test. These need to be excluded from AliveBlocks since they are defined in the original block and used in the split block, so they aren't fully alive through either block. The case where the value defined in the first block which was originally used in a later block is still broken. Avoids a verifier error in a future patch.
-
Matt Arsenault authored
Resuming any mir test for a pixel shader would assert in the AsmPrinter.
-
Florian Hahn authored
Add an iterator to iterate over all VFs in VFRange. This simplifies some existing code and allows using all_of,any_of and none_of on a VFRange. Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D147468
-
Aiden Grossman authored
D147710 introduced a new annotation-count subcommand to llvm-remarkutil and added in documentation. However, the reference added under the subcommands list never actually pointed to anything. This patch adds a marker for the reference to point to so that the link works and the sphinx build finishes without any errors.
-
Jay Foad authored
This was causing two test failures when I applied D129208 to enable extra verification of LiveIntervals: LLVM :: CodeGen/AMDGPU/optimize-negated-cond-exec-masking-wave32.mir LLVM :: CodeGen/AMDGPU/optimize-negated-cond-exec-masking.mir Differential Revision: https://reviews.llvm.org/D147721
-
Craig Topper authored
Directly test the 5 overloaded types instead of doing extra set creation and iteration.
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D147615
-
Timm Bäder authored
This caused the reported errors from the Call*() handlers to report the wrong source location. Fixes: https://github.com/llvm/llvm-project/issues/62002
-
Nathan Lanza authored
Outlining isn't always a win when the saved instruction count is >= 1. The overhead of representing a new function in the binary depends on exception metadata and alignment. So parameterize this for local tuning. Reviewed By: paquette Differential Revision: https://reviews.llvm.org/D136774
-
Congcong Cai authored
Partially fixed [#60035](https://github.com/llvm/llvm-project/issues/60035) This patch refactor the FixHint for concat-nest-namespace. 1. remove each namespace except the last non-nest namespace. 2. replace the last non-nest namespace with the new name. It can remain the comment / pragma / macro between namespace and update the close comment. Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D147194
-
Lang Hames authored
This test was removed as LLJIT now reflects process symbols by default.
-
Zhongyunde authored
Use clone to keep the metadata, the issue is reported by aeubanks on D141188. Reviewed By: nikic, paulwalker-arm Differential Revision: https://reviews.llvm.org/D146702
-
Lang Hames authored
This reapplies 371cb1af, which was reverted in 0b2240ed due to bot failures. The clang-repl test failure is fixed by dropping the process symbols definition generator that was manually attached to the main JITDylib, since LLJIT now exposes process symbols by default. (The bug was triggered when JIT'd code used the process atexit provided by the generator, rather than the JIT atexit which has been moved into the platform JITDylib). Any LLJIT clients that see crashes in static destructors should likewise remove any process symbol generators attached to their main JITDylib.
-
Aart Bik authored
Reviewed By: Peiming Differential Revision: https://reviews.llvm.org/D147826
-
-
Matt Arsenault authored
-
Matt Arsenault authored
Attempt to fix issue #61761
-
Zain Jaffal authored
-
Zain Jaffal authored
Add missing new line for `llvm/docs/CommandGuide/llvm-remarkutil.rst` This reverts commit 0f7fcb4c.
-
Zain Jaffal authored
This reverts commit 7cc80ef5.
-
Amaury Séchet authored
-
Xiang Li authored
[clang:diagnostics] Turning off warn_self_assignment_overloaded for user-defined compound assignments Fixes 42469 https://github.com/llvm/llvm-project/issues/42469 Only check self assignment on BO_Assign when BuildOverloadedBinOp.
-
Zain Jaffal authored
This adds a `annotation-count` option to llvm-remarkutil. ``` llvm-remarkutil annotation-count -remark=REMARK ``` This will print out the remark count for a pass that uses annotation remarks. Differential Revision: https://reviews.llvm.org/D147710
-
MalavikaSamak authored
This patch introduces UPCStandalonePointerGadget, a FixableGadget that emits fixits to handle cases where a pointer identified as unsafe is simply referenced. An example of such a case is when the pointer is input as an argument to a method call, where we can not change the type of the argument. For cases where the strategy for the unsafe pointer is to use std::span, the idea is to extract the underlying pointer by invoking the "data()" method on the span instance. For example, the gadget emits a fixit for S3, where S1, S2 are handled by other gadgets: S1: int *ptr = new int[10]; S2: int val1 = ptr[k]; // Unsafe operation on ptr S3: foo(ptr); // Some method that accepts raw pointer => FIXIT: foo(ptr.data()); Reviewed by: NoQ, ziqingluo-90, jkorous Differential revision: https://reviews.llvm.org/D143676
-
Balaji V. Iyer authored
Fused multiply and add are being pushed directly to the libm. This is problematic for situations where libm is not available. This patch will break down a fused multiply and add into a multiply followed by an add. Reviewed By: rsuderman Differential Revision: https://reviews.llvm.org/D147811
-
David Blaikie authored
-