search for: d80916

Displaying 4 results from an estimated 4 matches for "d80916".

2020 Jul 15
3
[RFC] Pass return status
...t pass return status is correctly reported by passes, i.e. no pass return « IR not modified » while actually modifying it. It took ~20 pass fixes to achieve that goal, as many passes were not respectful of that contract, but as of 3667d87a33d3c8d4072a41fd84bb880c59347dc0, https://reviews.llvm .org/D80916 has been merged in master and the check is active, which should prevent further regression on that topic. Thanks a lot to @foad, @jdoerfert, @fhahn, @calixte (and others I'm sorry to forgot) for their help during the reviews. On Fri, Jun 12, 2020 at 11:24 PM Mehdi AMINI <joker.eph at gmai...
2020 Jun 11
4
[RFC] Pass return status
...Per the documentation[0], whenever an LLVM pass doesn't modify the IR it's run on, it should return `false`--it's okay to return `true` if no change happen, just less optimal. In the New PM area, this is generally translated into a `PreservedAnalyses::all()`. https://reviews.llvm.org/D80916 provides an `EXPENSIVE_CHECK` that computes a hash of the IR before and after the pass, and checks that any change is correctly reported. The hash is currently incomplete (on purpose, let's start small), but it turns out a dozen of passes do not satisfy that requirement. This could lead to var...
2020 Jul 16
2
[RFC] Pass return status
...orrectly reported by passes, i.e. no pass return « IR not modified » > while actually modifying it. > It took ~20 pass fixes to achieve that goal, as many passes were not > respectful of that contract, but as > of 3667d87a33d3c8d4072a41fd84bb880c59347dc0, https://reviews.llvm > .org/D80916 has been merged in master and the check is active, which > should prevent further regression on that topic. > > Thanks a lot to @foad, @jdoerfert, @fhahn, @calixte (and others I'm sorry > to forgot) for their help during the reviews. > > > This is great news! > > Some...
2020 Jun 24
7
[RFC] Compiled regression tests.
...uction that does not return a vector. Try that with FileCheck. PattenMatch.h from InstCombine can be used as well. Structural comparison with a reference output could also be possible (like clang-diff, [llvm-canon](http://llvm.org/devmtg/2019-10/talk-abstracts.html#tech12), https://reviews.llvm.org/D80916). Some additional tooling could be helpful: * A test file creator, taking some IR, wrapping it into the above structure, and write it into the test directory. * A tool for extracting and updating (running opt) the IR inside the #ifdef, if not even add this functionality to opt itself. This is t...