[PATCH] D34144: [CodeGen] Add generic MacroFusion pass.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 15 05:43:09 PDT 2017


fhahn updated this revision to Diff 102659.
fhahn marked 5 inline comments as done.
fhahn added a comment.

@MatzeB thank you very much for having a look. I've updated the patch and hope that addresses your comments adequately:

- I've added two boolean member variables FuseBlock and FuseExit .

- I've simplified `MacroFusion::scheduleAdjacentImpl` to only look at predecessors. I think that shouldn't make a difference as the same pairs should be found, just the order they are discovered may be different. @evandro was there a reason why the successors were considered for SUs in a block?

- shouldScheduleAdjacent now only supports specifying both instructions or the second instruction, I had to update the AArch64 implementation to always check the second opcode first, but it was just the order that changed.


https://reviews.llvm.org/D34144

Files:
  include/llvm/CodeGen/MacroFusion.h
  lib/CodeGen/CMakeLists.txt
  lib/CodeGen/MacroFusion.cpp
  lib/Target/AArch64/AArch64MacroFusion.cpp
  lib/Target/X86/X86MacroFusion.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D34144.102659.patch
Type: text/x-patch
Size: 20718 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170615/2dedb9db/attachment.bin>


More information about the llvm-commits mailing list