[PATCH] D120104: [AArch64] Enable fuse-literals feature by default

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 21 13:42:18 PST 2022


dmgreen added a comment.

In D120104#3334954 <https://reviews.llvm.org/D120104#3334954>, @alexander-shaposhnikov wrote:

> @dmgreen - many thanks for looking at this, 
> I wanted to start this discussion and any feedback / suggestions will be greatly appreciated.  Regarding mov+movk and movk+movk  pairs - if I'm not mistaken GCC "fuses" them by default (https://github.com/gcc-mirror/gcc/blob/master/gcc/config/aarch64/aarch64-fusion-pairs.def), but to limit the scope of the change I'm open to splitting this feature and starting with one pair (e.g. ADRP+ADD) (another important example is ADRP + LDR, but it's not handled by this diff anyway). What do you think ?

Yeah that sounds like it might be best. I'm not sure if mov fusion is right right combination of useful/benign to be turned on for all cores, I have no real evidence against, but it looks simpler if we just target the adrp+add and adrp+ldr that the linker can optimize.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D120104



More information about the llvm-commits mailing list