- Aug 20, 2020
-
-
Mehdi Amini authored
This reverts commit 264afb9e. (and dependent 6b742cc4 and fc53bd61) MLIR/Flang are broken.
-
Jessica Paquette authored
If we have a mask, and a value x, where (x & mask) == x, we can drop the AND and just use x. This is about a 0.4% geomean code size improvement on CTMark at -O3 for AArch64. In AArch64, this is most useful post-legalization. Patterns like this often show up when legalizing s1s, which must be extended to larger types. e.g. ``` %cmp:_(s32) = G_ICMP ... %and:_(s32) = G_AND %cmp, 1 ``` Since G_ICMP only produces a single bit, there's no reason to mask it with the G_AND. Differential Revision: https://reviews.llvm.org/D85463
-
Jon Chesterfield authored
[Clang] Fix BZ47169, loader_uninitialized on incomplete types Reported by @erichkeane. Fix proposed by @erichkeane works, tests included. Bug introduced in D74361. Crash was on querying a CXXRecordDecl for hasTrivialDefaultConstructor on an incomplete type. Fixed by calling RequireCompleteType in the right place. Reviewed By: erichkeane Differential Revision: https://reviews.llvm.org/D85990
-
Caroline Concatto authored
If a folder's name, where the test fortran.f95 is running, has cc1 the test fails because of CHECK-ASM-NOT: cc1. The solution used in this patch is to add quotation mark around cc1 and cc1as because the driver returns these flags with quotation marks ("") Reviewed By: DavidTruby, echristo Differential Revision: https://reviews.llvm.org/D86132 -
Alex Zinenko authored
Provide C API for MLIR standard attributes. Since standard attributes live under lib/IR in core MLIR, place the C APIs in the IR library as well (standard ops will go in a separate library). Affine map and integer set attributes are only exposed as placeholder types with IsA support due to the lack of C APIs for the corresponding types. Integer and floating point attribute APIs expecting APInt and APFloat are not exposed pending decision on how to support APInt and APFloat. Reviewed By: stellaraccident Differential Revision: https://reviews.llvm.org/D86143
-
Alex Zinenko authored
The original patch (264afb9e) did not update subprojects.
-
Jonas Devlieghere authored
Instead of a new method for each variable any subclass might want to set, have a method getExtraMakeArgs that each subclass can use to return whatever extra Make arguments it wants. As per Pavel's suggestion in D85539.
-
Jonas Devlieghere authored
The method was missing the optional argument `testname`.
-
Hamilton Tobon Mosquera authored
[OpenMPOpt][HideMemTransfersLatency] Moving the 'wait' counterpart of __tgt_target_data_begin_mapper canBeMovedDownwards checks if the "wait" counterpart of __tgt_target_data_begin_mapper can be moved downwards, returning a pointer to the instruction that might require/modify the data transferred, and returning null it the movement is not possible or not worth it. The function splitTargetDataBeginRTC receives that returned instruction and instead of moving the "wait" it creates it at that point. Differential Revision: https://reviews.llvm.org/D86155
-
Jonas Devlieghere authored
Update the code for D86120 which made the constructors of `ElementCount` private. Apparently I missed another instance in the macro just below.
-
Florian Hahn authored
Suggested post-commit by @dblaikie, thanks!
-
Jonas Devlieghere authored
Update the code for D86120 which made the constructors of `ElementCount` private.
-
Francesco Petrogalli authored
Differential Revision: https://reviews.llvm.org/D86120
-
Stella Laurenzo authored
* The binding for Type is trivial and should be non-controversial. * The way that I define the IntegerType should serve as a pattern for what I want to do next. * I propose defining the rest of the standard types in this fashion and then generalizing for dialect types as necessary. * Essentially, creating/accessing a concrete Type (vs interacting with the string form) is done by "casting" to the concrete type (i.e. IntegerType can be constructed with a Type and will throw if the cast is illegal). * This deviates from some of our previous discussions about global objects but I think produces a usable API and we should go this way. Differential Revision: https://reviews.llvm.org/D86179
-
Sanjay Patel authored
They may conflict with update_test_checks.py regexes.
-
Jonas Devlieghere authored
-
Sanjay Patel authored
-
- Aug 19, 2020
-
-
Jonas Devlieghere authored
Rather than have different modules for different platforms, use inheritance so we can have a Builer base class and optional child classes that override platform specific methods. Differential revision: https://reviews.llvm.org/D86174
-
Jakub Lichman authored
If Memref has rank > 1 this pass emits N-1 loops around TransferRead op and transforms the op itself to 1D read. Since vectors must have static shape while memrefs don't the pass emits if condition to prevent out of bounds accesses in case some memref dimension is smaller than the corresponding dimension of targeted vector. This logic is fine but authors forgot to apply `permutation_map` on loops upper bounds and thus if condition compares induction variable to incorrect loop upper bound (dimension of the memref) in case `permutation_map` is not identity map. This commit aims to fix that.
-
Jon Chesterfield authored
-
Matt Arsenault authored
-
madhur13490 authored
Reviewed By: t-tye, arsenm Differential Revision: https://reviews.llvm.org/D86206
-
Matt Arsenault authored
-
Benjamin Kramer authored
-
Roman Lebedev authored
And as being reported by Florian Hahn, there's a hit in MultiSource/Benchmarks/mafft from the test-suite on X86 with -O3 -flto, so reverting until addressed. This reverts commit 71e0b82c.
-
Simon Pilgrim authored
-
Simon Pilgrim authored
Replace isBuildVectorAllZeros check by using the Zeroable bitmask instead.
-
Simon Pilgrim authored
-
Aaron Puchert authored
-
Xing GUO authored
It's good to reuse the DWARF parser in lib/DebugInfo so that we don't need to maintain a separate parser in client side (obj2yaml). Besides, A test case is added whose length field is a very huge value which makes obj2yaml stuck when parsing the section. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D86192
-
Pavel Labath authored
Address some post-commit feedback on D85968.
-
Pavel Labath authored
TypeSystemClang::CreateTypedef was creating a typedef in the right DeclContext, but it was not actually adding it as a child of the context. The resulting inconsistent state meant that we would be unable to reference the typedef from an expression directly, but we could use them if they end up being pulled in by some previous subexpression (because the ASTImporter will set up the correct links in the expression ast). This patch adds the typedef to the decl context it is created in. Differential Revision: https://reviews.llvm.org/D86140
-
Simon Pilgrim authored
canonicalizeShuffleMaskWithCommute should have already ensured the lower elements are from V1, we do have test coverage for this already.
-
Simon Pilgrim authored
Thanks to @fhahn for the test case.
-
Sanjay Patel authored
I missed updating these with: rG23bd33c6
-
Roman Lebedev authored
It's been a month since 2f3862eb, and no new bug reports about the threshold were filled, so let's bump it again and wait again.
-
Raphael Isemann authored
-
David Green authored
-
Muhammad Omair Javaid authored
This adds a minor test case fix to previously submitted AArch64 SVE ptrace support. This was failing on LLDB/AArch64 Linux buildbot. Differential Revision: https://reviews.llvm.org/D79699
-
Simon Pilgrim authored
[X86][AVX] computeKnownBitsForTargetNode - add VTRUNC/VTRUNCS/VTRUNCUS known zero upper elements handling. Like many of the AVX512 conversion ops, the VTRUNC ops guarantee the upper destination elements are zero.
-