LivePhysRegs: Fix addLiveOutsNoPristines() for return blocks past PEI
authorMatthias Braun <matze@braunis.de>
Thu, 25 May 2017 23:39:40 +0000 (23:39 +0000)
committerMatthias Braun <matze@braunis.de>
Thu, 25 May 2017 23:39:40 +0000 (23:39 +0000)
commite2133d5b42684dc29dc53dc56ea70d60a1f51fbc
tree19d5e5af94253684c3ec7e873ae3150bdc931481
parent9512dd5ffdd2d3f446065660d030303a669e8b58
LivePhysRegs: Fix addLiveOutsNoPristines() for return blocks past PEI

- addLiveOutsNoPristines() needs to add callee saved registers that are
  actually saved and restored somewhere to the set (they are not
  pristine).
- Cleanup/rewrite the code for addLiveOuts()/addLiveOutsNoPristines().

This fixes the problem from D32156.

Differential Revision: https://reviews.llvm.org/D32464

llvm-svn: 303938
llvm/lib/CodeGen/LivePhysRegs.cpp