[llvm-commits] [llvm] r158204 - in /llvm/trunk: lib/Target/PowerPC/CMakeLists.txt lib/Target/PowerPC/PPC.h lib/Target/PowerPC/PPCBranchSelector.cpp lib/Target/PowerPC/PPCCTRLoops.cpp lib/Target/PowerPC/PPCInstr64Bit.td lib/Target/PowerPC/PPCInstrFormats.td lib/Target/PowerPC/PPCInstrInfo.cpp lib/Target/PowerPC/PPCInstrInfo.td lib/Target/PowerPC/PPCTargetMachine.cpp test/CodeGen/PowerPC/ctrloops.ll
clattner at apple.com
Fri Jun 8 12:55:30 CDT 2012
On Jun 8, 2012, at 8:38 AM, Hal Finkel wrote:
> Author: hfinkel
> Date: Fri Jun 8 10:38:21 2012
> New Revision: 158204
> URL: http://llvm.org/viewvc/llvm-project?rev=158204&view=rev
> Add the PPCCTRLoops pass: a PPC machine-code-level optimization pass to form CTR-based loop branching code.
> This pass is derived from the Hexagon HardwareLoops pass. The only significant enhancement over the Hexagon
> pass is that PPCCTRLoops will also attempt to delete the replaced add and compare operations if they are
> no longer otherwise used. Also, invalid preheader DebugLoc is not used.
Silly question, but how impossible would it be to abstract both of these out to a target-independent hardware loop formation pass, which would be parameterized by a new TargetHardwareLoopInfo class?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-commits