- Oct 20, 2023
-
-
Sarthak Gupta authored
Fixes https://github.com/llvm/llvm-project/issues/67761 Trying `getDimSize()` before checking for 0-ranked-tensors throws assert errors. This PR ensures that it is checked for. Or should we throw an error if we have a 0-ranked-tensor in a tosa operation?
-
Adrian Kuegel authored
-
Nikita Popov authored
Drop code inserting pointer casts. Check pointer types instead of address spaces.
-
Jacek Caban authored
-
Adrian Kuegel authored
A recent change modified the parameter tileSize from Value to OpFoldResult. Therefore we should call getAsOpFoldResult before passing on the tileSize. Adjust a test regarding this new behavior.
-
Wenju He authored
Fix two issues: * If a constant is used in another constant, we need to insert newly created instructions to worklist so that constant used in them will be converted. * Set debug info of original instruction to newly created instructions.
-
Omar Ahmed authored
Add AfterPlacementNew option to SpaceBeforeParensOptions to have more control on placement new expressions. Fixes #41501 Relates to #54703 Differential Revision: https://reviews.llvm.org/D127270
-
Sam McCall authored
This uses the fast-check allowlist added in the previous commit. This is behind a config option to allow users/developers to enable checks we haven't timed yet, and to allow the --check-tidy-time flag to work. Fixes https://github.com/clangd/clangd/issues/1337 Differential Revision: https://reviews.llvm.org/D138505
-
martin-luecke authored
This adds a flag to the `TransformDialectInterpreter` that relaxes the requirement for only a single top-level transform op. This is useful for supporting transforms that take transform IR as payload. This also aligns the function `findTopLevelTransform` [here](https://github.com/llvm/llvm-project/commit/7b0f4c9db55c355bffddf94d7710f40ee2c1e9db#diff-551f92bb609487ccf981daf9571f0f1b1703ab2330560a388a5f0d133e520be4L59) with its documentation: In the presence of multiple top-level transform ops it now correctly returns the first of them after reporting the error instead of returning a `nullptr`.
-
jeanPerier authored
Type extension is currently handled in FIR by inlining the parents components as the first member of the record type. This is not correct from a memory layout point of view since the storage size of the parent type may be bigger than the sum of the size of its component (due to alignment requirement). To avoid making FIR types target dependent and fix this issue, make the parent component a single component with the parent type at the beginning of the record type. This also simplifies addressing since parent component is now a "normal" component that can be designated with hlfir.designate. StructureComponent lowering however is a bit more complex since the symbols in the structure component may refer to subcomponents of parent types. Notes: 1. The fix is only done in HLFIR for now, a similar fix should be done in ConvertExpr.cpp to fix the path without HLFIR (I will likely still do it in a new patch since it would be an annoying bug to investigate for people testing flang without HLFIR). 2. The private component extra mangling is useless after this patch. I will remove it after 1. 3. The "parent component" TODO in constant CTOR is free to implement for HLFIR after this patch, but I would rather remove it and test it in a different patch.
-
Graham Hunter authored
As requested in (#66521) I confirmed a crash with "return" instead of "continue" in setVectorizedCallDecision's fmuladd reduction recognition.
-
Qiu Chaofan authored
Power10 does not support Hardware Transactional Memory instructions. Remove to keep consistency.
-
jeanPerier authored
The code in `copyHostAssociateVar` is using `createSomeArrayAssignment` for arrays which is using the soon legacy expression lowering. Update the copy to use hlfir.assign instead. I used the temporary_lhs flag to mimic the current behavior, but maybe user defined assignment should be called when needed .This flag also prevents any finalizers to be called on the LHS if the LHS type has finalizers (which would occur otherwise in normal intrinsic assignment). Again, I am not sure what the OpenMP spec wants here. Also, I added special handling for ALLOCATABLE, the current code seems broken to me since it is basically copying the descriptor which would lead to memory leak given the TEMP was previously allocated with the shape of the variable in createHostAssociateVarClone. So copying the DATA instead seemed like the right thing to do.
-
Adrian Kuegel authored
-
fabrizio-indirli authored
In TOSA MLIR dialect, fix the definition of the Clamp op to accept fp16 & bf16 datatype for the min_fp and max_fp attributes. Add ClampOp verifier to check attributes types compatibility. Add related test cases in Tosa/ops.mlir. Signed-off-by:Fabrizio Indirli <Fabrizio.Indirli@arm.com>
-
Benjamin Maxwell authored
This makes the docs a little nicer to read, as these otherwise show up as "«unnamed»". The extra include is needed as naming means getters are generated, and the getters use the LLVM types.
-
Caroline Concatto authored
As described in: https://github.com/ARM-software/acle/pull/257 Patch by: Rosie Sumpter <rosie.sumpter@arm.com> Reviewed By: dtemirbulatov Differential Revision: https://reviews.llvm.org/D151709
-
Jean Perier authored
ISO_Fortran_binding.h was only added to in gcc 10.0. Flang should be buildable with older versions. Remove the test until a safe way to check that the compiler can run the test (that it is clang from the build for instance). Fix bots failure https://lab.llvm.org/buildbot/#/builders/181/builds/24526 Also in: https://lab.llvm.org/buildbot/#/builders/160 https://lab.llvm.org/buildbot/#/builders/268 https://lab.llvm.org/buildbot/#/builders/181
-
Brad Smith authored
-
Jonathan Davies authored
perf2bolt launches a few perf script commands and stores the output in temporary files before processing the output and cleaning them up before it exits. The command `perf script --show-mmap-events` outputs PERF_RECORD_MMAP2 and instruction tracing data but when processed it only looks for PERF_RECORD_MMAP2 and the instruction tracing data is ignored. This is fine for small amounts of instruction trace data but when I've recorded Arm ETM or Intel PT AUX I get lots of it By adding `--no-itrace` is will just show the PERF_RECORD_MMAP2 records and will save on time running the `perf script`, disk space storing the output & time parsing the output. It is the same for `perf script --show-task-events` where BOLT is only interested in the PERF_RECORD_COMM & PERF_RECORD_FORK records. ### Data | Perf Record | Perf Data Size | MMap Size | MMap No Itrace Size | |---|---|---|---| | perf record -e cs_etm/@tmc_etr0/u | 137K | 4468K | 0.632K | | perf record -e intel_pt//u | 890K | 33378K | 0.673K |
-
Nikita Popov authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Kazu Hirata authored
-
David Spickett authored
On Linux this contains a single register that determines memory tagging and tagged address ABI settings.
-
Amadeus Gebauer authored
Adding an additional parameter to run_clang_tidy.py to accept a directory where the clang-tidy fixes are saved to. This directory can then be used to run `clang-apply-replacements`. Closes #69450
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Felix Schneider authored
This adds implementations for `getSingleIterationVar`, `getSingleLowerBound`, `getSingleUpperBound`, `getSingleStep` of `LoopLikeOpInterface` to `scf::ParallelOp`. Until now, the implementations for these methods defaulted to returning `std::nullopt`, even in the special case where the parallel Op only has one dimension. Related: https://github.com/llvm/llvm-project/pull/67883
-
Kunwar Grover authored
This patch fixes the nesting of TosaValidation pass added in TosaToLinalg pipeline.
-
Kazu Hirata authored
-
Nikita Popov authored
When inferring readonly/writeonly on arguments, if the argument is passed to a call, we should only check the ArgMem effects implied by the call -- we don't care whether the call reads/writes non-arg memory (captured pointers are not relevant here, because they will abort the analysis entirely). This also fixes a regression that was introduced when moving to MemoryEffects: The code was still checking the old WriteOnly attribute on functions, which no longer exists.
-
Kazu Hirata authored
-
Vincent Lee authored
This is primarily only useful when debugging. It's generally assumed that users will have their custom flags applied if it's specified in their CMake cache files. Addresses https://github.com/llvm/llvm-project/pull/68393#discussion_r1363399029
-