The predicated MVE intrinsics are generated as, for example, llvm.arm.mve.add.predicated(x, splat(y). p). We need to sink the splat value into the loop, like we do for other instructions.
Details
Details
Diff Detail
Diff Detail
Paths
| Differential D87693
[ARM] Sink splats to MVE intrinsics ClosedPublic Authored by dmgreen on Sep 15 2020, 7:37 AM.
Details Summary The predicated MVE intrinsics are generated as, for example, llvm.arm.mve.add.predicated(x, splat(y). p). We need to sink the splat value into the loop, like we do for other instructions.
Diff Detail Event TimelineThis revision is now accepted and ready to land.Sep 17 2020, 1:26 AM Closed by commit rG34b27b9441d2: [ARM] Sink splats to MVE intrinsics (authored by dmgreen). · Explain WhySep 17 2020, 8:01 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 291908 llvm/lib/Target/ARM/ARMISelLowering.cpp
llvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-operand.ll
llvm/test/CodeGen/Thumb2/mve-postinc-lsr.ll
llvm/test/CodeGen/Thumb2/mve-qrintr.ll
|