diff options
author | Craig Topper <craig.topper@gmail.com> | 2019-12-19 20:41:02 -0800 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2019-12-19 23:03:06 -0800 |
commit | 9b6fafa3990fb5963f0558d13d53abc461fb3f29 (patch) | |
tree | 7e10d3fdee5fcb84bdeaa1979832db5e3c9191a1 /llvm/lib/Target | |
parent | 07ac3145ccd5a43fe99e759afb6e8f1b08aca745 (diff) | |
download | bcm5719-llvm-9b6fafa3990fb5963f0558d13d53abc461fb3f29.tar.gz bcm5719-llvm-9b6fafa3990fb5963f0558d13d53abc461fb3f29.zip |
[X86] Directly call EmitTest in two places instead of creating a null constant and calling EmitCmp. NFCI
EmitCmp will just immediately call EmitTest and discard the null
constant only to have EmitTest create it again if it doesn't fold.
So just skip all that and go directly to EmitTest.
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index 63268bc3c01..677dcab499a 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -21858,8 +21858,7 @@ SDValue X86TargetLowering::LowerSELECT(SDValue Op, SelectionDAG &DAG) const { if (AddTest) { CC = DAG.getTargetConstant(X86::COND_NE, DL, MVT::i8); - Cond = EmitCmp(Cond, DAG.getConstant(0, DL, Cond.getValueType()), - X86::COND_NE, DL, DAG); + Cond = EmitTest(Cond, X86::COND_NE, DL, DAG, Subtarget); } // a < b ? -1 : 0 -> RES = ~setcc_carry @@ -22580,8 +22579,7 @@ SDValue X86TargetLowering::LowerBRCOND(SDValue Op, SelectionDAG &DAG) const { if (addTest) { X86::CondCode X86Cond = Inverted ? X86::COND_E : X86::COND_NE; CC = DAG.getTargetConstant(X86Cond, dl, MVT::i8); - Cond = EmitCmp(Cond, DAG.getConstant(0, dl, Cond.getValueType()), - X86Cond, dl, DAG); + Cond = EmitTest(Cond, X86Cond, dl, DAG, Subtarget); } Cond = ConvertCmpIfNecessary(Cond, DAG); return DAG.getNode(X86ISD::BRCOND, dl, Op.getValueType(), |