================
@@ -9040,10 +9041,6 @@ SDValue SystemZTargetLowering::combineSELECT_CCMASK(
SDValue FalseVal = N->getOperand(1);
const auto &&TrueSDVals = simplifyAssumingCCVal(TrueVal, CCReg, DAG);
const auto &&FalseSDVals = simplifyAssumingCCVal(FalseVal, CCReg, DAG);
- // There might be cases where TrueSDVals and FalseSDVals are empty as
- // TrueVal and FalseVal both are non-constant, and they have already been
- // optimized by combineCCMask, we can not take early exit here, just bypass
it
- // and directly create a new SELECT_CCMASK.
----------------
uweigand wrote:
Instead, I'd suggest to set `TrueSDVals` to `{ TrueVal, TrueVal, TrueVal,
TrueVal }` here if empty (and similarly for `FalseSDVal`). [ Or maybe combine
this step with merging true/false together into a single vector based on
`CCMaskVal` , which would simplify code below.]
https://github.com/llvm/llvm-project/pull/125970
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits