[PATCH] D33003: Add callee-saved registers as implicit uses in return instructions

Matthias Braun via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 9 11:35:41 PDT 2017


MatzeB added a reviewer: qcolombet.
MatzeB added a comment.

I really like the direction of this as it would get rid of the "pristine registers" and the "how to calculate live-outs of a return block" special cases.

Some notes:

- This needs some compiletime checking to ensure the pristine registers were really just a premature optimization rather than something that fundamentally improves compiletime. Though in the interest of simplicity/maintainability I'd even accept smallish compiletime changes.
- I still have to dive into the patches details, at a first glance I am surprised this needs the new `getSavedRegisters()`/`getRestoredRegisters()` callbacks. Seems like there is some exception handling magic going on, why do we need to special case it?


Repository:
  rL LLVM

https://reviews.llvm.org/D33003





More information about the llvm-commits mailing list