diff --git a/lib/Target/X86/SSEDomainFix.cpp b/lib/Target/X86/SSEDomainFix.cpp index fe4e35329c6..be17515184a 100644 --- a/lib/Target/X86/SSEDomainFix.cpp +++ b/lib/Target/X86/SSEDomainFix.cpp @@ -261,6 +261,8 @@ void SSEDomainFixPass::Collapse(DomainValue *dv, unsigned domain) { bool SSEDomainFixPass::Merge(DomainValue *A, DomainValue *B) { assert(!A->collapsed() && "Cannot merge into collapsed"); assert(!B->collapsed() && "Cannot merge from collapsed"); + if (A == B) + return true; if (!A->compat(B->Mask)) return false; A->Mask &= B->Mask;