[PATCH] D89415: [AArch64][GlobalISel] Introduce a new post-isel optimization pass

Amara Emerson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 16 10:14:55 PDT 2020


aemerson updated this revision to Diff 298659.
aemerson edited the summary of this revision.
aemerson added a comment.

Add a second optimization that to be done using the same walk through the block as the fcmp range one. This optimization finds dead imp-def nzcv defs and marks them as dead, so peephole optimizations can work. As a result, the addsub tests now show the better codegen. We're missing 2 test failure fixes on addsub_ext.ll before we can use the same check lines, but otherwise all other checks are now the same as SDAG.

These changes seem to result in around a 0.7% geomean perf improvement on SPECINT2006 w/ -O3.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D89415

Files:
  llvm/lib/Target/AArch64/AArch64.h
  llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
  llvm/lib/Target/AArch64/CMakeLists.txt
  llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
  llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
  llvm/test/CodeGen/AArch64/GlobalISel/postselectopt-dead-cc-defs-in-fcmp.mir
  llvm/test/CodeGen/AArch64/addsub-shifted.ll
  llvm/test/CodeGen/AArch64/addsub_ext.ll
  llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D89415.298659.patch
Type: text/x-patch
Size: 30920 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201016/4fafb8e8/attachment.bin>


More information about the llvm-commits mailing list