Fix bug in TRI::getCommonSuperRegClass().
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Mon, 7 May 2012 21:59:31 +0000 (21:59 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Mon, 7 May 2012 21:59:31 +0000 (21:59 +0000)
Test cases for this code are coming. It is not used for anything yet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156327 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/TargetRegisterInfo.cpp

index 532e6d231891b7367a94714aecdc10af1fd1c30f..4acbe729d74c9c38442cf5d00f4fa1890327d81e 100644 (file)
@@ -207,6 +207,7 @@ getCommonSuperRegClass(const TargetRegisterClass *RCA, unsigned SubA,
   unsigned *BestPreB = &PreB;
   if (RCA->getSize() < RCB->getSize()) {
     std::swap(RCA, RCB);
+    std::swap(SubA, SubB);
     std::swap(BestPreA, BestPreB);
   }