- Aug 08, 2023
-
-
Benjamin Maxwell authored
Unless otherwise specified this pass should not assume a level, as this rejects otherwise valid TOSA. This has caused build failures in IREE. The level (and other validation options) have now been made configurable. The pass options have been converted to enums to make them more type safe in C++. Reviewed By: Tai78641 Differential Revision: https://reviews.llvm.org/D157282
-
Hau Hsu authored
This patch uses similar allocator configuration to Asan, i.e. dynamic allocator start address (~(uptr)0) and 128 GB allocator size. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D152895
-
Tom Eccles authored
Reverting because of buildbot failure This reverts commit c732a452.
-
khei4 authored
-
Tom Eccles authored
Differential Revision: https://reviews.llvm.org/D157106
-
Tom Eccles authored
These make it easier to debug and improve alias analysis. Enable with --debug-only=fir-alias-analysis. Differential Revision: https://reviews.llvm.org/D157105
-
Dmitri Gribenko authored
-
David Green authored
This helps simplify constant splats a little. Without this the code in llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L14072 always returns the existing node. Differential Revision: https://reviews.llvm.org/D157259
-
Simon Pilgrim authored
Ensure expectOperationValueResult performs the is_integral_v as constexpr to prevent MSVC getting confused between the mixture of integer / string constructors in the if-else. Warning introduced in D150880
-
Simon Pilgrim authored
Pulled out of LowerTruncateVecPackWithSignBits - prefer shuffles unless we can cheaply split the vector. ComputeNumSignBits struggles with vXi64 through bitcasts, so we're usually better off with shuffles.
-
Piotr Zegar authored
Just a whitespace cleanup.
-
Luke Lau authored
We need to add new VL nodes to mirror ISD::ROTL and ISD::ROTR. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D157295
-
Luke Lau authored
This reuses the same strategy for fixed vectors as other ops, i.e. custom lower to a scalable *_vl SD node. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D157294
-
Luke Lau authored
Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D157293
-
Florian Hahn authored
Makes the constructors a bit more flexible, to be used in D157194 & D157144.
-
David Green authored
-
Jonas Hahnfeld authored
This test was trying to detect a system installation of CUDA and was marked as returning exit code 1 as part of D156363. Pass an explicit CUDA installation to make the test return exit code 0 regardless of a CUDA being found on the system or not. Also add an explicit -march to get a stable test.
-
Podchishchaeva, Mariya authored
Per CWG 2672 substitution failure within the body of a lambda inside a requires-expression should be a hard error. Fixes https://github.com/llvm/llvm-project/issues/64138 Reviewed By: cor3ntin Differential Revision: https://reviews.llvm.org/D156993
-
Guillaume Chatelet authored
Update documentaiton now that macros are laid out in a more structured way. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D143911
-
Serge Pavlov authored
These tests are touched in D149757 and to reduce the number of changes in that patch, the tests are updated here. The test format is fixed according to the rules: - # for actual comments; - RUN and CHECK lines are specified without #; - all comment markers should have a space between them and the rest of the line (e.g. # This is a comment). In some cases lines are reordered to make CHECK commands closer to the corresponding RUN lines. No other changes are made. Differential Revision: https://reviews.llvm.org/D155943 -
Vignesh Balasubramanian authored
OMPD is already pushed to LLVM repo through https://reviews.llvm.org/D100181 . Currently, it supports Openmp 5.0 standard for the host in Linux machines. Reviewed By: @jdoerfert Differential Revision: https://reviews.llvm.org/D156878
-
Sander de Smalen authored
This patch adds all the language-level function keywords defined in: https://github.com/ARM-software/acle/pull/188 (merged) https://github.com/ARM-software/acle/pull/261 (update after D148700 landed) The keywords are used to control PSTATE.ZA and PSTATE.SM, which are respectively used for enabling the use of the ZA matrix array and Streaming mode. This information needs to be available on call sites, since the use of ZA or streaming mode may have to be enabled or disabled around the call-site (depending on the IR attributes set on the caller and the callee). For calls to functions from a function pointer, there is no IR declaration available, so the IR attributes must be added explicitly to the call-site. With the exception of '__arm_locally_streaming' and '__arm_new_za' the information is part of the function's interface, not just the function definition, and thus needs to be propagated through the FunctionProtoType::ExtProtoInfo. This patch adds the defintions of these keywords, as well as codegen and semantic analysis to ensure conversions between function pointers are valid and that no conflicting keywords are set. For example, '__arm_streaming' and '__arm_streaming_compatible' are mutually exclusive. Differential Revision: https://reviews.llvm.org/D127762
-
Takuya Shimizu authored
This patch fixes the reported regression caused by D146358 through adding notes about an uninitialized base class when we diagnose uninitialized constructor. This also changes the wording from the old one in order to make it clear that the uninitialized subobject is a base class and its constructor is not called. Wording changes: BEFORE: `subobject of type 'Base' is not initialized` AFTER: `constructor of base class 'Base' is not called` Fixes https://github.com/llvm/llvm-project/issues/63496 Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D153969
-
XinWang10 authored
In line 544, if we go in to isFalse, then the Kind could be ICTriangleFalse and isRev must be False, so we never go into the true branch in line 545, better to remove it. Reviewed By: skan, pengfei Differential Revision: https://reviews.llvm.org/D157260
-
iambrj authored
This patch implements findSymbolicIntegerLexMin/Max for PresburgerRelation Reviewed By: Groverkss Differential Revision: https://reviews.llvm.org/D156623
-
Ben Shi authored
Optimize "Rx * imm" for specific immediates to ([IXH32|IXW32|IXD32] (LSLI Rx, shift), Rx). Reviewed By: zixuan-wu Differential Revision: https://reviews.llvm.org/D154768
-
Ben Shi authored
These tests will be optimized with IXH32/IXW32/IXD32 in the future. Reviewed By: zixuan-wu Differential Revision: https://reviews.llvm.org/D154332
-
Ben Shi authored
Reviewed By: zixuan-wu Differential Revision: https://reviews.llvm.org/D154768
-
Felix Schneider authored
The number of values yielded from a LinalgOp's payload has to match the number of inits / outs operands of the LinalgOp. These two numbers got mixed up in the respective error message, this patch clarifies the message and updates the tests. Reviewed By: nicolasvasilache, mehdi_amini Differential Revision: https://reviews.llvm.org/D153124
-
Jim Lin authored
B extension has been removed. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D157353
-
Fangrui Song authored
PPC32 -fpic/-fPIC generates `bl __tls_get_addr(x@tlsgd)@PLT` or `bl __tls_get_addr(x@tlsgd)@PLT+32768`. `powerpc-linux-gnu-gcc -fPIC` generates `bl __tls_get_addr+32668(x@tlsgd)@plt`. These expressions can be parsed by GNU assembler but not by the integrated assembler. Add the support. Differential Revision: https://reviews.llvm.org/D153206
-
Shivam Gupta authored
This reverts commit dfdfd306. An issue is reported for wrong warning, this has to be reconsidered. Differential Revision: https://reviews.llvm.org/D157352
-
dingfei authored
Add import of ConvertVectorExpr. Reviewed By: balazske Differential Revision: https://reviews.llvm.org/D157249
-
dingfei authored
Add import of 'DependentSizedExtVectorType'. Reviewed By: balazske Differential Revision: https://reviews.llvm.org/D157238
-
Jonas Devlieghere authored
This reverts commit 0bdbe7bd because it broke the bots.
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
The multiple -convert-XXX-to-llvm passes are really nice testing tools for individual dialects, but the expectation is that a proper conversion should assemble the conversion patterns using `populateXXXToLLVMConversionPatterns() APIs. However most customers just chain the conversion passes by convenience. This pass makes it composable more transparently to assemble the required patterns for conversion to LLVM dialect by using an interface. The Pass will scan the input and collect all the dialect present, and for those who implement the `ConvertToLLVMPatternInterface` it will use it to populate the conversion pattern, and possible the conversion target. Since these conversions can involve intermediate dialects, or target other dialects than LLVM (for example AVX or NVVM), this pass can't statically declare the required `getDependentDialects()` before the pass pipeline begins. This is worked around by using an extension in the dialectRegistry that will be invoked for every new loaded dialects in the context. This allows to lookup the interface ahead of time and use it to query the dependent dialects. Differential Revision: https://reviews.llvm.org/D157183
-
Mehdi Amini authored
It isn't mutated during the conversion already, communicate this through the API. Differential Revision: https://reviews.llvm.org/D157199
-
Mehdi Amini authored
This method should not load new dialect or affect the context itself. Differential Revision: https://reviews.llvm.org/D157198
-