[PATCH] D29004: New OptimizationRemarkEmitter pass for MIR
Adam Nemet via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Jan 22 21:51:38 PST 2017
anemet created this revision.
Herald added subscribers: fhahn, mgorny, qcolombet.
Herald added a reviewer: javed.absar.
This allows MIR passes to emit optimization remarks with the same level
of functionality that is available to IR passes.
It also hooks up the greedy register allocator to report spills. This
allows for things like interesting use cases like increasing
interleaving on a loop until spilling of registers is observed.
I still need to experiment whether reporting every spill scales but this
demonstrates for now that the functionality works from llc
using -pass-remarks*=<pass>.
https://reviews.llvm.org/D29004
Files:
include/llvm/Analysis/OptimizationDiagnosticInfo.h
include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h
include/llvm/IR/DiagnosticInfo.h
include/llvm/InitializePasses.h
lib/Analysis/OptimizationDiagnosticInfo.cpp
lib/CodeGen/CMakeLists.txt
lib/CodeGen/InlineSpiller.cpp
lib/CodeGen/MachineOptimizationRemarkEmitter.cpp
lib/CodeGen/RegAllocGreedy.cpp
lib/CodeGen/Spiller.h
lib/IR/DiagnosticInfo.cpp
test/CodeGen/AArch64/arm64-spill-remarks.ll
tools/llc/llc.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D29004.85321.patch
Type: text/x-patch
Size: 28068 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170123/8be6bf4b/attachment.bin>
More information about the llvm-commits
mailing list