- Apr 15, 2020
-
-
River Riddle authored
This class implements a switch-like dispatch statement for a value of 'T' using dyn_cast functionality. Each `Case<T>` takes a callable to be invoked if the root value isa<T>, the callable is invoked with the result of dyn_cast<T>() as a parameter. Differential Revision: https://reviews.llvm.org/D78070
-
River Riddle authored
These have proved incredibly useful for interleaving values between a range w.r.t to streams. After this revision, the mlir/Support/STLExtras.h is empty. A followup revision will remove it from the tree. Differential Revision: https://reviews.llvm.org/D78067
-
River Riddle authored
This revision moves the various range utilities present in MLIR to LLVM to enable greater reuse. This revision moves the following utilities: * indexed_accessor_* This is set of utility iterator/range base classes that allow for building a range class where the iterators are represented by an object+index pair. * make_second_range Given a range of pairs, returns a range iterating over the `second` elements. * hasSingleElement Returns if the given range has 1 element. size() == 1 checks end up being very common, but size() is not always O(1) (e.g., ilist). This method provides O(1) checks for those cases. Differential Revision: https://reviews.llvm.org/D78064
-
River Riddle authored
This revision moves several type_trait utilities from MLIR into LLVM. Namely, this revision adds: is_detected - This matches the experimental std::is_detected is_invocable - This matches the c++17 std::is_invocable function_traits - A utility traits class for getting the argument and result types of a callable type Differential Revision: https://reviews.llvm.org/D78059
-
River Riddle authored
This revision adds a DenseMapInfo overload for std::tuples whose elements all have a DenseMapInfo. The implementation is similar to that of std::pair, and has been used within MLIR for over a year. Differential Revision: https://reviews.llvm.org/D78057
-
Sean Silva authored
Summary: Also, - add IndexTensor to OpBase.td - fix typo in the op name. It was mistakenly `to_tensor` instead of `to_extent_tensor`. Differential Revision: https://reviews.llvm.org/D78149
-
Eli Friedman authored
This should make both static and dynamic NewPM plugins work with LTO. And as a bonus, it makes static linking of OldPM plugins more reliable for plugins with both an OldPM and NewPM interface. I only implemented the command-line flag to specify NewPM plugins in llvm-lto2, to show it works. Support can be added for other tools later. Differential Revision: https://reviews.llvm.org/D76866
-
Jonas Devlieghere authored
-
Mircea Trofin authored
Reviewers: dblaikie, davidxl, craig.topper Subscribers: arsenm, dschuff, nemanjai, jvesely, nhaehnle, sbc100, jgravelle-google, hiraditya, aheejin, kbarton, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78142
-
Jonas Devlieghere authored
Use a RAII object to manage the lifetime of the reproducer instrumentation data.
-
David Blaikie authored
Originally committed as 416fa772 Reverted (due to buildbot failure - breaking lldb) in 7a45aeac. I still can't seem to build lldb locally, but Pavel Labath has kindly provided a potential fix to preserve the old behavior in lldb by registering a simple recoverable error handler there that prints to the desired stream in lldb, rather than stderr.
-
MaheshRavishankar authored
The inversePermutation method returns a null map on failure. Update uses of this method within Linalg to handle this. In LinalgToLoops the null return value was used to emit scalar code. Modify that to return failure, and emit scalar implementation when affine map is "empty", i.e. 1 dims, 0 symbols and no result exprs. Differential Revision: https://reviews.llvm.org/D77964
-
George Burgess IV authored
Prompted by discussion on https://reviews.llvm.org/D78148.
-
Christopher Tetreault authored
Reviewers: efriedma, sdesmalen, spatel, eugenis, chandlerc Reviewed By: efriedma Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77896
-
Juneyoung Lee authored
Summary: This PR adds `canCreatePoison(Instruction *I)` which returns true if `I` can generate poison from non-poison operands. Reviewers: spatel, nikic, lebedev.ri Reviewed By: spatel Subscribers: hiraditya, llvm-commits, regehr, nlopes Tags: #llvm Differential Revision: https://reviews.llvm.org/D77890
-
Thomas Lively authored
Summary: wasm-ld requires --shared-memory to be passed when the atomics feature is enabled because historically atomic operations were only valid with shared memories. This change relaxes that requirement for when building relocatable objects because their memories are not meaningful. This technically maintains the validity of object files because the threads spec now allows atomic operations with unshared memories, although we don't support that elsewhere in the tools yet. This fixes and Emscripten build issue reported at https://bugs.chromium.org/p/webp/issues/detail?id=463. Reviewers: sbc100 Subscribers: dschuff, jgravelle-google, aheejin, sunfish, jfb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78072
-
Christopher Tetreault authored
Reviewers: efriedma, sdesmalen, RKSimon, majnemer Reviewed By: majnemer Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77897
-
Joerg Sonnenberger authored
They end up as .init_array sections and those need to be writable, otherwise bad merging will happen.
-
Sjoerd Meijer authored
-
Christopher Tetreault authored
Reviewers: efriedma Reviewed By: efriedma Subscribers: tschuett, rkruppe, psnobl, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D77903
-
Sam Clegg authored
Fixes: https://bugs.llvm.org/show_bug.cgi?id=45362 Differential Revision: https://reviews.llvm.org/D77115
-
Louis Dionne authored
This is useful when replaying tests after the fact and the directories don't exist anymore.
-
Huihui Zhang authored
Summary: This patch fix the following issues in InstCombiner::visitGetElementPtrInst 1. Skip for scalable type if transformation requires fixed size number of vector element. 2. Skip for scalable type if transformation relies on compile-time known type alloc size. 3. Use VectorType::getElementCount when scalable property is used to construct new VectorType. 4. Use TypeSize::getKnownMinSize when minimal size of a scalable type is valid to determine GEP 'inbounds'. 5. Explicitly call TypeSize::getFixedSize to avoid implicit type conversion to uint64_t. Reviewers: sdesmalen, efriedma, spatel, ctetreau Reviewed By: efriedma Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78081 -
Walter Erquinigo authored
Summary: Removing the Test prefix from the file name and its usages. The standard is using only Test as a suffix. This was correctly pointed out in https://reviews.llvm.org/D77444. Reviewers: labath, clayborg Subscribers: mgorny, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D77878
-
MaheshRavishankar authored
Differential Revision: https://reviews.llvm.org/D78140
-
Louis Dionne authored
This can be useful when the CI jobs don't have internet access.
-
Sanjay Patel authored
This is the widen mask element sibling to D76844. shuf (bitcast X), undef, Mask --> bitcast X' http://volta.cs.utah.edu:8080/z/4dt3V8
-
Louis Dionne authored
With this patch, .verify.cpp tests explicitly require clang-verify, but no other test types require clang-verify out of the box. This will allow making several .fail.cpp tests that don't have any clang-verify markup to be just .compile.fail.cpp tests, which in turn should allow removing a long standing workaround that requires parsing tests to detect whether they have any clang-verify markup in them.
-
Thomas Raoux authored
This allows AntiDepBreaker to be used in target specific postRA scheduler. Differential Revision: https://reviews.llvm.org/D78047
-
Jon Roelofs authored
-
Bryan Chan authored
On systems with weak memory consistency, this patch fixes an intermittent crash in the reduction function called by __kmp_hyper_barrier_gather, which suffers from a race on a child thread's data. Reviewed-By: AndreyChurbanov Differential Revision: https://reviews.llvm.org/D77603
-
Kostya Kortchinsky authored
Summary: The function used to log on Android will cut the message past a certain amount of characters, which mostly materializes when dumping the size class map on OOM. This change splits the log message at newline boundaries. Reviewers: pcc, cferris, hctim, eugenis Subscribers: #sanitizers, llvm-commits Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D78018
-
Sourabh Singh Tomar authored
GCC emits this new form along with others forms(supported in llvm-dwardump) and since it's support was missing in llvm-dwarfdump, it was not able to correctly dump the content a debug_macro section for GCC generated binaries. This patch extends llvm-dwarfdump to support this form, now GCC generated debug_macro section can be correctly dumped using llvm-dwarfdump. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D78006
-
Vince Bridgers authored
Summary: This patch adds the EXPR_FIXEDPOINT_LITERAL AST code to serialize FixedPointLiterals. They were previously being serialized with the code for integer literals, which doesn't work properly. Reviewers: leonardchan, rjmccall Reviewed By: leonardchan, rjmccall Subscribers: vabridgers, JesperAntonsson, bjope, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D57226
-
Christopher Tetreault authored
Reviewers: efriedma, sdesmalen, kparzysz Reviewed By: kparzysz Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77899
-
Alina Sbirlea authored
Summary: The current non-const * operator shadows the const operator in iterator_adaptor_base. Reviewers: mehdi_amini, rriddle!, dblaikie, timshen Subscribers: dexonsmith, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, frgossen, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78073
-
Sanjay Patel authored
Similar to D76844, but this is casted from wider element type. See D77881.
-
Sanjay Patel authored
See discussion in D77868
-
Christopher Tetreault authored
Reviewers: efriedma Reviewed By: efriedma Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77904
-
Isuru Fernando authored
Summary: Previously the value of Python3_ROOT_DIR was set to the string "PYTHON_HOME" instead of the value of the variable named PYTHON_HOME. This commit fixes that as CMake expects a path as the value of Python3_ROOT_DIR Reviewers: #lldb, JDevlieghere, teemperor Reviewed By: #lldb, JDevlieghere, teemperor Subscribers: teemperor, JDevlieghere, mgorny, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D77842
-