- Nov 09, 2021
-
-
Peter Klausler authored
The value of EPSILON() was off by one power of two due to my misreading of the standard; this patch corrects it. Confirmed by checking other Fortran compilers, which all agree. Differential Revision: https://reviews.llvm.org/D113308
-
Jon Chesterfield authored
-
Quinn Pham authored
[NFC] As part of using inclusive language within the llvm project, this patch replaces master with main in file/directory paths in llvm LIT tests. Reviewed By: bjope Differential Revision: https://reviews.llvm.org/D113190
-
Jon Chesterfield authored
Extension of D112504. Lower amdgpu printf to `__llvm_omp_vprintf` which takes the same const char*, void* arguments as cuda vprintf and also passes the size of the void* alloca which will be needed by a non-stub implementation of `__llvm_omp_vprintf` for amdgpu. This removes the amdgpu link error on any printf in a target region in favour of silently compiling code that doesn't print anything to stdout. The exact set of changes to check-openmp probably needs revision before commit Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D112680
-
Roger Kim authored
Removing unclear abbreviations. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D113215
-
Roger Kim authored
The existing code has unnecessary logic to indirectly pass errors through function calls. This diff gets rid of the fluff. Test Plan: Existing unit tests Reviewed By: jhenderson, drodriguez, alexander-shaposhnikov Differential Revision: https://reviews.llvm.org/D113301
-
Suraj Sudhir authored
Add pad_const field to tosa.pad. Add builders to enable optional construction of pad_const in pad op. Update documentation of tosa.clamp to match spec wording. Signed-off-by:
Suraj Sudhir <suraj.sudhir@arm.com> Reviewed By: rsuderman Differential Revision: https://reviews.llvm.org/D113322
-
Peter Klausler authored
When processing the devious NAMELIST input &group logarray = t t t = 666 / for LOGICAL::logarray(3) and INTEGER::t, the runtime library needs to do some look-ahead on the input stream to make sure that the last "t" on the first line is a truth value rather than an item name -- which in this case it is. This look-ahead was implemented in a previous patch but only worked for internal input cases; this patch implements look-ahead capabilities for input from an external file, too (and also adjusts repeated list-directed input items to use this infrastructure, too). Differential Revision: https://reviews.llvm.org/D113311 -
Andrzej Warzynski authored
Please note that the updated documentation reflects the design that we are working towards, but haven't implemented competely yet. We took this approach in order to provide a more holisitic and complete overview of the design. In particular, this document assumes that Flang's frontend and compiler driver can already generate code. This is still work-in-progress and is being developed on the `fir-dev` branch in the F18 repository [1]. [1] https://github.com/flang-compiler/f18-llvm-project/tree/fir-dev Differential Revision: https://reviews.llvm.org/D111573
-
hyeongyu kim authored
-
Michael Benfield authored
Differential Revision: https://reviews.llvm.org/D111833
-
Florian Hahn authored
All phi-like recipes should be at the beginning of a VPBasicBlock with no other recipes in between. Ensure that the recurrence-splicing recipe is not added between phi-like recipes, but after them. Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D111301
-
Craig Topper authored
These and MULHS/MULHU both default to Legal. Targets need to set the ones they don't support to Expand. I think MULHS/MULHU likely has priority in most places so this change probably isn't directly testable. I found it while looking at disabling MULHS/MULHU for nxvXi64 as required for Zve64x. Reviewed By: frasercrmck Differential Revision: https://reviews.llvm.org/D113325
-
Jeff Niu authored
Declarative attribute and type formats with assembly formats. Define an `assemblyFormat` field in attribute and type defs with a `mnemonic` to generate a parser and printer. ```tablegen def MyAttr : AttrDef<MyDialect, "MyAttr"> { let parameters = (ins "int64_t":$count, "AffineMap":$map); let mnemonic = "my_attr"; let assemblyFormat = "`<` $count `,` $map `>`"; } ``` Use `struct` to define a comma-separated list of key-value pairs: ```tablegen def MyType : TypeDef<MyDialect, "MyType"> { let parameters = (ins "int":$one, "int":$two, "int":$three); let mnemonic = "my_attr"; let assemblyFormat = "`<` $three `:` struct($one, $two) `>`"; } ``` Use `struct(*)` to capture all parameters. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D111594 -
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
-