]> granicus.if.org Git - llvm/commit
[SystemZ] Fix fall-out from r314428
authorUlrich Weigand <ulrich.weigand@de.ibm.com>
Thu, 28 Sep 2017 22:08:25 +0000 (22:08 +0000)
committerUlrich Weigand <ulrich.weigand@de.ibm.com>
Thu, 28 Sep 2017 22:08:25 +0000 (22:08 +0000)
commita4828c8a028045a0c4429f8b551d9b404969cf18
tree5e12ed51e8909ebe2924dd93965348596a81aef3
parent61087147981489dcb272d1ae469e472b2c66ce18
[SystemZ] Fix fall-out from r314428

The expensive-checks build bot found a problem with the r314428 commit:
if CC is live after a ATOMIC_CMP_SWAPW instruction, it needs to be
marked as live-in to the block after the loop the pseudo gets expanded
to.  This actually fixes a code-gen bug as well, since if the CC isn't
live, the CR and JLH are merged to a CRJLH which doesn't actually set
the condition code any more.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@314465 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/SystemZ/SystemZISelLowering.cpp
test/CodeGen/SystemZ/cmpxchg-01.ll
test/CodeGen/SystemZ/cmpxchg-02.ll