[PATCH] D15652: [AArch64] Enable PostRAScheduler for AArch64 generic build (take 2)

Chad Rosier via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 18 13:26:05 PST 2015


mcrosier created this revision.
mcrosier added reviewers: aadg, jmolloy, t.p.northover, MinSeongKIM.
mcrosier added subscribers: llvm-commits, rengolin.
mcrosier set the repository for this revision to rL LLVM.
Herald added a subscriber: aemerson.

This patch enables PostRAScheduler specifically for AArch64 generic build, which is beneficial from the performance perspective.
Speedups up to 2 to 7% for some benchmarks on A57 and A53 are observed.  Also benchmarks from LLVM test-suite did not regress.

Original patch here: http://reviews.llvm.org/D15557

This was committed in r255896 and later reverted due to numerous lit test failures.

In this patch I've disabled the post-ra scheduler for all tests that were broken.  Before committing my plan is to step through each test to determine if the ordering of instructions matters.  If not, then I'm thinking we should leave the post-ra scheduler disabled in order to preserve the history of the test case.  If the order of instructions matters then I'll updated the test accordingly.  I suspect in most instances we'll just disable the post-ra scheduler.

 Chad

Repository:
  rL LLVM

http://reviews.llvm.org/D15652

Files:
  lib/Target/AArch64/AArch64Subtarget.h
  test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll
  test/CodeGen/AArch64/alloca.ll
  test/CodeGen/AArch64/arm64-aapcs.ll
  test/CodeGen/AArch64/arm64-hello.ll
  test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
  test/CodeGen/AArch64/arm64-inline-asm.ll
  test/CodeGen/AArch64/arm64-large-frame.ll
  test/CodeGen/AArch64/arm64-shrink-wrapping.ll
  test/CodeGen/AArch64/arm64-trunc-store.ll
  test/CodeGen/AArch64/arm64-variadic-aapcs.ll
  test/CodeGen/AArch64/arm64-xaluo.ll
  test/CodeGen/AArch64/atomic-ops.ll
  test/CodeGen/AArch64/bitcast-v2i8.ll
  test/CodeGen/AArch64/dag-combine-select.ll
  test/CodeGen/AArch64/f16-instructions.ll
  test/CodeGen/AArch64/func-argpassing.ll
  test/CodeGen/AArch64/global-merge-3.ll
  test/CodeGen/AArch64/nest-register.ll
  test/CodeGen/AArch64/nontemporal.ll
  test/CodeGen/AArch64/tailcall-explicit-sret.ll
  test/CodeGen/AArch64/vector-fcopysign.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D15652.43260.patch
Type: text/x-patch
Size: 13230 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151218/0cc8cb33/attachment.bin>


More information about the llvm-commits mailing list