[clang] [CIR] Maximum across vector (IEEE754) (PR #199779)
Andrzej WarzyĆski via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 3 00:17:05 PDT 2026
================
@@ -434,6 +434,12 @@ static mlir::Value emitCommonNeonSISDBuiltinExpr(
case NEON::BI__builtin_neon_vqrshrund_n_s64:
case NEON::BI__builtin_neon_vqrshrnd_n_s64:
case NEON::BI__builtin_neon_vqrshrnd_n_u64:
+ case NEON::BI__builtin_neon_vmaxnmv_f32:
+ case NEON::BI__builtin_neon_vmaxnmvq_f32:
+ case NEON::BI__builtin_neon_vmaxnmvq_f64:
+ return emitNeonCall(cgf.cgm, cgf.getBuilder(),
+ {cgf.convertType(expr->getArg(0)->getType())}, ops,
+ llvmIntrName, cgf.convertType(expr->getType()), loc);
----------------
banach-space wrote:
Why do we need this?
There's a call to `emitNeonCall` below this switch and this extra invocation should not be required, please remove it and make any other adjustments that might be required. I will also quote the comment from above this `switch` stmt:
> // Avoid adding specialized code in cases - that should only be required for a handful of examples.
https://github.com/llvm/llvm-project/pull/199779
More information about the cfe-commits
mailing list