diff options
| author | Matthias Braun <matze@braunis.de> | 2017-05-26 16:23:08 +0000 |
|---|---|---|
| committer | Matthias Braun <matze@braunis.de> | 2017-05-26 16:23:08 +0000 |
| commit | eec1f3672a31d47e2b1082690b4ba4633258145f (patch) | |
| tree | 8081279dbda3106eaf7ee05ab136f5ed2b63b17b /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | |
| parent | 5c0d113fb99dce9f1036f3830a9daa5bd21350a5 (diff) | |
| download | llvm-eec1f3672a31d47e2b1082690b4ba4633258145f.zip llvm-eec1f3672a31d47e2b1082690b4ba4633258145f.tar.gz llvm-eec1f3672a31d47e2b1082690b4ba4633258145f.tar.bz2 | |
LivePhysRegs: Fix addLiveOutsNoPristines() for return blocks past PEI
Re-commit r303938 and r303954 with a fix for addLiveIns(): the internal
addPristines() function must be called on an empty set or it may
accidentally reset saved registers.
- 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: 304001
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions
