- Oct 22, 2022
-
-
River Riddle authored
This enables find/replace of nested components for location attributes. Differential Revision: https://reviews.llvm.org/D136408
-
River Riddle authored
This greatly simplifies composing enums in attribute/type printers, which currently reimplement these functions as needed. Differential Revision: https://reviews.llvm.org/D136407
-
Chia-hung Duan authored
This reverts commit 1cf1b361. Reviewed By: cferris Differential Revision: https://reviews.llvm.org/D136027
-
wren romano authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D136506
-
Jeff Niu authored
SubElementInterfaces forbids all mutable types and attributes from implementing `replaceImmediateSubElements`. However, this prohibits literal structs, which are immutable, from implementing that function. This patch defers the decision on whether to support `replaceImmediateSubElements` to the individual types/attributes. Depends on D136505 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136507
-
Jeff Niu authored
This keeps the current parser, however, since the mnemonic `vec` is overloaded for both of these types. Depends on D136499 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136505
-
Jeff Niu authored
This method was assearting on opaque pointers because the element is null. Depends on D136498 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136499
-
Jeff Niu authored
Depends on D136485 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136498
-
Jeff Niu authored
Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136485
-
Murali Vijayaraghavan authored
Fixed CMakeLists.txt to export mlir/include/mlir/Dialenct/SparseTensor/IR/Enums.h correctly for installing MLIRSparseTensorEnums as a library in other projects using MLIR Differential Revision: https://reviews.llvm.org/D136477
-
Peiming Liu authored
scf.for used to only support 1:1 type conversion, this patch add support for 1:N type conversion. Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D136314
-
Arthur Eubanks authored
This doesn't touch objc-arc-contract because that's in the codegen pipeline. However, this does move its corresponding initialize function into initializeCodegen(). Reviewed By: asbirlea Differential Revision: https://reviews.llvm.org/D135041
-
Jeff Niu authored
-
Chia-hung Duan authored
This is not a pure revert of c929bcb7. It also includes a bug fix. Differential Revision: https://reviews.llvm.org/D136029
-
Jeff Niu authored
This moves the `LLVMArrayType` to a `TypeDef`. The main side-effect of this change is that the syntax `array<4xi32>` is no longer allowed. It was previously parsed and then printed as `array<4 x i32>`. Now the syntax must be the latter. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136473
-
rkayaith authored
This adds a '--no-implicit-module' option, which disables the insertion of a top-level 'builtin.module' during parsing. The translation APIs are also updated to take/return 'Operation*' instead of 'ModuleOp', to allow other operation types to be used. To simplify translations which are restricted to specific operation types, 'TranslateFromMLIRRegistration' has an overload which performs the necessary cast and error checking. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D134237
-
rkayaith authored
Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136480
-
Petr Hosek authored
This reverts commit 8d89dbce since this broke the compiler-rt build.
-
Peter Klausler authored
flang/test/Semantics/test_errors,py only compares actual error messages with expected error messages. Many tests have expected warning messages in them, but they are not checked. A forthcoming change adds several new warning and explanatory messages to the compiler, and these messages must be testable. So (re-?) enable non-error message checking in test_errors.py and adjust some existing tests to get them to pass. Warning messages related to host-specific folding conditions will not be emitted on all platforms, so they will continue to be ignored. Differential Revision: https://reviews.llvm.org/D136479
-
Siva Chandra Reddy authored
-
bixia1 authored
Also fix the rewrite rule for sparse_tensor.new to reflect the recent change of the runtime C interface and to use utilities for memref.alloca. Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D135891
-
Jeff Niu authored
Fixes shared lib build
-
Bjorn Pettersson authored
Another step towards getting rid of dependencies to the legacy pass manager. Primary change here is to just do -passes=foo instead of -foo in simple situations (when running a single pass). But also updated a few test running multiple passes.
-
Petr Hosek authored
All our users have migrated to ld64.lld so we no longer need libLTO. Differential Revision: https://reviews.llvm.org/D135471
-
rkayaith authored
The error stream isn't being propagated properly, causing some output to be sent to stderr even when a different stream is given. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D136414
-
Carlos Alberto Enciso authored
The test case 'checkFlexiblePatterns' caused a failure in: https://lab.llvm.org/buildbot/#/builders/85/builds/11590 SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior runtime error: applying zero offset to null pointer llvm/lib/Support/regengine.inc:151:18 The logical view is traversed and for each logical element a series of match criterias are applied. One of those criterias is to match its name or type name to a given pattern. If the logical element does not have a type (for instance a 'namespace') do not try to use its type name, which is a empty string as the 'matcher' function receives a null pointer. Reviewed By: probinson Differential Revision: https://reviews.llvm.org/D136444
-
Walter Erquinigo authored
That test was failing due to a wrong else statement. Now it passes.
-
Florian Hahn authored
-
Aart Bik authored
works both along runtime path and pure codegen path Reviewed By: Peiming Differential Revision: https://reviews.llvm.org/D136389
-
Chris Bieneman authored
As @python3kgae pointed out we're going to want to assign these IDs after optimization so that we can remove unused resrouces. This patch just removes the unused ID value from the frontend metadata, clang code generation, and updates associated test cases. Reviewed By: python3kgae Differential Revision: https://reviews.llvm.org/D136271
-
Zequan Wu authored
1. When we evaluating an expression multiple times and the searching scope is translation unit, ParseDeclsForContext iterates the type info and symbol info multiple times, though only the debug info is parsed once. Using llvm::call_once to make it only iterating and parsing once. 2. When evaluating an expression with identifier whose parent scope is a namespace, ParseDeclsForContext needs to search the entire type info to complete those records whose name is prefixed with the namespace's name and the entire symbol info to to parse functions and non-local variables. Caching parsed namespaces to avoid unnecessary searching. Reviewed By: labath Differential Revision: https://reviews.llvm.org/D136006
-
Sanjay Patel authored
When the common value is part of either select condition, this is safe to reduce. Otherwise, it is not poison-safe (with the select form of the pattern): https://alive2.llvm.org/ce/z/FxQTzB This is another patch motivated by issue #58313.
-
Zhixun Tan authored
Let MLIR ODS also support generating build() functions without result type parameters when the op contains regions. Regions were intentionally left unsupported: https://github.com/llvm/llvm-project/commit/398f04aa49109fd5d1eff2c1946a2956dc6b29c6 Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D136232
-
Jeff Niu authored
-
Jeff Niu authored
This patch adds a lowering pass to convert `index` dialect ops to LLVM. Depends on D135694 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D135697
-
Jeff Niu authored
This patch adds folders for `index` dialect ops. Ths folders are careful to ensure that fold results are valid on both 32-bit and 64-bit targets. Depends on D135689 Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D135694
-
Jeff Niu authored
This patch adds the definitions for the operations and attributes (just one enum attribute) for the `index` dialect. Depends on D135688 Reviewed By: rriddle, jpienaar Differential Revision: https://reviews.llvm.org/D135689
-
Jeff Niu authored
This patch introduces the `index` dialect and associated boilerplate for adding ops and enums (comparison predicates). Reviewed By: rriddle, jpienaar, nicolasvasilache Differential Revision: https://reviews.llvm.org/D135688
-
Fangrui Song authored
``` template <typename T> struct A { A() {} int value = 0; }; template <typename Value> struct B { static A<int> a; }; template <typename Value> A<int> B<Value>::a; inline int foo() { return B<int>::a.value; } ``` ``` clang++ -c -fno-pic a.cc -o weak.o g++ -c -fno-pic a.cc -o unique.o # --enable-gnu-unique-object # Duplicate symbol error. In postParse, we do not check `sym.binding` ld.lld -e 0 weak.o unique.o ``` Mixing GCC and Clang object files in this case is not ideal. .bss._ZGVN1BIiE1aE has different COMDAT groups. It appears to work in practice because the guard variable prevents harm due to double initialization. For the linker, we just stick with the rule that a weak binding does not cause "duplicate symbol" errors. Close https://github.com/llvm/llvm-project/issues/58232 Differential Revision: https://reviews.llvm.org/D136381 -
Wael Yehia authored
1) Use a static array of pointer to retain the dummy vars. 2) Associate liveness of the array with that of the runtime hook variable __llvm_profile_runtime. 3) Perform the runtime initialization through the runtime hook variable. 4) Preserve the runtime hook variable using the -u linker flag. Reviewed By: hubert.reinterpretcast Differential Revision: https://reviews.llvm.org/D136192
-