- Mar 21, 2022
-
-
Louis Dionne authored
It turns out that we had never been enabling it anyways, since the LIBCXX_TEST_PARAMS parameter was not being passed from the bootstrapping build to the libc++ and libc++abi builds. Furthermore, it looks like the per-target include directories used by the bootstrapping build by default are incompatible with our current modulemap, since __config_site doesn't live in the directory that our modulemap claims. This disables modules in our bootstrapping CI job to unblock D121822, but we should work on fixing the underlying issue once we're able to pass those configuration options to our bootstrapping build.
-
Alex Bradbury authored
This test aims to demonstrate the WebAssembly backend's behaviour around emission of the .functype directive. It covers defined and declared functions as well as libcalls. It currently fails to emit functypes for all defined functions at the head of the file, causing issues with the type checker <https://github.com/llvm/llvm-project/issues/54022>. The patch in <https://reviews.llvm.org/D122134> is a proposal to fix this issue.
-
Simon Pilgrim authored
Handle SUB(AND(SRL(Y,Z),1),X) -> NEG(SBB(X,0,BT(Y,Z))) folds I'll address the X86 lost folded-load regressions in a follow-up patch
-
James Y Knight authored
-
Simon Pilgrim authored
Ensure we don't attempt to fold to illegal types to ADC/SBB nodes. After D122084 its possible for ADD(X,AND(SRL(Y,Z),1) patterns to be matched before type legalization.
-
Nikita Popov authored
This reverts commit 8ee1ef2a. This breaks an update_cc_test_checks test that is based on an incorrect %S use, revert until I can fix it.
-
Nikita Popov authored
-
Alexey Bataev authored
scheduling. Need to check that the instructions with external operands can be reordered safely before actualy exclude them from the scheduling.
-
Sam McCall authored
-
Simon Pilgrim authored
Add shl/srl/sra to the list of ops that we canonicalize with a select to expose an identity merge Differential Revision: https://reviews.llvm.org/D122070
-
Sven van Haastregt authored
Ensure that the TypeExtension of an `ImageType` is also taken into account when generating `OpenCLBuiltins.inc`. This aligns the handling of the `write_only image3d_t` type for `-fdeclare-opencl-builtins` with opencl-c.h with respect to the `cl_khr_3d_image_writes` extension. Since the `write_only image3d_t` type is not available when the extension is disabled, this commit does not add a test to `SemaOpenCL/fdeclare-opencl-builtins.cl`.
-
Dmitry Preobrazhensky authored
Differential Revision: https://reviews.llvm.org/D121995
-
Sophia authored
Reviewed by: fhahn (Florian Hahn) Differential Revision: https://reviews.llvm.org/D121781 -
Markus Böck authored
When the current implementation merges two blocks that have operands defined outside of their block respectively, it will merge these by adding a block argument in the resulting merged block and adding successor arguments to the predecessors. There is a special case where this is incorrect however: If one of predecessors terminator produce the operand, inserting the block argument and updating the predecessor would lead to the terminator using its own result as successor argument. IR Example: ``` %0 = "test.producing_br"()[^bb1, ^bb2] { operand_segment_sizes = dense<0> : vector<2 x i32> } : () -> i32 ^bb1: "test.br"(%0)[^bb4] : (i32) -> () ``` where `^bb1` is then merged with another block would lead to: ``` %0 = "test.producing_br"(%0)[^bb1, ^bb2] ``` This patch fixes that issue during clustering by making sure that if the operand is from an outside block, that it is not produced by the terminator of a predecessor. Differential Revision: https://reviews.llvm.org/D121988 -
Nikita Popov authored
%S refers to the directory of %s, not to the cwd. This is mostly handled correctly, but update_cc_test_checks.py used for the wrong path for non-FileCheck RUN lines.
-
Alexander Belyaev authored
Differential Revision: https://reviews.llvm.org/D122066
-
Simon Pilgrim authored
-
Jay Foad authored
-
Jay Foad authored
-
Jez Ng authored
-
Jez Ng authored
... instead of an instance of `Subsections`. This simplifies the code slightly since all its callsites have a Section instance anyway.
-
Kristina Bessonova authored
Partially fixes PR24883. The patch sets Reference bit while instantiating a typedef if it previously was found referenced. Reviewed By: thakis Differential Revision: https://reviews.llvm.org/D114382
-
Evgeny Shulgin authored
The checker should ignore parentheses when looking whether the function should be marked as `const`. Fixes https://github.com/llvm/llvm-project/issues/52838 Reviewed By: mgehre-amd, njames93 Differential Revision: https://reviews.llvm.org/D122075
-
Jay Foad authored
Simplify some for loops. Don't bother checking src2 operand for writelane because it doesn't have one. Check all VALU instructions, not just VOP1/2/3/C/SDWA.
-
Shraiysh Vaishay authored
This patch adds translation from `omp.atomic.capture` to LLVM IR. Also added tests for the same. Depends on D121546 Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D121554
-
Nikita Popov authored
Rather than using a dummy void pointer type, we should specify the correct private type and perform the bitcast beforehand rather than afterwards. This way, the Address will have correct alignment information.
-
Simon Pilgrim authored
As suggested on PR35908, if we are adding/subtracting an extracted bit, attempt to use BT instead to fold the op and use a ADC/SBB op. Differential Revision: https://reviews.llvm.org/D122084
-
Shraiysh Vaishay authored
This patch fixes the condition for emitting atomic update using `atomicrmw` instruction or compare-exchange loop. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D121546
-
Simon Pilgrim authored
-
serge-sans-paille authored
Differential Revision: https://reviews.llvm.org/D122005
-
serge-sans-paille authored
The implementation is just a generalization of the Select handler. We're no trying to be smart and compute any kind of fixed point. Differential Revision: https://reviews.llvm.org/D121897
-
Florian Hahn authored
completeLoopSkeleton only uses its loop argument only to get the pre-header, but the pre-header is already known (we created/cached it earlier). Remove the unneeded loop argument.
-
Marek Kurdej authored
-
Martin Storsjö authored
Differential Revision: https://reviews.llvm.org/D121164
-
Nikita Popov authored
Mention automatic enablement of opaque pointers mode that was recently implemented. Update wording in the transition state, because it seems like my overly cautious wording has given some people an incorrect impression of the state of opaque pointer support in clang.
-
Nikita Popov authored
-
Marek Kurdej authored
-
Thomas Symalla authored
This reverts commit 011c6419 and e725e2af. Differential Revision: https://reviews.llvm.org/D122117
-
Marek Kurdej authored
This patch adds drop_end that is analogical to drop_begin. It tries to fill the functional gap where one could drop first elements but not the last ones. The need for it came in when refactoring clang-format. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D122009
-
Thomas Symalla authored
-