From c95be59371e0b9ed827076953fd7e1270e418ff8 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Tue, 21 Jul 2009 00:22:59 +0000 Subject: [PATCH] Cross RC coalescing is now on by default. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76519 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/SimpleRegisterCoalescing.cpp | 8 ++++---- test/CodeGen/X86/subclass-coalesce.ll | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/CodeGen/SimpleRegisterCoalescing.cpp b/lib/CodeGen/SimpleRegisterCoalescing.cpp index daf7d4d5824..12001d08b04 100644 --- a/lib/CodeGen/SimpleRegisterCoalescing.cpp +++ b/lib/CodeGen/SimpleRegisterCoalescing.cpp @@ -57,9 +57,9 @@ NewHeuristic("new-coalescer-heuristic", cl::init(false), cl::Hidden); static cl::opt -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 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; diff --git a/test/CodeGen/X86/subclass-coalesce.ll b/test/CodeGen/X86/subclass-coalesce.ll index a010f1b29f1..2673be7dab5 100644 --- a/test/CodeGen/X86/subclass-coalesce.ll +++ b/test/CodeGen/X86/subclass-coalesce.ll @@ -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 ; [#uses=1]