[clang] [Clang] Add __builtin_(elementwise|reduce)_(max|min)imum (PR #110198)

Tex Riddell via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 1 19:45:01 PDT 2024


tex3d wrote:

> But IIUC, the diagnostic message change from this PR might be unintentional. The expected error message in [793ded7](https://github.com/llvm/llvm-project/commit/793ded7d0b7f1407636a98007f83074b8dd5f765) doesn't align to the error message from other tests in the same file. Should that be addressed?

The other error messages in the file are now different because the path taken for the one arg intrinsic is different (calling `PrepareBuiltinElementwiseMathOneArgCall`, which calls `checkMathBuiltinElementType`, which emits this error).

It would be nice to fix these somehow, but I don't know if that should be part of landing this PR.

I didn't like that wording in the diagnostic for multiple reasons (vector, integer or floating point??), but there wasn't a clear fix that wouldn't have broader impact, so I avoided rocking the boat here.  I think it would be great to have a cleaner diagnostic and a better function structure for this code, but that probably makes more sense as a separate cleanup step at this point.

Honestly, this code makes me wish there was a more regular structure to defining and applying needed constraints here.  It currently feels a bit convoluted and messy.

What do you think?

https://github.com/llvm/llvm-project/pull/110198


More information about the cfe-commits mailing list