- Jan 08, 2021
-
-
Alan Phipps authored
Refactor three tests to not depend on other test files as input but to instead refer to "Inputs" subdirectory.
-
Erich Keane authored
As shown by bug 48540, GCC vector types would cause a crash when the declaration hada ParenType. This was because the walking of the declaration would try to expand the 'inner' type, but there was no ability to get it from the vector type. This patch adds that element type access to the vector type loc objects. Differential Revision: https://reviews.llvm.org/D93483
-
Thomas Preud'homme authored
Remove continuation line in code snippet to prevent GCC warning about multiline comments (-Wcomment) when building a project using libclang with GCC. Reviewed By: rjmccall Differential Revision: https://reviews.llvm.org/D92409
-
Kazuaki Ishizaki authored
fix typo under include and lib directories Reviewed By: antiagainst Differential Revision: https://reviews.llvm.org/D94220
-
Jeroen Dobbelaere authored
When introducing support for @llvm.experimental.noalias.scope.decl, this tests started failing because it checks (for no good reason) for a function attribute id of '#8' which now becomes '#9' Reviewed By: pratlucas Differential Revision: https://reviews.llvm.org/D94233
-
Eric Schweitz authored
the conversion of LLVM IR dialect. These attributes are used in FIR to support the lowering of Fortran using target-specific calling conventions. Add roundtrip tests. Add changes per review comments/concerns. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D94052
-
Varun Gandhi authored
Incorrect usage of NDEBUG to guard ABI changes can prevent clients from enabling assertions for their C++ code while having assertions in LLVM turned off. So we use LLVM_ENABLE_ABI_BREAKING_CHECKS instead, as described in llvm/docs/ProgrammersManual.rst. Most types already use this macro, however, there were a couple of stragglers in ValueHandle.h, which are fixed by this revision. Reviewed By: dblaikie, dexonsmith Differential Revision: https://reviews.llvm.org/D93433
-
Mircea Trofin authored
This covers tests starting with s. Differential Revision: https://reviews.llvm.org/D94184
-
- Jan 07, 2021
-
-
Cameron McInally authored
Differential Revision: https://reviews.llvm.org/D94193
-
Bardia Mahjour authored
Adds some tests to check the formatting of the dot file produced when using -dot-ddg. Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D93949
-
Matt Arsenault authored
There are various hacks working around limitations in handleAssignments, and the logical split between different parts isn't correct. Start separating the type legalization to satisfy going through the DAG infrastructure from the code required to split into register types. The type splitting should be moved to generic code.
-
Bardia Mahjour authored
When creating pi-blocks we try to avoid creating duplicate edges between outside nodes and the pi-block when an edge is of the same kind and direction as another one that has already been created. We do this by keeping track of the edges in an enumerated array called EdgeAlreadyCreated. The problem is that this array is declared local to the loop that iterates over the nodes in the pi-block, so the information gets lost every time a new inside-node is iterated over. The fix is to move the declaration to the outer loop. Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D94094
-
Roman Lebedev authored
I have added it in d15d81ce because it *seemed* correct, was holding for all the tests so far, and was validating the fix added in the same commit, but as David Major is pointing out (with a reproducer), the assertion isn't really correct after all. So remove it. Note that the d15d81ce still fine.
-
Roman Lebedev authored
[llvm-reduce] ReduceGlobalVarInitializers delta pass: fix handling of globals w/ comdat/non-external linkage Much like with ReduceFunctionBodies delta pass, we need to remove comdat and set linkage to external, else verifier will complain, and our deltas are invalid.
-
Sidharth Baveja authored
Summary: Currently SplitEdge does not support passing in parameter which allows you to name the newly created BasicBlock. This patch updates the function such that the name of the block can be passed in, if users of this utility decide to do so. Reviewed By: Whitney, bmahjour, asbirlea, jamieschmeiser Differential Revision: https://reviews.llvm.org/D94176
-
Paul C. Anagnostopoulos authored
Differential Revision: https://reviews.llvm.org/D93969
-
Valentin Clement authored
Add semantic check for most of the restrictions for the declare directive. Reviewed By: kiranktp Differential Revision: https://reviews.llvm.org/D92741
-
Simon Pilgrim authored
[AArch64] SVEIntrinsicOpts - use range loop and cast<> instead of dyn_cast<> for dereferenced pointer. NFCI. Don't directly dereference a dyn_cast<> - use cast<> so we assert for the correct type. Also, simplify the for loop to a range loop. Fixes clang static analyzer warning.
-
Simon Pilgrim authored
As we're breaking from the loop when clamping MaxVF, clang static analyzer was warning that the VF iterator was being updated and never used.
-
Andrzej Warzynski authored
As per [1]: ``` File names should use dashes, not underscores. ``` This patch updates the names of Flang driver tests accordingly. [1] https://github.com/llvm/llvm-project/blob/main/flang/docs/C%2B%2Bstyle.md
-
Caroline Concatto authored
This patch fixes a bug introduced in the patch: https://reviews.llvm.org/D93030 This patch pulls the test for scalable vector to be the first instruction to be checked. This avoids the Gather and Scatter cost model for AArch64 to compute the number of vector elements for something that is not a vector and therefore crashing.
-
Jan Svoboda authored
This is necessary for a future patch, where we start using this macro in another function. Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D93702
-
Alex Zinenko authored
-
Jan Svoboda authored
This patch moves `parseSimpleArgs` closer to `ParseDiagnosticArgs` so that sharing the parsing macro between them can be done more locally in a future patch. Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D94172
-
Jan Svoboda authored
Before this patch, ParseDiagnosticArgs can be called with a nullptr DiagnosticsEngine *. This happens early on in the compilation process, where no proper DiagnosticEngine exists, because the diagnostic options (passed through command line) are not known yet. This patch ensures nullptr is replaced by an ignoring DiagnosticEngine in ParseDiagnosticArgs, which allows to switch from pointer to a reference in some utility functions. Besides simplifying the code, this patch enables a future patch (D84673) that ports diagnostic options to the new marshalling infrastructure. Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D93701
-
Ivan Butygin authored
Add fastmath enum, attributes to some llvm dialect ops, `FastmathFlagsInterface` op interface, and `translateModuleToLLVMIR` support. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D92485
-
Simon Pilgrim authored
-
Simon Pilgrim authored
Don't bother zeroing local (unused) variables just before returning. Fixes clang static analyzer warning.
-
Simon Pilgrim authored
-
Alexey Bataev authored
After merging the shuffles, we cannot rely on the previous shuffle anymore and need to shrink the final shuffle, if it is required. Reported in D92668 Differential Revision: https://reviews.llvm.org/D93967
-
Sam McCall authored
Currently some clients watch for CDB changes and restart clangd, now that we can reload compile_commands.json ourselves this is counterproductive. The capability allows this behavior to be phased out. This is going to be a mild regression, as we do not actually watch for files on disk and so new diagnostics need to wait until a rebuild is requested e.g. due to file change (and the internal caches have expired). However this is still a better tradeoff (and if it's important, we can request the client to watch files for us in the future). Differential Revision: https://reviews.llvm.org/D94222
-
Alex Zinenko authored
The original implementation of the OpenMP dialect to LLVM IR translation has been relying on a stack of insertion points for delayed insertion of branch instructions that correspond to terminator ops. This is an intrusive into ModuleTranslation and makes the translation non-local. A recent addition of the WsLoop translation exercised another approach where the parent op is responsible for converting terminators of all blocks in its regions. Use this approach for other OpenMP dialect operations with regions, remove the stack and deduplicate the code for converting such regions. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D94086
-
Marek Kurdej authored
* The only exception is that the flag -std=c++2a is still used not to break compatibility with older compilers (clang <= 9, gcc <= 9). * Bump _LIBCPP_STD_VER for C++20 to 20 and use 21 for the future standard (C++2b). That's a preparation step to add c++2b support to libc++. Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D93383
-
Mikhail Maltsev authored
The nullptr_t_integral_cast.pass.cpp test is currently xfailed for C++03, but actually, it only fails with the first version of libc++ ABI. This patch changes XFAIL to UNSUPPORTED to avoid unexpected passes with ABI v2 or later. Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D93941
-
Simon Pilgrim authored
Attempt to simplify all/any-of style patterns that concatenate 2 smaller integers together into an and(x,y)/or(x,y) + icmp 0/-1 instead. This is mainly to help some bool predicate reduction patterns where we end up concatenating bool vectors that have been bitcasted to integers. Differential Revision: https://reviews.llvm.org/D93599
-
Jan Svoboda authored
Reviewed By: Bigcheese Differential Revision: https://reviews.llvm.org/D93700
-
Marek Kurdej authored
* Check created symlinks. Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D93520
-
Jan Svoboda authored
Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D93679
-
Andrzej Warzynski authored
This patch adds a frontend action for emitting object files. While Flang does not support code-generation, this action remains a placeholder. This patch simply provides glue-code to connect the compiler driver with the appropriate frontend action. The new action is triggered with the `-c` compiler driver flag, i.e. `flang-new -c`. This is then translated to `flang-new -fc1 -emit-obj`, so `-emit-obj` has to be marked as supported as well. As code-generation is not available yet, `flang-new -c` results in a driver error: ``` error: code-generation is not available yet ``` Hopefully this will help communicating the level of available functionality within Flang. The definition of `emit-obj` is updated so that it can be shared between Clang and Flang. As the original definition was enclosed within a Clang-specific TableGen `let` statement, it is extracted into a new `let` statement. That felt like the cleanest option. I also commented out `-triple` in Flang::ConstructJob and updated some comments there. This is similar to https://reviews.llvm.org/D93027. I wanted to make sure that it's clear that we can't support `-triple` until we have code-generation. However, once code-generation is available we _will need_ `-triple`. As this patch adds `-emit-obj`, the emit-obj.f90 becomes irrelevant and is deleted. Instead, phases.f90 is added to demonstrate that users can control compilation phases (indeed, `-c` is a phase control flag). Reviewed By: SouraVX, clementval Differential Revision: https://reviews.llvm.org/D93301
-
Jan Svoboda authored
Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D93698
-