- Jun 12, 2023
-
-
Luke Lau authored
If we have a load/store with an illegal fixed length vector result type that needs widened, e.g. `x:v6i32 = load p` Instead of just widening it to: `x:v8i32 = load p` We can widen it to the equivalent VP operation and set the EVL to the exact number of elements needed: `x:v8i32 = vp_load a, b, mask=true, evl=6` Provided that the target supports vp_load/vp_store on the widened type. Scalable vectors are already widened this way where possible, so this largely reuses the same logic. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D148713
-
Martin Braenne authored
While working on the ongoing migration to strict handling of value categories (see https://discourse.llvm.org/t/70086), I ran into issues related to losing the value associated with an optional. This issue is hinted at in the existing comments, but the issue didn't become sufficiently clear to me from those, so I thought it would be worth capturing more details, along with ideas for how this issue might be fixed. Reviewed By: ymandel Differential Revision: https://reviews.llvm.org/D152369
-
Guillaume Chatelet authored
This broke aarch64 debug buildbot https://lab.llvm.org/buildbot/#/builders/223/builds/21703 This reverts commit bd4f9787.
-
David Carlier authored
Reviewed By: melver Differential Revision: https://reviews.llvm.org/D152609
-
Guillaume Chatelet authored
This is based on ideas from @nafi to: - use a branchless version of 'cmp' for 'uint32_t', - completely resolve the lexicographic comparison through vector operations when wide types are available. We also get rid of byte reloads and serializing '__builtin_ctzll'. I did not include the suggestion to replace comparisons of 'uint16_t' with two 'uint8_t' as it did not seem to help the codegen. This can be revisited in sub-sequent patches. The code been rewritten to reduce nested function calls, making the job of the inliner easier and preventing harmful code duplication. Reviewed By: nafi3000 Differential Revision: https://reviews.llvm.org/D148717
-
Francesco Petrogalli authored
This commit re-work the methods that dump traces with resource usage to take into account the StartAtCycle value added by https://reviews.llvm.org/D150310. For each i, the values of the lists StartAtCycle and ReservedCycles is are printed with the interval [StartAtCycle[i], ReservedCycles[i]) ``` ... | StartAtCycle[i] | ... | ReservedCycles[i] - 1 | ReservedCycles[i] | ... | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | | ``` Reviewed By: andreadb Differential Revision: https://reviews.llvm.org/D150311
-
Christian Ulmann authored
This commit changes intrinsics that have immarg parameter attributes to model these parameters as attributes, instead of operands. Using operands only works if the operation is an `llvm.mlir.constant`, otherwise the exported LLVMIR is invalid. Reviewed By: gysit Differential Revision: https://reviews.llvm.org/D151692
-
Hristo Hristov authored
Implements parts of P1614R2: - Removed global `operator!=` from `allocator` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152612
-
Piotr Zegar authored
This reverts commit 636c6727.
-
Hristo Hristov authored
Implements parts of P1612R2: - Removed `operator!=` from `bitset` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152611
-
Hristo Hristov authored
[libc++][spaceship] P1614R2: Removed `operator!=` from `unordered_map`, `unordered_multimap`, `__hash_map_iterator` Implements parts of P1614R2: - Removed ops from `unordered_map` - Removed ops from `unordered_multimap` - Removed ops from `__hash_map_iterator` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152642
-
Mike Crowe authored
I'd like to use RedundantStringCStrCheck's formatDereference function from the up-coming modernize-use-std-print check. Let's move it to FixItHintUtils so that the implementation can be shared. Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D150602
-
Piotr Zegar authored
Sort changes listed in ClangTidy release notes by a check name.
-
Felix authored
Adds a new option to the clang-tidy's check : readability-container-data-pointer to ignore some containers. This option is useful in the case of std::array where the size is known at compile time and there is no real risk to access the first index of the container. In that case some users might prefer to ignore this type of container. Relates to : https://github.com/llvm/llvm-project/issues/57445 Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D133244
-
Weining Lu authored
-
Haojian Wu authored
When build CallExpr for error-recovery where we have any dependent child nodes), we should set a dependent type for CallExpr to avoid running into some unexpected following semantic analysis. This also aligns with the C++ behavior. This fixes the symptom crashes: https://github.com/llvm/llvm-project/issues/50244 Differential Revision: https://reviews.llvm.org/D152561
-
wangpc authored
We have already iterated over `FPList`, so there is no need to get and loop over SEW set again. Or we will generate some useless pseudo instructions like `PseudoXXX_VF16_M1_E64`. We add SEW to FPR_Info so that we can get it later. And we rewrite FPR_Info to reduce arguments incidentally. This should reduce the size of files generated by TableGen. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D152524
-
luxufan authored
In replaceSignedInst, if a signed instruction can be repalced with unsigned instruction, we created a new instruction and removed the old instruction's value state. If the following instructions has this new instruction as a use operand, transformations like replaceSignedInst and refineInstruction would be blocked. The reason is there is no value state for the new instrution. This patch set the new instruction's value state with the removed instruction's value state. I believe it is correct bacause when we repalce a signed instruction with unsigned instruction, the value state is not changed. Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D152337
-
Kelvin Li authored
This patch is to allow an extra string prepended to the compiler_version. The check is enhanced to verify that "flang version" is followed by numbers in the form of "n.n.n". Differential Revision: https://reviews.llvm.org/D152572
-
Douglas Yung authored
-
Fangrui Song authored
As explained by commit 849f1dd1, -fxray-function-index was the original default but was accidentally flipped by commit d8a8e5d6. Restore the previous behavior. Originally reported by Oleksii Lozovskyi in D145848.
-
Fangrui Song authored
Apply my post-commit comment on D81995. The negative name misguided commit d8a8e5d6 (`[clang][cli] Remove marshalling from Opt{In,Out}FFlag`) to: * accidentally flip the option to not emit the xray_fn_idx section. * change -fno-xray-function-index (instead of -fxray-function-index) to emit xray_fn_idx This patch renames XRayOmitFunctionIndex and makes -fxray-function-index emit xray_fn_idx, but the default remains -fno-xray-function-index .
-
Florian Hahn authored
Directly use the step of the transformed induction instead of creating a new step. This allows replacing all uses of strides in D147783.
-
Kazu Hirata authored
-
Kazu Hirata authored
The corresponding function definition was removed by: commit 7a9c62ba Author: Reid Spencer <rspencer@reidspencer.com> Date: Fri Jan 12 07:05:14 2007 +0000
-
Kazu Hirata authored
The declaration was added without a corresponding function definition by: commit 7d449d31 Author: Justin Bogner <mail@justinbogner.com> Date: Mon Aug 21 22:57:06 2017 +0000
-
Kazu Hirata authored
-
Kazu Hirata authored
The last use was removed by: commit 98cce003 Author: David Blaikie <dblaikie@gmail.com> Date: Mon Jul 10 03:04:59 2017 +0000 Differential Revision: https://reviews.llvm.org/D152640
-
Kazu Hirata authored
Differential Revision: https://reviews.llvm.org/D152638
-
Oleksii Lozovskyi authored
XRay instrumentation works for macOS running on Apple Silicon, but codegen is untested there. I'm going to make changes affecting this target, get the XRay tests running on AArch64. Data sections are going to become slightly different on x86_64 soon. I do want the tests to be specific about symbol names, so instead of having test check the common step, bifurcate tests a bit and check the full symbol names. As for ARM, XRay is not really supported on iOS at the moment, though ARM is also really used there with modern phones. Nevertheless, codegen tests exist and the output is going to change a little, make it easier to write the special case for iOS. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D145291
-
Fangrui Song authored
Also add driver test missed by D87953 (-fxray-function-groups=). (test/Driver/XRay/lit.local.cfg misunderstands how driver testing works. We place the test in test/Driver instead.)
-
Hristo Hristov authored
Implements parts of P1614R2: - Removed ops from `unordered_multiset`, - Removed ops from `unordered_set` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152643
-
Fangrui Song authored
-
Simon Pilgrim authored
-
Fangrui Song authored
For these -m* options, there is no behavior difference other than documentation difference (Target-dependent compilation options).
-
Hristo Hristov authored
Implements parts of P1614R2: - Removed ops from `complex` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152615
-
Hristo Hristov authored
Implements parts of P1614R2: - Added `operator==` to `slice` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152617
-
Hristo Hristov authored
Implements parts of P1614R2 - Removed ops from `memory_resource` - Removed ops from `polymorphic_allocator` Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D152629
-
- Jun 11, 2023
-
-
Fangrui Song authored
Fix https://github.com/llvm/llvm-project/issues/63237 With only a link action, we claim all CompileOnly_Group options (including -f*, -m*, -i*, etc). -mharden-sls= is not in a Group and therefore not claimed, leading to a spurious -Wunused-command-line-argument warning, and after 5548843d, an error.
-
Kazu Hirata authored
-