[PATCH] D30431: [PowerPC] MachineSSA pass to reduce the number of CR-logical operations

Nemanja Ivanovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 27 14:48:45 PST 2017


nemanjai created this revision.
Herald added subscribers: mgorny, mehdi_amini.

This is an initial attempt at a pass that will traverse the machine code while still in SSA form and attempt various transformations aimed at reducing the number of CR-logical operations. The only support provided by the initial patch is for splitting basic blocks on binary CR-logical operations (i.e. branch early on operands). The hope however is that the provided infrastructure will allow for further transformations that can reduce the number of these operations.


Repository:
  rL LLVM

https://reviews.llvm.org/D30431

Files:
  lib/Target/PowerPC/CMakeLists.txt
  lib/Target/PowerPC/PPC.h
  lib/Target/PowerPC/PPCMachineBasicBlockUtils.h
  lib/Target/PowerPC/PPCReduceCRLogicals.cpp
  lib/Target/PowerPC/PPCTargetMachine.cpp
  test/CodeGen/PowerPC/no-pref-jumps.ll
  test/CodeGen/PowerPC/select-i1-vs-i1.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30431.89942.patch
Type: text/x-patch
Size: 54093 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170227/2214b03b/attachment.bin>


More information about the llvm-commits mailing list