On Thu, Aug 17, 2017 at 11:47 AM, Richard Sandiford
<richard.sandif...@linaro.org> wrote:
> This patch adds missing ECF_NOTHROW flags to the vectorisable
> integer internal functions.  I noticed it while doing some SVE
> work but don't have a testcase that's useful now.
>
> Tested on aarch64-linux-gnu and x86_64-linux-gnu.  OK to install?

ECF_LEAF is missing as well.  Ok with adding them change.

Richard.

> Richard
>
>
> 2017-08-17  Richard Sandiford  <richard.sandif...@linaro.org>
>
> gcc/
>         * internal-fn.def (CLRSB, CLZ, CTZ, FFS, PARITY, POPCOUNT): Add
>         missing ECF_NOTHROW flags.
>
> Index: gcc/internal-fn.def
> ===================================================================
> --- gcc/internal-fn.def 2017-08-10 14:36:08.046471664 +0100
> +++ gcc/internal-fn.def 2017-08-17 09:05:10.128942687 +0100
> @@ -135,12 +135,12 @@ DEF_INTERNAL_OPTAB_FN (XORSIGN, ECF_CONS
>  DEF_INTERNAL_FLT_FN (LDEXP, ECF_CONST, ldexp, binary)
>
>  /* Unary integer ops.  */
> -DEF_INTERNAL_INT_FN (CLRSB, ECF_CONST, clrsb, unary)
> -DEF_INTERNAL_INT_FN (CLZ, ECF_CONST, clz, unary)
> -DEF_INTERNAL_INT_FN (CTZ, ECF_CONST, ctz, unary)
> -DEF_INTERNAL_INT_FN (FFS, ECF_CONST, ffs, unary)
> -DEF_INTERNAL_INT_FN (PARITY, ECF_CONST, parity, unary)
> -DEF_INTERNAL_INT_FN (POPCOUNT, ECF_CONST, popcount, unary)
> +DEF_INTERNAL_INT_FN (CLRSB, ECF_CONST | ECF_NOTHROW, clrsb, unary)
> +DEF_INTERNAL_INT_FN (CLZ, ECF_CONST | ECF_NOTHROW, clz, unary)
> +DEF_INTERNAL_INT_FN (CTZ, ECF_CONST | ECF_NOTHROW, ctz, unary)
> +DEF_INTERNAL_INT_FN (FFS, ECF_CONST | ECF_NOTHROW, ffs, unary)
> +DEF_INTERNAL_INT_FN (PARITY, ECF_CONST | ECF_NOTHROW, parity, unary)
> +DEF_INTERNAL_INT_FN (POPCOUNT, ECF_CONST | ECF_NOTHROW, popcount, unary)
>
>  DEF_INTERNAL_FN (GOMP_USE_SIMT, ECF_NOVOPS | ECF_LEAF | ECF_NOTHROW, NULL)
>  DEF_INTERNAL_FN (GOMP_SIMT_ENTER, ECF_LEAF | ECF_NOTHROW, NULL)

Reply via email to