- Nov 09, 2021
-
-
Lei Zhang authored
This avoids crashes when the pattern is applied to ops with tensor semantics. Reviewed By: ThomasRaoux Differential Revision: https://reviews.llvm.org/D113415
-
hyeongyu kim authored
Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" This reverts commit aacfbb95. Revert "Fix lit test failures in CodeGenCoroutines" This reverts commit 63fff0f5.
-
Kazu Hirata authored
-
Sander de Smalen authored
When targeting a specific CPU with scalable vectorization, the knowledge of that particular CPU's vscale value can be used to tune the cost-model and make the cost per lane less pessimistic. If the target implements 'TTI.getVScaleForTuning()', the cost-per-lane is calculated as: Cost / (VScaleForTuning * VF.KnownMinLanes) Otherwise, it assumes a value of 1 meaning that the behavior is unchanged and calculated as: Cost / VF.KnownMinLanes Reviewed By: kmclaughlin, david-arm Differential Revision: https://reviews.llvm.org/D113209
-
Valentin Clement authored
Add conversion from !fir.logical types to LLVM IR Dialect types. This patch is part of the upstreaming effort from fir-dev branch. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D113405 Co-authored-by:
Jean Perier <jperier@nvidia.com> Co-authored-by:
Eric Schweitz <eschweitz@nvidia.com>
-
Aaron Ballman authored
This reverts commit 438437cb. There are still broken bots from this: https://lab.llvm.org/buildbot/#/builders/188/builds/5495 https://lab.llvm.org/buildbot/#/builders/171/builds/5710
-
Simon Pilgrim authored
-
- Nov 08, 2021
-
-
LLVM GN Syncbot authored
-
CJ Johnson authored
Suggests switching the initialization pattern of `absl::Cleanup` instances from the factory function to class template argument deduction (CTAD) in C++17 and higher. Reviewed By: ymandel Differential Revision: https://reviews.llvm.org/D113195
-
Joe Nash authored
NFC. This check mainly handles size affecting literals. Make it check all explicit operands instead of a few by name. Also make the isLiteral check handle the KIMM operands, see https://reviews.llvm.org/D111067 Change-Id: I1a362d55b2a10f5c74d445272e8b7829a8b77597 Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D113318 Change-Id: Ie6c688f30a71e0335d1c6dd1ff65019bd7ce684e
-
Anton Afanasyev authored
Extended value is known to be inside range smaller than full one. Prevent SCCP to mark such value as overdefined. Fixes PR52253 Differential Revision: https://reviews.llvm.org/D112721
-
David Tenty authored
This changes adds the pipeline config for both 32-bit and 64-bit AIX targets. As well, we add a lit feature `LIBCXX-AIX-FIXME` which is used to mark the failing tests which remain to be investigated on AIX, so that the CI produces a clean build. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D111359
-
Simon Pilgrim authored
Use ComputeMinSignedBits() to ensure the mul source operands at least sign-extend down from the bottom 16 bits. This will make it easier if/when we try to support handling of source types larger than 32-bits.
-
David Sherwood authored
The common use case for calling createStepForVF is currently something like: Value *Step = createStepForVF(Builder, ConstantInt::get(Ty, UF), VF); and it makes more sense to reduce overall lines of code and change the function to let it create the constant instead. With my patch this becomes: Value *Step = createStepForVF(Builder, Ty, VF, UF); and the ConstantInt is created instead createStepForVF. A side-effect of this is that the code in createStepForVF is also becomes simpler. As part of this patch I've also replaced some calls to getRuntimeVF with calls to createStepForVF, i.e. getRuntimeVF(Builder, Count->getType(), VFactor * UFactor) -> createStepForVF(Builder, Count->getType(), VFactor, UFactor) because this feels semantically better. Differential Revision: https://reviews.llvm.org/D113122
-
Zarko Todorovski authored
Replace the description and file names for this argument. As far as I understand this is a positional argument and I don't believe this changes breaks any existing interfaces. Reviewed By: hctim, MaskRay Differential Revision: https://reviews.llvm.org/D113316
-
Jon Chesterfield authored
-
Mindong Chen authored
This adds FP type support to the SVE Container type list as a supplement to D112303. Reviewed By: peterwaller-arm, paulwalker-arm Differential Revision: https://reviews.llvm.org/D113333
-
Quinn Pham authored
[NFC] As part of using inclusive language within the llvm project, this patch replaces master with main when referring to `.chm` files. Reviewed By: teemperor Differential Revision: https://reviews.llvm.org/D113299
-
Denys Petrov authored
Summary: Add support of multi-dimensional arrays in `RegionStoreManager::getBindingForElement`. Handle nested ElementRegion's getting offsets and checking for being in bounds. Get values from the nested initialization lists using obtained offsets. Differential Revision: https://reviews.llvm.org/D111654
-
Simon Pilgrim authored
As suggested on D113371, this adds a wrapper to SelectionDAG::ComputeNumSignBits, similar to the llvm::ComputeMinSignedBits wrapper. I've included some usage, its not exhaustive, just the more obvious cases where the intention is obvious. Differential Revision: https://reviews.llvm.org/D113396
-
Anton Afanasyev authored
-
Anton Afanasyev authored
-
David Sherwood authored
When inserting an unpacked FP subvector into a packed vector we can simply cast the unpacked value into a packed value, since both types are legal for SVE. We can then use this as the input for the UZP instruction. This avoids us expanding the operation by going through the stack. Differential Revision: https://reviews.llvm.org/D113270
-
Zahira Ammarguellat authored
support default values for C/C++. FPP-MODEL=PRECISE enables FFP-CONTRACT FMA is enabled. Fix for https://bugs.llvm.org/show_bug.cgi?id=50222
-
Anastasia Stulova authored
Add new triple and target info for ‘spirv32’ and ‘spirv64’ and, thus, enabling clang (LLVM IR) code emission to SPIR-V target. The target for SPIR-V is mostly reused from SPIR by derivation from a common base class since IR output for SPIR-V is mostly the same as SPIR. Some refactoring are made accordingly. Added and updated tests for parts that are different between SPIR and SPIR-V. Patch by linjamaki (Henry Linjamäki)! Differential Revision: https://reviews.llvm.org/D109144
-
Nico Weber authored
This reverts commit 17d95602. Breaks check-clang everywhere, see e.g.: https://lab.llvm.org/buildbot/#/builders/105/builds/17229 https://lab.llvm.org/buildbot/#/builders/109/builds/25831 https://lab.llvm.org/buildbot/#/builders/188/builds/5493 https://lab.llvm.org/buildbot/#/builders/123/builds/7073
-
Valentin Clement authored
This patch add the `!fir.box` type conversion to llvm. `fir.box` is converted to the descriptor as defined in the ISO_Fortran_binding.h and the addendum defined in descriptor.h. This patch is part of the upstreaming effort from fir-dev branch. Reviewed By: awarzynski Differential Revision: https://reviews.llvm.org/D113288 Co-authored-by:
Jean Perier <jperier@nvidia.com> Co-authored-by:
Eric Schweitz <eschweitz@nvidia.com> Co-authored-by:
V Donaldson <vdonaldson@nvidia.com>
-
Zahira Ammarguellat authored
support default values for C/C++. FPP-MODEL=PRECISE enables FFP-CONTRACT FMA is enabled. Fix for https://bugs.llvm.org/show_bug.cgi?id=50222
-
Dmitry Makogon authored
This reverts commit db289340. The patch caused 2 crashes with expensive checks enabled.
-
Matt authored
This is a refinement to the work in https://reviews.llvm.org/D111638 Fold (fadd p a (fmul p b c)) into (fma p a b c) Differential Revision: https://reviews.llvm.org/D113095
-
Dmitry Makogon authored
In IndVarSimplify after simplifying and extending loop IVs we call 'replaceCongruentIVs'. This function optionally takes a TTI argument to be able to replace narrow IVs uses with truncates of the widest one. For some reason the TTI wasn't passed to the function, so it couldn't perform such transform. This patch fixes it. Reviewed By: mkazantsev Differential Revision: https://reviews.llvm.org/D113024
-
Simon Pilgrim authored
We have several places where we need to extract the raw bits data from a BUILD_VECTOR node, so consolidate this to a single helper function that handles Undefs and Integer/FP constants, including implicit truncation. This should make it easier to extend D113202 to handle more constant folding of bitcasted constant data. Differential Revision: https://reviews.llvm.org/D113351
-
Tobias Gysi authored
Adapt the Fourier Motzkin elimination to take into account affine computations happening outside of the cloned loop nest. Depends On D112713 Reviewed By: nicolasvasilache Differential Revision: https://reviews.llvm.org/D112838
-
@t-msn authored
It is better to set all barrier patterns to use "dist" when at least one environment variable specifies "dist". Otherwise if only one environment is set to "dist" and others left blank inadvertently, it would result in mixing dist barrier with default hyper barrier pattern. Differential Revision: https://reviews.llvm.org/D112597
-
Andrzej Warzynski authored
This patch extends the `FIRToLLVMLowering` pass in Flang by adding a hook to transform `fir.call` to `llvm.call`. This is part of the upstreaming effort from the `fir-dev` branch in [1]. [1] https://github.com/flang-compiler/f18-llvm-project Patch originally written by: Co-authored-by:
Eric Schweitz <eschweitz@nvidia.com> Co-authored-by:
V Donaldson <vdonaldson@nvidia.com> Differential Revision: https://reviews.llvm.org/D113278
-
Simon Moll authored
VE integrated asm has been the default in Clang. Also use the default setting for integrated asm in the backend. Reviewed By: kaz7 Differential Revision: https://reviews.llvm.org/D113384
-
Simon Pilgrim authored
-
Tobias Gysi authored
The revision updates the packing loop search in hoist padding. Instead of considering all loops in the backward slice, we now compute a separate backward slice containing the index computations only. This modification ensures we do not add packing loops that are not used to index the packed buffer due to spurious dependencies. One instance where such spurious dependencies can appear is the extract slice operation introduced between the tile loops of a double tiling. Depends On D112412 Reviewed By: nicolasvasilache Differential Revision: https://reviews.llvm.org/D112713
-
David Green authored
We already have patterns for fptosi and fptoui plus fmul to fixed point convert, this adds equivalent patterns for fptosi.sat and fptoui.sat, which should apply equally well for the legal saturating variants. Differential Revision: https://reviews.llvm.org/D113199
-
Jean Perier authored
If the source has an addendum, the descriptor that is being established to describe a section over the source needs to copy the addendum so that derived type information is correctly set in the descriptor being established. This allows namelist IO with derived type to work correctly. Differential Revision: https://reviews.llvm.org/D113258
-