commit | 2f6036058529a862f1800b99e0b03f7506d4eb53 | [log] [tgz] |
---|---|---|
author | Jim Grosbach <grosbach@apple.com> | Thu Sep 02 17:12:55 2010 +0000 |
committer | Jim Grosbach <grosbach@apple.com> | Thu Sep 02 17:12:55 2010 +0000 |
tree | f6f6605e8f4c3c79ee12c2b3089fdadfa6173249 | |
parent | 17e9a62a01856bfe87c5cadacdf03b9d51397b56 [diff] [blame] |
Anti-dependency breaking needs to be careful not to use reserved regs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112832 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/AggressiveAntiDepBreaker.cpp b/lib/CodeGen/AggressiveAntiDepBreaker.cpp index 62e40e9..5a634d6 100644 --- a/lib/CodeGen/AggressiveAntiDepBreaker.cpp +++ b/lib/CodeGen/AggressiveAntiDepBreaker.cpp
@@ -654,6 +654,8 @@ if (R == RB) R = RE; --R; const unsigned NewSuperReg = *R; + // Don't consider non-allocatable registers + if (!AllocatableSet.test(NewSuperReg)) continue; // Don't replace a register with itself. if (NewSuperReg == SuperReg) continue;