mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-10 14:10:58 +00:00
Add getSelect helper function
Patch by Micah Villmow from last year that was reviewed, but never committed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184011 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
9e89fe77ce
commit
85cc4d8402
@ -609,9 +609,23 @@ public:
|
|||||||
"Cannot compare scalars to vectors");
|
"Cannot compare scalars to vectors");
|
||||||
assert(LHS.getValueType().isVector() == VT.isVector() &&
|
assert(LHS.getValueType().isVector() == VT.isVector() &&
|
||||||
"Cannot compare scalars to vectors");
|
"Cannot compare scalars to vectors");
|
||||||
|
assert(Cond != ISD::SETCC_INVALID &&
|
||||||
|
"Cannot create a setCC of an invalid node.");
|
||||||
return getNode(ISD::SETCC, DL, VT, LHS, RHS, getCondCode(Cond));
|
return getNode(ISD::SETCC, DL, VT, LHS, RHS, getCondCode(Cond));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// getSelect - Helper function to make it easier to build Select's if you just
|
||||||
|
// have operands and don't want to check for vector.
|
||||||
|
SDValue getSelect(SDLoc DL, EVT VT, SDValue Cond,
|
||||||
|
SDValue LHS, SDValue RHS) {
|
||||||
|
assert(LHS.getValueType() == RHS.getValueType() &&
|
||||||
|
"Cannot use select on differing types");
|
||||||
|
assert(VT.isVector() == LHS.getValueType().isVector() &&
|
||||||
|
"Cannot mix vectors and scalars");
|
||||||
|
return getNode(Cond.getValueType().isVector() ? ISD::VSELECT : ISD::SELECT, DL, VT,
|
||||||
|
Cond, LHS, RHS);
|
||||||
|
}
|
||||||
|
|
||||||
/// getSelectCC - Helper function to make it easier to build SelectCC's if you
|
/// getSelectCC - Helper function to make it easier to build SelectCC's if you
|
||||||
/// just have an ISD::CondCode instead of an SDValue.
|
/// just have an ISD::CondCode instead of an SDValue.
|
||||||
///
|
///
|
||||||
|
Loading…
Reference in New Issue
Block a user