diff options
author | Amaury Sechet <deadalnix@gmail.com> | 2018-06-03 12:56:24 +0000 |
---|---|---|
committer | Amaury Sechet <deadalnix@gmail.com> | 2018-06-03 12:56:24 +0000 |
commit | 3e8866efa2237a303faec3cbd18f15bba41591dc (patch) | |
tree | e3b20e5d7afbb3f8f8f8ca63b7f971c7ecb55814 /lib/Target/Lanai | |
parent | cff463369b45de6823df6e96b26539457ca381b3 (diff) |
Remove SETCCE use from Lanai's backend
Summary: This creates a small perf regression, but after talking with Jacques Pienaar, he was good with it to get things moving toward removng SETCCE.
Reviewers: jpienaar, bryant
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D47626
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@333838 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Lanai')
-rw-r--r-- | lib/Target/Lanai/LanaiISelLowering.cpp | 16 | ||||
-rw-r--r-- | lib/Target/Lanai/LanaiISelLowering.h | 1 |
2 files changed, 0 insertions, 17 deletions
diff --git a/lib/Target/Lanai/LanaiISelLowering.cpp b/lib/Target/Lanai/LanaiISelLowering.cpp index 22fcf473d0c..045a897c412 100644 --- a/lib/Target/Lanai/LanaiISelLowering.cpp +++ b/lib/Target/Lanai/LanaiISelLowering.cpp @@ -87,7 +87,6 @@ LanaiTargetLowering::LanaiTargetLowering(const TargetMachine &TM, setOperationAction(ISD::BR_JT, MVT::Other, Expand); setOperationAction(ISD::BRCOND, MVT::Other, Expand); setOperationAction(ISD::SETCC, MVT::i32, Custom); - setOperationAction(ISD::SETCCE, MVT::i32, Custom); setOperationAction(ISD::SELECT, MVT::i32, Expand); setOperationAction(ISD::SELECT_CC, MVT::i32, Custom); @@ -193,8 +192,6 @@ SDValue LanaiTargetLowering::LowerOperation(SDValue Op, return LowerSELECT_CC(Op, DAG); case ISD::SETCC: return LowerSETCC(Op, DAG); - case ISD::SETCCE: - return LowerSETCCE(Op, DAG); case ISD::SHL_PARTS: return LowerSHL_PARTS(Op, DAG); case ISD::SRL_PARTS: @@ -969,19 +966,6 @@ SDValue LanaiTargetLowering::LowerMUL(SDValue Op, SelectionDAG &DAG) const { return Res; } -SDValue LanaiTargetLowering::LowerSETCCE(SDValue Op, SelectionDAG &DAG) const { - SDValue LHS = Op.getOperand(0); - SDValue RHS = Op.getOperand(1); - SDValue Carry = Op.getOperand(2); - SDValue Cond = Op.getOperand(3); - SDLoc DL(Op); - - LPCC::CondCode CC = IntCondCCodeToICC(Cond, DL, RHS, DAG); - SDValue TargetCC = DAG.getConstant(CC, DL, MVT::i32); - SDValue Flag = DAG.getNode(LanaiISD::SUBBF, DL, MVT::Glue, LHS, RHS, Carry); - return DAG.getNode(LanaiISD::SETCC, DL, Op.getValueType(), TargetCC, Flag); -} - SDValue LanaiTargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const { SDValue LHS = Op.getOperand(0); SDValue RHS = Op.getOperand(1); diff --git a/lib/Target/Lanai/LanaiISelLowering.h b/lib/Target/Lanai/LanaiISelLowering.h index 46024e6fd50..0cde633cb41 100644 --- a/lib/Target/Lanai/LanaiISelLowering.h +++ b/lib/Target/Lanai/LanaiISelLowering.h @@ -87,7 +87,6 @@ public: SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const; SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const; SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const; - SDValue LowerSETCCE(SDValue Op, SelectionDAG &DAG) const; SDValue LowerSHL_PARTS(SDValue Op, SelectionDAG &DAG) const; SDValue LowerSRL_PARTS(SDValue Op, SelectionDAG &DAG) const; SDValue LowerVASTART(SDValue Op, SelectionDAG &DAG) const; |