2023-12-13 18:18 juzhe.zhong <[email protected]> wrote:
>
>
>+ multiple_p (GET_MODE_BITSIZE (e.arg_mode (0)),
>+ GET_MODE_BITSIZE (e.arg_mode (1)), &nunits);
>
>Change it into gcc_assert (multiple_p (...))
>
>+/* A list of all Vector Crypto intrinsic functions. */
>+static function_group_info cryoto_function_groups[] = {
>+#define DEF_RVV_FUNCTION(NAME, SHAPE, PREDS, OPS_INFO, AVAIL) \
>+ {#NAME, &bases::NAME, &shapes::SHAPE, PREDS, OPS_INFO,\
>+ riscv_vector_avail_ ## AVAIL},
>+#include "riscv-vector-crypto-builtins-functions.def"
>+};
>Why do you add this ? I think it should belong to function_groups.
The original intention of this modification was to make the processing flow of
the crypto vector more clearer.
If you think it should merge into V extension, I will do it.
Thanks.
Feng Wang
>
>+ /* Dfine the crypto vector builtin functions. */
>+ for (unsigned int i = 0; i < ARRAY_SIZE (cryoto_function_groups); ++i)
>+ {
>+ function_group_info *f = &cryoto_function_groups[i];
>+ if (f->avail && f->avail ())
>+ builder.register_function_group (cryoto_function_groups[i]);
>+ }
>
>
>I think it should be:
>
>for (unsigned int i = 0; i < ARRAY_SIZE (function_groups); ++i)
> if (avail)
> builder.register_function_group (function_groups[i]);
>
>
>
>
>[email protected]
>