[PATCH] D47943: Sample code for porting MachinePipeliner to AArch64+SVE

Krzysztof Parzyszek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 12 15:12:59 PDT 2018


kparzysz added inline comments.


================
Comment at: lib/Target/AArch64/AArch64InstrInfo.cpp:5106
+unsigned
+AArch64InstrInfo::reduceLoopCount(MachineBasicBlock &MBB, MachineInstr *IndVar,
+                                  MachineInstr &Cmp,
----------------
masakiarai wrote:
> fhahn wrote:
> > Does this implementation satisfy the interface? According to TargetInstrInfo::reduceLoopCount, it should generate code to reduce the loop iteration by one.
> Hexagon uses special loop instructions to count down the loop counter.
> On the other hand, in most cases on AArch64 or x86_64, we will target loops that count up the loop counter.
> Therefore, I think that it is appropriate to make the function name `TargetInstrInfo::fixLoopCount' rather than `TargetInstrInfo::reduceLoopCount'.
> I thought it was inappropriate to rewrite code for Hexagon, so I did not change it.
> 
You can change the Hexagon code if it makes it easier to adopt the pipeliner for other architectures.


https://reviews.llvm.org/D47943





More information about the llvm-commits mailing list