[PATCH] D32563: Add LiveRangeShrink pass to shrink live range within BB.

Dehao Chen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 8 18:09:13 PDT 2017


danielcdh marked an inline comment as done.
danielcdh added a comment.

In https://reviews.llvm.org/D32563#747859, @atrick wrote:

> Can you collect spill code stats and benchmark scores from the test suite?
>  Can you get someone to run benchmarks on arm64 as well?


The patch did not change test-suite benchmark scores.

The patch reduced the total static spill number for the entire test suite from 110283 to 110232

Unfortunately we do not have arm64 machine to run the performance test. But based on its impact on x86, llvm testsuite does not seem to suffer from register pressure, thus it should have minimal perf impact.



================
Comment at: lib/CodeGen/LiveRangeShrink.cpp:162
+          // than one use.
+          if (DefMO || !MRI.hasOneNonDBGUse(MO.getReg())) {
+            Insert = nullptr;
----------------
atrick wrote:
> Why do you care how many instructions are using the register being defined here?
Right, I should not. Removed the check.


https://reviews.llvm.org/D32563





More information about the llvm-commits mailing list