Cross RC coalescing is now on by default.
authorEvan Cheng <evan.cheng@apple.com>
Tue, 21 Jul 2009 00:22:59 +0000 (00:22 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Tue, 21 Jul 2009 00:22:59 +0000 (00:22 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76519 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SimpleRegisterCoalescing.cpp
test/CodeGen/X86/subclass-coalesce.ll

index daf7d4d5824c79517bd24e4195c8290547c49a6a..12001d08b042d6d6de5a6e92387b346ba99643a6 100644 (file)
@@ -57,9 +57,9 @@ NewHeuristic("new-coalescer-heuristic",
              cl::init(false), cl::Hidden);
 
 static cl::opt<bool>
-CrossClassJoin("join-cross-class-copies",
-               cl::desc("Coalesce cross register class copies"),
-               cl::init(true), cl::Hidden);
+DisableCrossClassJoin("disable-cross-class-join",
+               cl::desc("Avoid coalescing cross register class copies"),
+               cl::init(false), cl::Hidden);
 
 static cl::opt<bool>
 PhysJoinTweak("tweak-phys-join-heuristics",
@@ -1401,7 +1401,7 @@ bool SimpleRegisterCoalescing::JoinCopy(CopyRec &TheCopy, bool &Again) {
       }
     }
   } else if (differingRegisterClasses(SrcReg, DstReg)) {
-    if (!CrossClassJoin)
+    if (DisableCrossClassJoin)
       return false;
     CrossRC = true;
 
index a010f1b29f1dcb74bac66e4ffc54bf7771742258..2673be7dab581ac2ce86db787518bed1ceef9461 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | llc -march=x86 -join-cross-class-copies -stats |& grep {Number of cross class joins performed}
+; RUN: llvm-as < %s | llc -march=x86 -stats |& grep {Number of cross class joins performed}
 
 @mem.6 = external global i64           ; <i64*> [#uses=1]