[ARM] Push gather/scatter shl index updates out of loops
authorDavid Green <david.green@arm.com>
Wed, 3 Nov 2021 11:00:05 +0000 (11:00 +0000)
committerDavid Green <david.green@arm.com>
Wed, 3 Nov 2021 11:00:05 +0000 (11:00 +0000)
commitd36dd1f842c1ce1e6d07575ff71957f40eecd725
treedb62c14157e3a3d92274d5c543fd02bee2afaea0
parent52615df0f2b2ea8e20f7b580269329142cb5789b
[ARM] Push gather/scatter shl index updates out of loops

This teaches the MVE gather scatter lowering pass that SHL is
essentially the same as Mul, where we are able to optimize the
induction of a gather/scatter address by pushing them out of loops.
https://alive2.llvm.org/ce/z/wG4VyT

Differential Revision: https://reviews.llvm.org/D112920
llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
llvm/test/CodeGen/Thumb2/mve-scatter-increment.ll