[llvm] [RISCV][ISel] Combine vector fadd/fsub/fmul with fp extend. (PR #81248)
Wang Pengcheng via llvm-commits
llvm-commits at lists.llvm.org
Sun Feb 18 22:24:37 PST 2024
================
@@ -13741,22 +13805,27 @@ struct CombineResult {
/// can be used to apply the pattern.
static std::optional<CombineResult>
canFoldToVWWithSameExtensionImpl(SDNode *Root, const NodeExtensionHelper &LHS,
- const NodeExtensionHelper &RHS, bool AllowSExt,
- bool AllowZExt, SelectionDAG &DAG,
+ const NodeExtensionHelper &RHS,
+ uint8_t AllowExtMask, SelectionDAG &DAG,
const RISCVSubtarget &Subtarget) {
- assert((AllowSExt || AllowZExt) && "Forgot to set what you want?");
if (!LHS.areVLAndMaskCompatible(Root, DAG, Subtarget) ||
!RHS.areVLAndMaskCompatible(Root, DAG, Subtarget))
return std::nullopt;
- if (AllowZExt && LHS.SupportsZExt && RHS.SupportsZExt)
+ if (AllowExtMask & ExtKind::ZExt && LHS.SupportsZExt && RHS.SupportsZExt)
----------------
wangpc-pp wrote:
Can we bracket it? :-)
https://github.com/llvm/llvm-project/pull/81248
More information about the llvm-commits
mailing list