- Feb 25, 2020
-
-
Kadir Cetinkaya authored
Summary: Also fixes a bug, resulting from directly using ND.getEndLoc() for end location of the range. As ND.getEndLoc() points to the begining of the last token, whereas it should point one past the end, since LSP ranges are half open (exclusive on the end). Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D74850
-
Joerg Sonnenberger authored
-
Kelvin Li authored
Differential Revision: https://reviews.llvm.org/D75001
-
Jonathan Coe authored
Summary: Ensure that auto-implemented properties `{ get; private set }` are wrapped on to one line for C# code. Reviewers: MyDeveloperDay, krasimir Reviewed By: MyDeveloperDay, krasimir Subscribers: cfe-commits Tags: #clang-format, #clang Differential Revision: https://reviews.llvm.org/D75006 -
Hans Wennborg authored
No functionality change (intended), but this seems to make the code a bit clearer for the compiler and maybe for human readers too.
-
Luís Marques authored
D68391 added tests that check scenarios where no RISC-V GCC toolchain is supposed to be detected. When running the tests on RISC-V hosts the system's GCC toolchain will be detected, and the tests will fail. This patch adds a `--gcc-toolchain` option pointing to a path where no GCC toolchain is present, ensuring that the tests are run under the expected conditions, and therefore are able to pass in all test environments. Differential Revision: https://reviews.llvm.org/D75061
-
Alex Zinenko authored
The documentation was describing an obsolete version of the transformation.
-
Sanjay Patel authored
There's already a FIXME note on this file; it can break when the underlying LLVM behavior changes independently of anything in clang.
-
Sanjay Patel authored
-
Adam Balogh authored
Currently, using negative numbers in iterator operations (additions and subractions) results in advancements with huge positive numbers due to an error. This patch fixes it. Differential Revision: https://reviews.llvm.org/D74760
-
Balázs Kéri authored
Reviewers: martong, a.sidorin, shafik Reviewed By: martong Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, teemperor, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D74720
-
Sanjay Patel authored
-
Sanjay Patel authored
Code duplication (subsequently removed by refactoring) allowed a logic discrepancy to creep in here. We were being conservative about creating a vector binop -- but not a vector cmp -- in the case where a vector op has the same estimated cost as the scalar op. We want to be more aggressive here because that can allow other combines based on reduced instruction count/uses. We can reverse the transform in DAGCombiner (potentially with a more accurate cost model) if this causes regressions. AFAIK, this does not conflict with InstCombine. We have a scalarize transform there, but it relies on finding a constant operand or a matching insertelement, so that means it eliminates an extractelement from the sequence (so we won't have 2 extracts by the time we get here if InstCombine succeeds). Differential Revision: https://reviews.llvm.org/D75062
-
Florian Hahn authored
We have to skip MemoryDefs that cannot be removed. This fixes a crash in the newly added test case and fixes a wrong case in memset-and-memcpy.ll.
-
Stephan Herhut authored
Summary: The original patch had TODOs to add support for step computations, which this commit addresses. The computations are expressed using affine expressions so that the affine canonicalizers can simplify the full bound and index computations. Also cleans up the code a little and exposes the pass in the header file. Differential Revision: https://reviews.llvm.org/D75052
-
Alex Zinenko authored
AffineOps dialect lives under lib/Dialect/AffineOps and so should its tests.
-
Jeremy Morse authored
On Windows, an error running the debugger typically leaves a process hanging around in the working directory. When Dexter exits, it can't then delete the working directory and produces an exception, masking the problem in the debugger. (This can be worked around by specifying --save-temps). Rather than hard-erroring, print a warning when we can't delete the working directory instead. It'd be much better to improve our error handling, and make the WorkingDirectory class aware that something's wrong when it enters exit. However, this is something that's going to mask genuine errors and make everyones lives harder right now, so I think this non-ideal fix is important to get in first. Differential Revision: https://reviews.llvm.org/D74548
-
Raphael Isemann authored
-
Raphael Isemann authored
This member is for some reason initialized in ClangASTSource::FindExternalVisibleDecls so all other functions using this member dereference a nullptr unless we call this function before that. Let's just initialize this in the constructor. This should be NFC as the only side effect is that we don't reset the namespace map when calling ClangASTSource::FindExternalVisibleDecls multiple times (and we never call this function multiple times for one NameSearchContext from what I can see).
-
Nico Weber authored
-
whitequark authored
-
Raphael Isemann authored
The size of NameSearchContext isn't important as we never store it and rarely allocate more than a few. This way we also don't have to use the memset to initialize these fields to zero.
-
Raphael Isemann authored
The class is large enough to be in its own file. This patch also removes the cyclic dependency between ClangASTSource <-> NameSearchContext.
-
Kadir Cetinkaya authored
Summary: Currently extract variable doesn't spell the type explicitly and just uses an `auto` instead, which is not available in C. Reviewers: usaxena95 Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75053
-
Hans Wennborg authored
Now that the Windows installer no longer does anything besides self-extract, maybe it would make sense to distribute the toolchain as a plain zip file in addition to the current installer. Differential revision: https://reviews.llvm.org/D74896
-
Stephan Herhut authored
I forward declared mlir::Region as a struct by mistake :(
-
Andrzej Warzynski authored
Summary: This patch renames functions and TableGen classes for SVE gathers and scatters. The original names implied that the corresponding methods/classes are only suited for regular gathers/scatters (i.e. LD1 and ST1), which is not the case. Indeed, we will be re-using them for non-temporal and first-faulting gathers/scatters in the forthcoming patches. The new names also highlight the split into Vector-Scalar (VS) and Scalar-Vector (SV) cases. List of changes: * `performLD1GatherCombine` and `performST1ScatterCombine` are renamed as `performGatherLoadCombine` and `performScatterStoreCombine`, respectively. * Selection DAG types for scatters and gathers from AArch64SVEInstrInfo.td are renamed. For example, `SDT_AArch64_GLD1` is renamed as `SDT_AArch64_GATHER_SV`. SV stands for Scalar-Vector, as opposed to Vector-Scalar (VS). * The intrinsic classes from IntrinsicsAArch64.td are renamed. For example, `AdvSIMD_GatherLoad_64bitOffset_Intrinsic` is renamed as `AdvSIMD_GatherLoad_SV_64b_Offsets_Intrinsic`. * Updated comments in `performGatherLoadCombine` and `performScatterStoreCombine`. Reviewers: sdesmalen, rengolin, efriedma Reviewed By: sdesmalen Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D75035
-
Raphael Isemann authored
-
Alex Zinenko authored
Affine dialect already has a map+operand simplification infrastructure in place. Plug the recently added affine.min/max operations into this infrastructure and add a simple test. More complex behavior of the simplifier is already tested by other ops. Addresses https://bugs.llvm.org/show_bug.cgi?id=45008. Differential Revision: https://reviews.llvm.org/D75058
-
Alex Zinenko authored
Originally, intrinsics generator for the LLVM dialect has been producing customized code fragments for the translation of MLIR operations to LLVM IR intrinsics. LLVM dialect ODS now provides a generalized version of the translation code, parameterizable with the properties of the operation. Generate ODS that uses this version of the translation code instead of generating a new version of it for each intrinsic. Differential Revision: https://reviews.llvm.org/D74893
-
Alex Zinenko authored
All LLVM IR intrinsics are constructed in a similar way. The ODS definition of the LLVM dialect in MLIR also lists multiple intrinsics, many of which reproduce the same (or similar enough) code stanza to translate the MLIR operation into the LLVM IR intrinsic. Provide a single base class containing parameterizable code to build LLVM IR intrinsics given their name and the lists of overloadable operands and results. Use this class to remove (almost) duplicate translations for intrinsics defined in LLVMOps.td. Differential Revision: https://reviews.llvm.org/D74889
-
Hans Wennborg authored
The previous patch (cff90f07) didn't cover ARM.
-
Stephan Herhut authored
Summary: The mapper assigns annotations to loop.parallel operations that are compatible with the loop to gpu mapping pass. The outermost loop uses the grid dimensions, followed by block dimensions. All remaining loops are mapped to sequential loops. Differential Revision: https://reviews.llvm.org/D74963
-
Georgii Rymar authored
It removes a stale comment and fixes the comment in the test and section names related accordingly.
-
Cullen Rhodes authored
Summary: Implements the following intrinsics: * llvm.aarch64.sve.convert.to.svbool * llvm.aarch64.sve.convert.from.svbool For converting the ACLE svbool_t type (<n x 16 x i1>) to and from the other predicate types: <n x 8 x i1>, <n x 4 x i1> and <n x 2 x i1>. Reviewers: sdesmalen, kmclaughlin, efriedma, dancgr, rengolin Reviewed By: sdesmalen, efriedma Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D74471 -
Kristóf Umann authored
[analyzer][MallocChecker][NFC] Communicate the allocation family to auxiliary functions with parameters The following series of refactoring patches aim to fix the horrible mess that MallocChecker.cpp is. I genuinely hate this file. It goes completely against how most of the checkers are implemented, its by far the biggest headache regarding checker dependencies, checker options, or anything you can imagine. On top of all that, its just bad code. Its seriously everything that you shouldn't do in C++, or any other language really. Bad variable/class names, in/out parameters... Apologies, rant over. So: there are a variety of memory manipulating function this checker models. One aspect of these functions is their AllocationFamily, which we use to distinguish between allocation kinds, like using free() on an object allocated by operator new. However, since we always know which function we're actually modeling, in fact we know it compile time, there is no need to use tricks to retrieve this information out of thin air n+1 function calls down the line. This patch changes many methods of MallocChecker to take a non-optional AllocationFamily template parameter (which also makes stack dumps a bit nicer!), and removes some no longer needed auxiliary functions. Differential Revision: https://reviews.llvm.org/D68162
-
Igor Kudrin authored
While the value of the CIE pointer field in a DWARF FDE record is an offset to the corresponding CIE record from the beginning of the section, for EH FDE records it is relative to the current offset. Previously, we did not make that distinction when dumped both kinds of FDE records and just printed the same value for the CIE pointer field and the CIE offset; that was acceptable for DWARF FDEs but was wrong for EH FDEs. This patch fixes the issue by explicitly printing the offset of the linked CIE object. Differential Revision: https://reviews.llvm.org/D74613
-
-
Calixte Denizet authored
Summary: Forget static keyword for gcov_mutex in https://reviews.llvm.org/D74953 and that causes test failure on mac. Reviewers: erik.pilkington, vsk Reviewed By: vsk Subscribers: vsk, dexonsmith, #sanitizers, llvm-commits Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D75080
-
Jay Foad authored
-