[PATCH] D135957: [AArch64][SeperateConstOffsetFromGEP] Prevent pass from splitting GEP if an index has more than one use

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 17 00:43:53 PDT 2022


dmgreen added a comment.

Hmm. I somewhat regret turning this option on, as I've seen other issues elsewhere too. It seems like it is still a decent improvement in all the testing I've done though.

There is a RISCV test that is failing.

Can you explain more why this is the correct fix? Why is it limited to 2 operand geps? Do you have benchmark results for changing it?



================
Comment at: llvm/test/CodeGen/AArch64/aarch64-loop-gep-opt.ll:60
+
+  %tmp1 = load i64, i64* null, align 8
+  %tmp22 = add nsw i64 %tmp1, -1
----------------
Should this be loading from nullptr?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D135957



More information about the llvm-commits mailing list