]> granicus.if.org Git - llvm/commitdiff
[CGP] Enable select in complex addr mode
authorSerguei Katkov <serguei.katkov@azul.com>
Wed, 13 Dec 2017 06:57:59 +0000 (06:57 +0000)
committerSerguei Katkov <serguei.katkov@azul.com>
Wed, 13 Dec 2017 06:57:59 +0000 (06:57 +0000)
Enable select instruction handling in complex addr modes.

Reviewers: john.brawn, reames, aaboud
Reviewed By: reames
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D40634

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

lib/CodeGen/CodeGenPrepare.cpp
test/CodeGen/X86/x86-cmov-converter.ll

index 1b01f84303669239fe9ed49094c072eaf0120bbd..18b3b4f28edd10900a9d987fd9b992982289ab9e 100644 (file)
@@ -196,7 +196,7 @@ AddrSinkNewPhis("addr-sink-new-phis", cl::Hidden, cl::init(false),
                 cl::desc("Allow creation of Phis in Address sinking."));
 
 static cl::opt<bool>
-AddrSinkNewSelects("addr-sink-new-select", cl::Hidden, cl::init(false),
+AddrSinkNewSelects("addr-sink-new-select", cl::Hidden, cl::init(true),
                    cl::desc("Allow creation of selects in Address sinking."));
 
 static cl::opt<bool> AddrSinkCombineBaseReg(
index 5fec1380e14bb6e3cfba01c4b88f55b4456948a2..62b491e2f3a6339ee6087aad48cf6895826e071c 100644 (file)
@@ -234,7 +234,7 @@ for.body:                                         ; preds = %for.body.preheader,
 }
 
 ; CHECK-LABEL: BinarySearch
-; CHECK: cmov
+; CHECK: set
 
 define i32 @BinarySearch(i32 %Mask, %struct.Node* nocapture readonly %Curr, %struct.Node* nocapture readonly %Next) #0 {
 entry: