[PATCH] D18800: [MBP] Improve nop placement in MBP pass.
Chad Rosier via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 5 11:14:10 PDT 2016
mcrosier created this revision.
mcrosier added a reviewer: hfinkel.
mcrosier added subscribers: llvm-commits, kristof.beyls, chandlerc.
mcrosier set the repository for this revision to rL LLVM.
Herald added subscribers: dsanders, aemerson.
While toying with the preferred loop alignment for AArch64, I noticed the MBP pass had a bad habit of inserting nop instructions into the dynamic instruction stream when aligning blocks. This patch attempts to prevent nops from being added to the dynamic instruction stream by placing additional alignment directives on non-fall through basic blocks.
**This is a WIP and I don't plan on pursuing this patch further at this time.** However, I figured I would post the patch in case someone else would like to take this on.. AFAIK, PowerPC is the only target that would immediately benefit from this patch. However, if other targets start setting a preferred loop alignment this work becomes much more interesting.
Chad
Repository:
rL LLVM
http://reviews.llvm.org/D18800
Files:
include/llvm/Target/TargetInstrInfo.h
lib/CodeGen/MachineBlockPlacement.cpp
lib/Target/AArch64/AArch64InstrInfo.h
lib/Target/ARM/ARMBaseInstrInfo.h
lib/Target/MSP430/MSP430InstrInfo.h
lib/Target/Mips/MipsInstrInfo.h
lib/Target/PowerPC/PPCInstrInfo.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18800.52706.patch
Type: text/x-patch
Size: 9636 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160405/8a2279cd/attachment.bin>
More information about the llvm-commits
mailing list