[PATCH] D110561: [AArch64] Alter arith-cbz-fusion to fuse between pairs register instructions

Matthias Braun via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 7 10:09:45 PDT 2021


MatzeB added a comment.

I looked at this a bit more and I am now suspicious about https://github.com/llvm/llvm-project/blob/aec66f895bf516564346a4366d5e06139b8370ed/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp#L213 using `-1` instead of the actual operand index resulting in an artificial dependency. So far that seems wrong to me and fixing that means we can also switch macrofusion to only look at `Dep.getKind() == SDep::Data` edges and the X86 fusion tests still work properly.

As usual changing things like that produces a bunch of noise in other tests the changes in X86 look benign but I didn't go through all the other backends...


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110561/new/

https://reviews.llvm.org/D110561



More information about the llvm-commits mailing list