diff --git a/lib/Target/TargetRegisterInfo.cpp b/lib/Target/TargetRegisterInfo.cpp index 532e6d23189..4acbe729d74 100644 --- a/lib/Target/TargetRegisterInfo.cpp +++ b/lib/Target/TargetRegisterInfo.cpp @@ -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); }