[PATCH] D23366: [AArch64] Assign stack locations to increase load/store pairing.

Geoff Berry via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 17 12:11:57 PDT 2016


gberry added a comment.

Here are some relevant stat diffs from compiling the llvm test-suite:

     27 (+0.10 %) aarch64-ldst-opt - Number of load/store from unscaled generated     
   2276 (+2.18 %) aarch64-ldst-opt - Number of load/store pair instructions generated 
      8 (+1.74 %) aarch64-ldst-opt - Number of narrow zero stores promoted            
      5 (+0.02 %) branchfolding - Number of block tails merged                        
      2 (+0.00 %) branchfolding - Number of branches optimized                        
      5 (+0.01 %) branchfolding - Number of dead blocks removed                       
  -2297 (-0.08 %) mccodeemitter - Number of MC instructions emitted.                  
  -2928 (-0.02 %) pei - Number of bytes used for stack in all functions               

I'm still collecting compile time data.


================
Comment at: test/CodeGen/AArch64/stack-layout-pairing.ll:38
@@ +37,3 @@
+; Check that %x1/%y1 and %x1/%x2 get allocated to adjacent stack locations and
+; loaded using load pair instructions when optimizing for size.
+define void @test2(i32 %c) {
----------------
mcrosier wrote:
> I don't understand this comment about optimizing for size..
Fixed.  That was left over from a previous version of the change.


https://reviews.llvm.org/D23366





More information about the llvm-commits mailing list