[PATCH] D92089: [PowerPC] Materialize i64 constants by enumerated patterns.

EsmeYi via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 8 21:36:29 PST 2020


Esme added a comment.

In D92089#2441712 <https://reviews.llvm.org/D92089#2441712>, @steven.zhang wrote:

> I see most of the benefit is from llvm/test/CodeGen/PowerPC/constants-i64.ll. Does the benefit come from the same pattern or several ? And you'd better visit all the f64 and compare the new algorithm with old to make sure that, there is no deg.

Thanks for reviews! The benefit come from several patterns and I compared the results by sampling traversal to make sure there is no deg. Since visiting all the i64 is very time consuming, I took 2^12/2^16/2^17 unique numbers for each interval (i.g. take 2^17 unique numbers from 2^62 ~ 2^63).



================
Comment at: llvm/test/CodeGen/PowerPC/arr-fp-arg-no-copy.ll:15
+; CHECK-DAG: rldic 3, [[REG1]], 52, 2
+; CHECK-DAG: rldic 4, [[REG2]], 62, 1
 ; CHECK: bl xxx
----------------
jsji wrote:
> steven.zhang wrote:
> > Some follow up to fix the missing instr aliasing for rldic -> sldi ?
> See https://reviews.llvm.org/D81819
> See https://reviews.llvm.org/D81819

Thanks! I have commandeered this patch to myself, I will follow it up ASAP.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D92089



More information about the llvm-commits mailing list