[PATCH] D139877: [RISCV][InsertVSETVLI] Reverse traversal order of block in post pass [nfc]
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 13 11:04:35 PST 2022
reames added inline comments.
================
Comment at: llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp:1230
SmallVector<MachineInstr*> ToDelete;
- for (MachineInstr &MI : MBB) {
- // Note: Must be *before* vsetvli handling to account for config cases
- // which only change some subfields.
- doUnion(Used, getDemanded(MI));
+ for (MachineInstr &MI : iterator_range(MBB.rbegin(), MBB.rend())) {
----------------
craig.topper wrote:
> reames wrote:
> > nemanjai wrote:
> > > This causes failures with `-Werror`:
> > >
> > > ```
> > > RISCVInsertVSETVLI.cpp:1230:27: error: 'iterator_range' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported]
> > > for (MachineInstr &MI : iterator_range(MBB.rbegin(), MBB.rend())) {
> > > ^
> > > /home/nemanjai/llvm/Git/trunk1/llvm-project/llvm/include/llvm/ADT/iterator_range.h:30:7: note: add a deduction guide to suppress this warning
> > > class iterator_range {
> > > ^
> > > 1 error generated.
> > > ```
> > > Example: https://lab.llvm.org/buildbot/#/builders/36/builds/28344
> > I have no idea what that warning means. Forming an iterator range from two iterators is pretty much the canonical use case. I'm happy to adjust code to remove the warning, but I'll need a hint on how to do so.
> I think you want `make_range` instead of `iterator_range`?
I absolutely do. Wow, how did that even compile, much less pass all the unit tests? Eek.
Fix upcoming shortly.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D139877/new/
https://reviews.llvm.org/D139877
More information about the llvm-commits
mailing list