[PATCH] D15473: RegisterPressure: Expose RegisterOperands API

Matthias Braun via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 11 18:51:12 PST 2015


MatzeB created this revision.
MatzeB added a reviewer: atrick.
MatzeB added a subscriber: llvm-commits.
MatzeB set the repository for this revision to rL LLVM.

Previously the RegisterOperands have only been used internally in
RegisterPressure.cpp. However this datastructure can be useful for other
tasks as well and allows refactoring of PDiff initialisation out of
RPTracker::recede().

This patch:
- Exposes RegisterOperands as public API
- Splits RPTracker::recede() into a part that skips DebugValues and
  maintains the region borders, and the core that changes register
  pressure when given a set of RegisterOperands.
- This allows to move the PDiff initialisation out recede() into a
  method of the PressureDiffs class.
- The upcoming subregister scheduling code will also use
  RegisterOperands to avoid pushing more unrelated functionality into
  recede()/advance().

Repository:
  rL LLVM

http://reviews.llvm.org/D15473

Files:
  include/llvm/CodeGen/RegisterPressure.h
  lib/CodeGen/RegisterPressure.cpp
  lib/CodeGen/ScheduleDAGInstrs.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D15473.42617.patch
Type: text/x-patch
Size: 8798 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151212/ad7280c1/attachment.bin>


More information about the llvm-commits mailing list